Messages in this thread | | | Date | Sat, 19 Jul 2008 16:35:52 -0400 (EDT) | From | Alan Stern <> | Subject | Re: Re [patch 2/3] fastboot: turn the USB hostcontroller initcalls into async initcalls |
| |
On Sat, 19 Jul 2008, Simon Arlott wrote:
> usb/core/hub.c: > > /* USB 2.0 spec, 7.1.7.3 / fig 7-29: > * > * Between connect detection and reset signaling there must be a delay > * of 100ms at least for debounce and power-settling. The corresponding > * timer shall restart whenever the downstream port detects a disconnect. > * > * Apparently there are some bluetooth and irda-dongles and a number of > * low-speed devices for which this debounce period may last over a second. > * Not covered by the spec - but easy to deal with. > * > * This implementation uses a 1500ms total debounce timeout; if the > * connection isn't stable by then it returns -ETIMEDOUT. It checks > * every 25ms for transient disconnects. When the port status has been > * unchanged for 100ms it returns the port status. > */ > > Could it do that for all ports on the hub in parallel instead?
In fact it will, to a large extent. The new code isn't present in 2.6.26 but it ought to be in 2.6.27-rc1.
However Arjan wasn't talking about debounce delays; he was talking about port-power-on delays. A nice improvement would be to combine the two types of delay into one. I'll look into it...
Alan Stern
| |