From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Date: Tue, 15 Mar 2016 10:07:03 -0600 Subject: [U-Boot] [PATCH v3 4/4] usb: Change power-on / scanning timeout handling In-Reply-To: <56E83187.5010106@denx.de> References: <1457950693-564-1-git-send-email-sr@denx.de> <1457950693-564-5-git-send-email-sr@denx.de> <56E6FA17.1030705@wwwdotorg.org> <56E80B3B.2030209@denx.de> <56E82FC5.8080101@wwwdotorg.org> <56E83187.5010106@denx.de> Message-ID: <56E83327.7010905@wwwdotorg.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 03/15/2016 10:00 AM, Stefan Roese wrote: > Hi Stephen, > > On 15.03.2016 16:52, Stephen Warren wrote: >> On 03/15/2016 07:16 AM, Stefan Roese wrote: >>> Hi Stephen, >>> >>> On 14.03.2016 18:51, Stephen Warren wrote: >>>> On 03/14/2016 04:18 AM, Stefan Roese wrote: >>>>> This patch changes the USB port scanning procedure and timeout >>>>> handling in the following ways: >>>> >.. >>>> >>>> Tested-by: Stephen Warren >>>> >>>> (including some tests with a 7-port (i.e. 2 nested 4-port) USB hub maxed >>>> out with devices). >>> >>> Thanks for doing those tests on your platform. I'm interested, how >>> big the time difference between stock U-Boot and the patched >>> version is though. Could you please post those numbers once for >>> reference, if its not too much trouble? >> >> It looks like ~17s for v2016.01, and ~6s for u-boot/master from >> yesterday plus these patches, with the following configuration: >> >> Tegra124 (Jetson TK1) # usb tree >> USB device tree: >> 1 Hub (480 Mb/s, 0mA) >> u-boot EHCI Host Controller >> >> 1 Hub (480 Mb/s, 0mA) >> | u-boot EHCI Host Controller >> | >> +-2 Hub (480 Mb/s, 100mA) >> | USB2.0 Hub >> | >> +-3 Hub (480 Mb/s, 100mA) >> | | USB2.0 Hub >> | | >> | +-6 Mass Storage (480 Mb/s, 2mA) >> | | Sunplus Innovation Technology. USB to Serial-ATA bridge >> FF980813AF0000000000005FF16BFF >> | | >> | +-7 Mass Storage (480 Mb/s, 100mA) >> | | Generic Mass Storage Device 00000000000006 >> | | >> | +-8 Human Interface (1.5 Mb/s, 70mA) >> | | LITEON Technology USB Multimedia Keyboard >> | | >> | +-9 Human Interface (1.5 Mb/s, 100mA) >> | Microsoft Microsoft IntelliMouse? Explore >> | >> +-4 Vendor specific (480 Mb/s, 250mA) >> | ASIX Elec. Corp. AX88x72A 000001 >> | >> +-5 Mass Storage (480 Mb/s, 200mA) >> SanDisk Extreme AA010114140242512567 > > Thanks. > > I'm wondering why your configuration takes that much longer to > scan than mine (x86 platform). My USB configuration is not > that different: > > => time usb start > starting USB... > USB0: USB EHCI 1.00 > scanning bus 0 for devices... 9 USB Device(s) found > > time: 1.815 seconds > => usb tree > USB device tree: > 1 Hub (480 Mb/s, 0mA) > | u-boot EHCI Host Controller > | > +-2 Hub (480 Mb/s, 0mA) > | > +-3 Hub (480 Mb/s, 100mA) > | | > | +-7 Hub (12 Mb/s, 100mA) > | > +-4 Hub (480 Mb/s, 0mA) > | | > | +-8 Mass Storage (480 Mb/s, 200mA) > | | Kingston DataTraveler 2.0 50E549C688C4BE7189942766 > | | > | +-9 Mass Storage (480 Mb/s, 98mA) > | USBest Technology USB Mass Storage Device 09092207fbf0c4 > | > +-5 Mass Storage (480 Mb/s, 200mA) > | 6989 Intenso Alu Line EE706F5E > | > +-6 Mass Storage (480 Mb/s, 200mA) > JetFlash Mass Storage Device 3281440601 > > > And I'm down to less than 2 seconds scanning time. Perhaps > worth digging into at some point. But lets get this version > upstreamed first. I suspect my storage devices are slow; during USB enumeration I hear the HDD quickly spinning down/up as it's reset, and I know my SD card reader is rather slow to react (and probably requires some retries) since it experiences: Tegra124 (Jetson TK1) # usb start starting USB... USB0: USB EHCI 1.10 USB1: USB EHCI 1.10 scanning bus 0 for devices... 1 USB Device(s) found scanning bus 1 for devices... Device NOT ready Request Sense returned 02 3A 00 2 USB Device(s) found I also have 2 USB controllers, one of which has nothing attached, which might almost double the root port scan timeout alone?