X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fsaleae-logic%2Fsaleae-logic.c;h=ee6a406deb74771a9e6eae241f86733584743d14;hb=edf60d0575d039229da3676867a5eb094d0c3c5e;hp=9ebb207e6d6a2f5779ead62720715f3ee600cdf1;hpb=9d2933fbe9719df679cde8fbffde8c191d6a56d3;p=libsigrok.git diff --git a/hardware/saleae-logic/saleae-logic.c b/hardware/saleae-logic/saleae-logic.c index 9ebb207e..ee6a406d 100644 --- a/hardware/saleae-logic/saleae-logic.c +++ b/hardware/saleae-logic/saleae-logic.c @@ -275,35 +275,11 @@ struct sigrok_device_instance *sl_open_device(int device_index) int upload_firmware(libusb_device *dev) { - struct libusb_device_handle *hdl; - int err; - - g_message("uploading firmware to device on %d.%d", - libusb_get_bus_number(dev), libusb_get_device_address(dev)); - - err = libusb_open(dev, &hdl); - if (err != 0) { - g_warning("failed to open device: %d", err); - return 1; - } - - err = libusb_set_configuration(hdl, USB_CONFIGURATION); - if (err != 0) { - g_warning("Unable to set configuration: %d", err); - return 1; - } - - if ((ezusb_reset(hdl, 1)) < 0) - return 1; - - if (ezusb_install_firmware(hdl, FIRMWARE) != 0) - return 1; + int ret; - if ((ezusb_reset(hdl, 0)) < 0) + if (ret = ezusb_upload_firmware(dev, USB_CONFIGURATION, FIRMWARE) != 0) return 1; - libusb_close(hdl); - /* Remember when the last firmware update was done. */ g_get_current_time(&firmware_updated);