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:
1 parent
ea7f2a441a
commit
676da47751
8 files changed
+166
-163
No files matched your search
+4
-10
@@ -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 ) {
|
||||
|
||||
Reference in new issue
Block a user