diff options
author | Christian Eggers <ceggers@arri.de> | 2020-03-09 15:20:26 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2020-03-11 16:03:14 +0100 |
commit | 7b7dc85df9cd251d27e4d2d0a7954c34486d21df (patch) | |
tree | 014f0522a8e0cdcbfa5550aa3d1c61a055b5cdab | |
parent | ddd02210d20a7402fea51b9271e82cb5330cbb46 (diff) | |
download | barebox-7b7dc85df9cd251d27e4d2d0a7954c34486d21df.tar.gz barebox-7b7dc85df9cd251d27e4d2d0a7954c34486d21df.tar.xz |
usb: Add extra delay for device scan
Since b1d9837182, detection of various USB flash drives stopped working.
While the changes itself look correct, probably the HUB requires some
"recovery time" between the GET_STATUS commands in order to be able to
detect devices.
Our configuration: i.MX6ULL (USB-OTG) with only one port on the root
HUB. This port is connected to a Microchip USB4916 hub (permanently
attached). The USB4916 is configured with it's power on defaults which
means that bPwrOn2PwrGood is set to the maximum (0xFF = 510 ms).
Fixes: b1d9837182 ("usb: Change power-on / scanning timeout handling")
Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | drivers/usb/core/hub.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index 8874775f17..466bbe527b 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c @@ -406,6 +406,9 @@ static int usb_device_list_scan(void) if (ret) goto out; } + + /* Avoid hammering the HUB with port scans */ + mdelay(25); } out: |