[U-Boot] [PATCH v3 4/4] usb: Change power-on / scanning timeout handling

Stephen Warren swarren at wwwdotorg.org
Tue Mar 15 17:07:03 CET 2016


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 <swarren at nvidia.com>
>>>>
>>>> (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?


More information about the U-Boot mailing list