From: Stefan Roese Date: Tue, 15 Mar 2016 12:59:13 +0000 (+0100) Subject: usb: Remove 200 ms delay in usb_hub_port_connect_change() X-Git-Tag: v2016.05-rc1~238 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=2ef117fe4f;p=oweals%2Fu-boot.git usb: Remove 200 ms delay in usb_hub_port_connect_change() This patch removes 2 mdelay(200) calls from usb_hub_port_connect_change(). These delays don't seem to be necessary. At least not in my tests. Here the number for a custom x86 Bay Trail board (not in mainline yet) with a quite large and complex USB hub infrastructure. Without this patch: starting USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 9 USB Device(s) found time: 28.415 seconds With this patch: starting USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 9 USB Device(s) found time: 24.003 seconds So ~4.5 seconds of USB scanning time reduction. Signed-off-by: Stefan Roese Cc: Simon Glass Acked-by: Hans de Goede Tested-by: Stephen Warren Cc: Marek Vasut --- diff --git a/common/usb_hub.c b/common/usb_hub.c index 2089e20fd5..d621f50fc6 100644 --- a/common/usb_hub.c +++ b/common/usb_hub.c @@ -275,7 +275,6 @@ int usb_hub_port_connect_change(struct usb_device *dev, int port) if (!(portstatus & USB_PORT_STAT_CONNECTION)) return -ENOTCONN; } - mdelay(200); /* Reset the port */ ret = legacy_hub_port_reset(dev, port, &portstatus); @@ -285,8 +284,6 @@ int usb_hub_port_connect_change(struct usb_device *dev, int port) return ret; } - mdelay(200); - switch (portstatus & USB_PORT_STAT_SPEED_MASK) { case USB_PORT_STAT_SUPER_SPEED: speed = USB_SPEED_SUPER;