[PATCH v1] T1024RDB: USB: Add a 10808 us delay in usb_scan_port

Yinbo Zhu yinbo.zhu at nxp.com
Mon Dec 16 04:12:40 CET 2019


T1024RDB usb controller doesn't detect usb device at first usb start
Add a delay that is greater than 10808 us can fix that issue, which
delay if is less than 10808 us, issue is probabilistic occurrence

=> usb start
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB EHCI 1.00
scanning bus 0 for devices... 1 USB Device(s) found
scanning bus 1 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 0 Storage Device(s) found
=> usb stop
stopping USB..
=> usb start
starting USB...
USB0:   USB EHCI 1.00
USB1:   USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
scanning bus 1 for devices... 1 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found
=>

Signed-off-by: Yinbo Zhu <yinbo.zhu at nxp.com>
---
 common/usb_hub.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/common/usb_hub.c b/common/usb_hub.c
index 33aaeb8e44..6dd06696b2 100644
--- a/common/usb_hub.c
+++ b/common/usb_hub.c
@@ -486,6 +486,9 @@ static int usb_scan_port(struct usb_device_scan *usb_scan)
 		return 0;
 	}
 
+#ifdef CONFIG_TARGET_T1024RDB
+	udelay(10808);
+#endif
 	if (portchange & USB_PORT_STAT_C_RESET) {
 		debug("port %d reset change\n", i + 1);
 		usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_C_RESET);
-- 
2.17.1



More information about the U-Boot mailing list