From 30ea3095f153a6c671d0942a7b14d2940d3b8916 Mon Sep 17 00:00:00 2001 From: Maxwell Dreytser Date: Thu, 11 May 2017 01:14:39 -0400 Subject: [PATCH] Change ftdi_open_bus_port to ftdi_open_bus_addr, since libusb_get_port_number is not always unique. --- src/ftdi.c | 8 ++++---- src/ftdi.h | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ftdi.c b/src/ftdi.c index ac8f18a..175befc 100644 --- a/src/ftdi.c +++ b/src/ftdi.c @@ -825,11 +825,11 @@ int ftdi_usb_open_desc_index(struct ftdi_context *ftdi, int vendor, int product, } /** - Opens the device at a given USB bus and port. + Opens the device at a given USB bus and device address. \param ftdi pointer to ftdi_context \param bus Bus number - \param port Port number + \param addr Device address \retval 0: all fine \retval -1: usb_find_busses() failed @@ -845,7 +845,7 @@ int ftdi_usb_open_desc_index(struct ftdi_context *ftdi, int vendor, int product, \retval -11: ftdi context invalid \retval -12: libusb_get_device_list() failed */ -int ftdi_usb_open_bus_port(struct ftdi_context *ftdi, uint8_t bus, uint8_t port) +int ftdi_usb_open_bus_addr(struct ftdi_context *ftdi, uint8_t bus, uint8_t addr) { libusb_device *dev; libusb_device **devs; @@ -859,7 +859,7 @@ int ftdi_usb_open_bus_port(struct ftdi_context *ftdi, uint8_t bus, uint8_t port) while ((dev = devs[i++]) != NULL) { - if (libusb_get_bus_number(dev) == bus && libusb_get_port_number(dev) == port) + if (libusb_get_bus_number(dev) == bus && libusb_get_device_address(dev) == addr) { int res; res = ftdi_usb_open_dev(ftdi, dev); diff --git a/src/ftdi.h b/src/ftdi.h index 5927c48..de02adf 100644 --- a/src/ftdi.h +++ b/src/ftdi.h @@ -502,7 +502,7 @@ extern "C" const char* description, const char* serial); int ftdi_usb_open_desc_index(struct ftdi_context *ftdi, int vendor, int product, const char* description, const char* serial, unsigned int index); - int ftdi_usb_open_bus_port(struct ftdi_context *ftdi, uint8_t bus, uint8_t port); + int ftdi_usb_open_bus_addr(struct ftdi_context *ftdi, uint8_t bus, uint8_t addr); int ftdi_usb_open_dev(struct ftdi_context *ftdi, struct libusb_device *dev); int ftdi_usb_open_string(struct ftdi_context *ftdi, const char* description); -- 1.7.1