return ret;
}
-static int config_get(int key, GVariant **data, const struct sr_dev_inst *sdi)
+static int config_get(int key, GVariant **data, const struct sr_dev_inst *sdi,
+ const struct sr_probe_group *probe_group)
{
struct dev_context *devc;
struct sr_usb_dev_inst *usb;
int ret;
unsigned int i;
+ (void)probe_group;
+
ret = SR_OK;
switch (key) {
case SR_CONF_CONN:
return ret;
}
-static int config_set(int key, GVariant *data, const struct sr_dev_inst *sdi)
+static int config_set(int key, GVariant *data, const struct sr_dev_inst *sdi,
+ const struct sr_probe_group *probe_group)
{
struct dev_context *devc;
gdouble low, high;
int ret;
unsigned int i;
+ (void)probe_group;
+
if (sdi->status != SR_ST_ACTIVE)
return SR_ERR_DEV_CLOSED;
return ret;
}
-static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi)
+static int config_list(int key, GVariant **data, const struct sr_dev_inst *sdi,
+ const struct sr_probe_group *probe_group)
{
GVariant *gvar, *range[2];
GVariantBuilder gvb;
unsigned int i;
(void)sdi;
+ (void)probe_group;
ret = SR_OK;
switch (key) {
struct drv_context *drvc;
struct sr_usb_dev_inst *usb;
struct libusb_transfer *transfer;
- const struct libusb_pollfd **lupfd;
unsigned int i, timeout, num_transfers;
int ret;
unsigned char *buf;
size = get_buffer_size(devc);
convsize = (size / devc->num_channels + 2) * 16;
devc->submitted_transfers = 0;
- devc->usbfd = NULL;
devc->convbuffer_size = convsize;
if (!(devc->convbuffer = g_try_malloc(convsize))) {
devc->submitted_transfers++;
}
- lupfd = libusb_get_pollfds(drvc->sr_ctx->libusb_ctx);
- for (i = 0; lupfd[i]; i++);
- devc->usbfd = g_try_malloc(sizeof(struct libusb_pollfd) * (i + 1));
- if (!devc->usbfd) {
- abort_acquisition(devc);
- free(lupfd);
- return SR_ERR;
- }
- for (i = 0; lupfd[i]; i++) {
- sr_source_add(lupfd[i]->fd, lupfd[i]->events,
- timeout, receive_data, (void *)sdi);
- devc->usbfd[i] = lupfd[i]->fd;
- }
- devc->usbfd[i] = -1;
- free(lupfd);
+ devc->ctx = drvc->sr_ctx;
+
+ usb_source_add(devc->ctx, timeout, receive_data, (void *)sdi);
/* Send header packet to the session bus. */
std_session_send_df_header(cb_data, LOG_PREFIX);