]> sigrok.org Git - libsigrok.git/blobdiff - hardware/hantek-dso/dso.c
Add Rigol DS1052E/1102E VID:PID
[libsigrok.git] / hardware / hantek-dso / dso.c
index c60496e783a79f01d3307fa15aaef61041d96a34..3fd99593e1a1a6f349ea85c15f2fe3484b5d79ea 100644 (file)
@@ -237,7 +237,7 @@ static int get_channel_offsets(struct dev_context *devc)
                                        devc->channel_levels[chan][v][0],
                                        devc->channel_levels[chan][v][1]);
                        }
-                       sr_dbg(gs->str);
+                       sr_dbg("%s", gs->str);
                }
                g_string_free(gs, TRUE);
        }
@@ -280,8 +280,7 @@ SR_PRIV int dso_set_trigger_samplerate(struct dev_context *devc)
 
        /* Timebase fast */
        sr_dbg("Time base index: %d.", devc->timebase);
-       switch (devc->framesize) {
-       case FRAMESIZE_SMALL:
+       if (devc->framesize == FRAMESIZE_SMALL) {
                if (devc->timebase < TIME_20us)
                        tmp = 0;
                else if (devc->timebase == TIME_20us)
@@ -292,8 +291,7 @@ SR_PRIV int dso_set_trigger_samplerate(struct dev_context *devc)
                        tmp = 3;
                else if (devc->timebase >= TIME_200us)
                        tmp = 4;
-               break;
-       case FRAMESIZE_LARGE:
+       } else {
                if (devc->timebase < TIME_40us) {
                        sr_err("Timebase < 40us only supported with 10K buffer.");
                        return SR_ERR_ARG;
@@ -306,7 +304,6 @@ SR_PRIV int dso_set_trigger_samplerate(struct dev_context *devc)
                        tmp = 3;
                else if (devc->timebase >= TIME_400us)
                        tmp = 4;
-               break;
        }
        cmdstring[2] |= (tmp & 0x07) << 5;
 
@@ -505,7 +502,7 @@ SR_PRIV int dso_set_relays(struct dev_context *devc)
                g_string_printf(gs, "Relays:");
                for (i = 0; i < 17; i++)
                        g_string_append_printf(gs, " %.2x", relays[i]);
-               sr_dbg(gs->str);
+               sr_dbg("%s", gs->str);
                g_string_free(gs, TRUE);
        }
 
@@ -707,13 +704,16 @@ SR_PRIV int dso_capture_start(struct dev_context *devc)
        return SR_OK;
 }
 
-SR_PRIV int dso_get_channeldata(struct dev_context *devc, libusb_transfer_cb_fn cb)
+SR_PRIV int dso_get_channeldata(const struct sr_dev_inst *sdi,
+               libusb_transfer_cb_fn cb)
 {
+       struct dev_context *devc;
        struct libusb_transfer *transfer;
        int num_transfers, ret, i;
        uint8_t cmdstring[2];
        unsigned char *buf;
 
+       devc = sdi->priv;
        sr_dbg("Sending CMD_GET_CHANNELDATA.");
 
        cmdstring[0] = CMD_GET_CHANNELDATA;
@@ -737,7 +737,7 @@ SR_PRIV int dso_get_channeldata(struct dev_context *devc, libusb_transfer_cb_fn
                transfer = libusb_alloc_transfer(0);
                libusb_fill_bulk_transfer(transfer, devc->usb->devhdl,
                                DSO_EP_IN | LIBUSB_ENDPOINT_IN, buf,
-                               devc->epin_maxpacketsize, cb, devc, 40);
+                               devc->epin_maxpacketsize, cb, (void *)sdi, 40);
                if ((ret = libusb_submit_transfer(transfer)) != 0) {
                        sr_err("Failed to submit transfer: %s.",
                               libusb_error_name(ret));