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

Reply via email to