]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/hantek-4032l/api.c
output/csv: use intermediate time_t var, silence compiler warning
[libsigrok.git] / src / hardware / hantek-4032l / api.c
index 3dc54ba5967a446dcd4f932e96cc93476b971d4e..7e823f8c7935cb9eb1422fcc6e1fdb5b389f991c 100644 (file)
@@ -233,10 +233,9 @@ static GSList *scan(struct sr_dev_driver *di, GSList *options)
 
                struct sr_channel_group *channel_groups[2];
                for (int j = 0; j < 2; j++) {
-                       cg = g_malloc0(sizeof(struct sr_channel_group));
+                       cg = sr_channel_group_new(sdi, NULL, NULL);
                        cg->name = g_strdup_printf("%c", 'A' + j);
                        channel_groups[j] = cg;
-                       sdi->channel_groups = g_slist_append(sdi->channel_groups, cg);
                }
 
                /* Assemble channel list and add channel to channel groups. */
@@ -587,25 +586,9 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi)
                        channel = channel->next;
                }
 
-               /* Compress range mask value and apply range settings. */
-               if (range_mask) {
-                       cmd_pkt->trigger[0].flags.data_range_enabled = 1;
-                       cmd_pkt->trigger[0].data_range_mask |= range_mask;
-
-                       uint32_t new_range_value = 0;
-                       uint32_t bit_mask = 1;
-                       while (range_mask) {
-                               if ((range_mask & 1) != 0) {
-                                       new_range_value <<= 1;
-                                       if ((range_value & 1) != 0)
-                                               new_range_value |= bit_mask;
-                                       bit_mask <<= 1;
-                               }
-                               range_mask >>= 1;
-                               range_value >>= 1;
-                       }
-                       cmd_pkt->trigger[0].data_range_max |= range_value;
-               }
+               cmd_pkt->trigger[0].flags.data_range_enabled = 1;
+               cmd_pkt->trigger[0].data_range_mask |= range_mask;
+               cmd_pkt->trigger[0].data_range_max = range_value;
        }
 
        usb_source_add(sdi->session, drvc->sr_ctx, 1000,