]> sigrok.org Git - libsigrok.git/blobdiff - hardware/fx2lafw/api.c
fx2lafw: Minor cleanups.
[libsigrok.git] / hardware / fx2lafw / api.c
index d10b65434f8436615b9d4bf9cb4d18f85ef5e6ad..29c1887e9ac6c2ac307ba1f9e8509cd5aed96625 100644 (file)
@@ -230,7 +230,7 @@ static GSList *scan(GSList *options)
                                sr_err("Firmware upload failed for "
                                       "device %d.", devcnt);
                        sdi->inst_type = SR_INST_USB;
-                       sdi->conn = sr_usb_dev_inst_new (libusb_get_bus_number(devlist[i]),
+                       sdi->conn = sr_usb_dev_inst_new(libusb_get_bus_number(devlist[i]),
                                        0xff, NULL);
                }
        }
@@ -291,7 +291,7 @@ static int dev_open(struct sr_dev_inst *sdi)
 
        ret = libusb_claim_interface(usb->devhdl, USB_INTERFACE);
        if (ret != 0) {
-               switch(ret) {
+               switch (ret) {
                case LIBUSB_ERROR_BUSY:
                        sr_err("Unable to claim USB interface. Another "
                               "program or driver has already claimed it.");
@@ -468,7 +468,6 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, void *cb_data)
        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;
@@ -524,17 +523,9 @@ static int dev_acquisition_start(const struct sr_dev_inst *sdi, void *cb_data)
                devc->submitted_transfers++;
        }
 
-       lupfd = libusb_get_pollfds(drvc->sr_ctx->libusb_ctx);
-       for (i = 0; lupfd[i]; i++);
-       if (!(devc->usbfd = g_try_malloc(sizeof(struct libusb_pollfd) * (i + 1))))
-               return SR_ERR;
-       for (i = 0; lupfd[i]; i++) {
-               sr_source_add(lupfd[i]->fd, lupfd[i]->events,
-                             timeout, receive_data, NULL);
-               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, NULL);
 
        /* Send header packet to the session bus. */
        std_session_send_df_header(cb_data, LOG_PREFIX);