Remove two mdelay(200) calls from usb_hub_port_connect_change() before
and after calling hub_port_reset().
These delays don't seem to be necessary since hub_port_reset() already
incorporates delays on its own.
Without patch:
$ time usb
usb: USB: scanning bus for devices...
usb: 17 USB Device(s) found
time: 16355ms
With patch:
$ time usb
usb: USB: scanning bus for devices...
usb: 17 USB Device(s) found
time: 10344ms
Delta: ~6 seconds
Signed-off-by: Primoz Fiser <[email protected]>
---
drivers/usb/core/hub.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 91604e1ef..7de6aedc4 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -211,8 +211,6 @@ static void usb_hub_port_connect_change(struct usb_device
*dev, int port)
if (dev->children[port] && !(portstatus & USB_PORT_STAT_ENABLE))
usb_remove_device(dev->children[port]);
- mdelay(200);
-
/* Allocate a new device struct for the port */
usb = usb_alloc_new_device();
usb->dev.parent = &dev->dev;
@@ -225,8 +223,6 @@ static void usb_hub_port_connect_change(struct usb_device
*dev, int port)
return;
}
- mdelay(200);
-
dev->children[port] = usb;
usb->parent = dev;
usb->portnr = port + 1;
--
2.17.1
_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox