libusb0: return oocd error values 98/4698/3
authorAntonio Borneo <borneo.antonio@gmail.com>
Thu, 4 Oct 2018 15:54:19 +0000 (17:54 +0200)
committerTomas Vanek <vanekt@fbl.cz>
Tue, 8 Jan 2019 10:01:48 +0000 (10:01 +0000)
Commit d1b74376336814266236054f925a9964b87dd8a5 fixes libusb1 to
return OpenOCD error values instead of negative errors in Linux
kernel's style.
The same fix should be applied to libusb0 too.

Fix return value of libusb0 to uniform it to OpenOCD style.

Change-Id: I68478c29c91c6be720074f58c432fe51477e03ed
Fixes: d1b743763368 ("libusb: return oocd error values")
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/4698
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
src/jtag/drivers/libusb0_common.c

index 1825543..9cf85b7 100644 (file)
@@ -67,7 +67,7 @@ int jtag_libusb_open(const uint16_t vids[], const uint16_t pids[],
                const char *serial,
                struct jtag_libusb_device_handle **out)
 {
-       int retval = -ENODEV;
+       int retval = ERROR_FAIL;
        struct jtag_libusb_device_handle *libusb_handle;
        usb_init();
 
@@ -83,7 +83,7 @@ int jtag_libusb_open(const uint16_t vids[], const uint16_t pids[],
 
                        libusb_handle = usb_open(dev);
                        if (NULL == libusb_handle) {
-                               retval = -errno;
+                               LOG_ERROR("usb_open() failed with %s", usb_strerror());
                                continue;
                        }
 
@@ -94,7 +94,7 @@ int jtag_libusb_open(const uint16_t vids[], const uint16_t pids[],
                                continue;
                        }
                        *out = libusb_handle;
-                       retval = 0;
+                       retval = ERROR_OK;
                        break;
                }
        }