if ((ret = libusb_control_transfer(devc->usb->devhdl,
LIBUSB_REQUEST_TYPE_VENDOR, CTRL_BEGINCOMMAND,
0, 0, buffer, sizeof(buffer), 200)) != sizeof(buffer)) {
- sr_err("Failed to send begincommand: %d.", ret);
+ sr_err("Failed to send begincommand: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
libusb_device **devlist;
struct libusb_device_descriptor des;
struct dev_context *devc;
+ struct drv_context *drvc = hantek_dso_driver_info.priv;
int err, skip, i;
devc = sdi->priv;
return SR_ERR;
skip = 0;
- libusb_get_device_list(NULL, &devlist);
+ libusb_get_device_list(drvc->sr_ctx->libusb_ctx, &devlist);
for (i = 0; devlist[i]; i++) {
if ((err = libusb_get_device_descriptor(devlist[i], &des))) {
- sr_err("Failed to get device descriptor: %d.", err);
+ sr_err("Failed to get device descriptor: %s.",
+ libusb_error_name(err));
continue;
}
devc->usb->address, USB_INTERFACE);
}
} else {
- sr_err("Failed to open device: %d.", err);
+ sr_err("Failed to open device: %s.",
+ libusb_error_name(err));
}
/* If we made it here, we handled the device (somehow). */
(unsigned char *)&devc->channel_levels,
sizeof(devc->channel_levels), 200);
if (ret != sizeof(devc->channel_levels)) {
- sr_err("Failed to get channel offsets: %d.", ret);
+ sr_err("Failed to get channel offsets: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
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);
}
DSO_EP_OUT | LIBUSB_ENDPOINT_OUT,
cmdstring, sizeof(cmdstring),
&tmp, 100)) != 0) {
- sr_err("Failed to set trigger/samplerate: %d.", ret);
+ sr_err("Failed to set trigger/samplerate: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
sr_dbg("Sent CMD_SET_TRIGGER_SAMPLERATE.");
DSO_EP_OUT | LIBUSB_ENDPOINT_OUT,
cmdstring, sizeof(cmdstring),
&tmp, 100)) != 0) {
- sr_err("Failed to set filters: %d", ret);
+ sr_err("Failed to set filters: %s.", libusb_error_name(ret));
return SR_ERR;
}
sr_dbg("Sent CMD_SET_FILTERS.");
DSO_EP_OUT | LIBUSB_ENDPOINT_OUT,
cmdstring, sizeof(cmdstring),
&tmp, 100)) != 0) {
- sr_err("Failed to set voltage: %d.", ret);
+ sr_err("Failed to set voltage: %s.", libusb_error_name(ret));
return SR_ERR;
}
sr_dbg("Sent CMD_SET_VOLTAGE.");
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);
}
if ((ret = libusb_control_transfer(devc->usb->devhdl,
LIBUSB_REQUEST_TYPE_VENDOR, CTRL_SETRELAYS,
0, 0, relays, 17, 100)) != sizeof(relays)) {
- sr_err("Failed to set relays: %d.", ret);
+ sr_err("Failed to set relays: %s.", libusb_error_name(ret));
return SR_ERR;
}
sr_dbg("Sent CTRL_SETRELAYS.");
if ((ret = libusb_control_transfer(devc->usb->devhdl,
LIBUSB_REQUEST_TYPE_VENDOR, CTRL_SETOFFSET,
0, 0, offsets, sizeof(offsets), 100)) != sizeof(offsets)) {
- sr_err("Failed to set offsets: %d.", ret);
+ sr_err("Failed to set offsets: %s.", libusb_error_name(ret));
return SR_ERR;
}
sr_dbg("Sent CTRL_SETOFFSET.");
DSO_EP_OUT | LIBUSB_ENDPOINT_OUT,
cmdstring, sizeof(cmdstring),
&tmp, 100)) != 0) {
- sr_err("Failed to enable trigger: %d.", ret);
+ sr_err("Failed to enable trigger: %s.", libusb_error_name(ret));
return SR_ERR;
}
DSO_EP_OUT | LIBUSB_ENDPOINT_OUT,
cmdstring, sizeof(cmdstring),
&tmp, 100)) != 0) {
- sr_err("Failed to force trigger: %d.", ret);
+ sr_err("Failed to force trigger: %s.", libusb_error_name(ret));
return SR_ERR;
}
cmdstring[1] = 0;
if ((ret = send_bulkcmd(devc, cmdstring, sizeof(cmdstring))) != SR_OK) {
- sr_dbg("Failed to send get_capturestate command: %d.", ret);
+ sr_dbg("Failed to send get_capturestate command: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
if ((ret = libusb_bulk_transfer(devc->usb->devhdl,
DSO_EP_IN | LIBUSB_ENDPOINT_IN,
inbuf, 512, &tmp, 100)) != 0) {
- sr_dbg("Failed to get capturestate: %d.", ret);
+ sr_dbg("Failed to get capturestate: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
*capturestate = inbuf[0];
cmdstring[1] = 0;
if ((ret = send_bulkcmd(devc, cmdstring, sizeof(cmdstring))) != SR_OK) {
- sr_err("Failed to send capture_start command: %d.", ret);
+ sr_err("Failed to send capture_start command: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
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;
cmdstring[1] = 0;
if ((ret = send_bulkcmd(devc, cmdstring, sizeof(cmdstring))) != SR_OK) {
- sr_err("Failed to get channel data: %d.", ret);
+ sr_err("Failed to get channel data: %s.",
+ libusb_error_name(ret));
return SR_ERR;
}
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: %d.", ret);
+ sr_err("Failed to submit transfer: %s.",
+ libusb_error_name(ret));
/* TODO: Free them all. */
libusb_free_transfer(transfer);
g_free(buf);