all: Revert libusb-1.0 support

Listing of usb devices with libusb-1.0 is too slow and not usable for
flashing or cold-flashing Nokia N900.

Old libusb (0.1) does not have this problem and works perfectly.

Problem for libusb-1.0 was reported at least two times into libusb-devel
mailing list, but upstream developers are totally ignore it. One message is
in archive: https://sourceforge.net/p/libusb/mailman/message/34985373/

Because of that there is just one option: use tested and working libusb 0.1
library instead some experimental and non-working libusb-1.0.
This commit is contained in:
Pali Rohár committed 2016-12-06 22:39:44 +01:00
1 parent ea7f2a441a
commit 676da47751
8 files changed
+166 -163

No files matched your search

+4 -10
View File
@@ -281,20 +281,14 @@ int disk_init(struct usb_device_info * dev) {
unsigned int devnum;
unsigned int busnum;
uint8_t usbdevnum;
uint8_t usbbusnum;
struct usb_device * device;
struct libusb_device * device;
device = libusb_get_device(dev->udev);
if ( ! device ) {
device = usb_device(dev->udev);
if ( ! device || ! device->bus ) {
ERROR_INFO("Cannot read usb devnum and busnum");
return -1;
}
usbbusnum = libusb_get_bus_number(device);
usbdevnum = libusb_get_device_address(device);
dir = opendir("/sys/dev/block/");
if ( ! dir ) {
ERROR_INFO("Cannot open '/sys/dev/block/' directory");
@@ -334,7 +328,7 @@ int disk_init(struct usb_device_info * dev) {
fclose(f);
if ( devnum != usbdevnum || usbbusnum != busnum )
if ( devnum != device->devnum || device->bus->location != busnum )
continue;
if ( sscanf(dirent->d_name, "%d:%d", &maj2, &min2) != 2 ) {