[U-Boot] [PATCH] ehci: speed up initialization

Wolfgang Grandegger wg at grandegger.com
Mon Dec 19 14:31:38 CET 2011


On 12/19/2011 01:51 PM, Vincent Palatin wrote:
> On Mon, Dec 19, 2011 at 04:07, Wolfgang Grandegger <wg at grandegger.com> wrote:
>> I just realized that this patch breaks "usb start" on my mx53loco board:
>>
>>  MX53LOCO U-Boot > usb start
>>  (Re)start USB...
>>  USB:   Register 10011 NbrPorts 1
>>  USB EHCI 1.00
>>  scanning bus for devices... 1 USB Device(s) found
>>         scanning bus for storage devices... 0 Storage Device(s) found
>>         scanning bus for ethernet devices... 0 Ethernet Device(s) found
>>
>>  MX53LOCO U-Boot > usb start
>>  (Re)start USB...
>>  USB:   Register 10011 NbrPorts 1
>>  USB EHCI 1.00
>>  scanning bus for devices... 2 USB Device(s) found
>>         scanning bus for storage devices... 0 Storage Device(s) found
>>         scanning bus for ethernet devices... 1 Ethernet Device(s) found
>>
>> The device is not found at the first attempt. Obviously, a value of 10
>> for bPwrOn2PwrGood seems too short but 20 works fine. Would that be a
>> resonable compromise? If yes, I could send a patch.
> 
> This doesn't match the EHCI standard which explicity states that the
> power should be good after 20ms (paragraph 2.3.9 in EHCI 1.0), so we
> should probably find whether we are missing another delay somewhere in
> the generic EHCI code (which used to be hidden and should be fixed) or
> if i.MX53 is not compliant with the standard and need a special quirk.

I'm not an USB expert but if I look into the hub_power_on() function of
the Linux kernel it waits at least 100ms (and only once). See:

  http://lxr.linux.no/#linux+v3.1.5/drivers/usb/core/hub.c#L567

Wolfgang.





More information about the U-Boot mailing list