On Sat, Nov 09, 2002, Martin Diehl <[EMAIL PROTECTED]> wrote: > On Fri, 8 Nov 2002, Johannes Erdfelt wrote: > > > But the hub is what is disconnecting the port. What hub are you using? > > Hm, IMHO the hub doesn't disconnect (how would it?) it merely reports the > device gets disconnected. Sure, it's minor nitpicking, but IMHO important > for understanding the problem. The point is the difference between a > device being plugged (i.e. appears physically attached to the port) and > the port _detecting_ the plugged device and thus reporting a connection.
Yes, important distinction. However, the problem isn't that the device is getting disconnected, the problem is the hub is saying that it got disconnected when it apparentely isn't. > Basically, device detection happens due to some resistor in the device > which pulls one of the data lines to a certain voltage level. This voltage > is derived from the bus power. Particularly when a buspowered device gets > attached the hub's downstream port has to drive considerable power to the > device while the electrical contacts are still bouncing (and the device > is probably just charging some large capacitors). > > Therefore it's completely _expected behavior_ for the downstream port to > see the pullup resistor applyied and disappearing several times. Depending > when we ask the hub for the port state we'll see it either connected or > not. The whole point of the debounce delay is to ensure there was some > interval without any transient connection state change. > > That's why it would be important to know whether the debounce-failure is > due to some error when reading the portstatus or if we are really leaving > there after 400ms without transient connection change but finally seeing > no connection there. And if a further increase of the delay helps. The bug fix was for a hub that cleared the connect bit always after the first read or something. So either that means: a) The hub is broken and clearing the bit when it shouldn't b) The device really is disconnected per the spec c) The debounce routine is broken I don't know how it could work if b was the case. I'll have to reread the spec to see if c is the case. JE ------------------------------------------------------- This sf.net email is sponsored by: See the NEW Palm Tungsten T handheld. Power & Color in a compact size! http://ads.sourceforge.net/cgi-bin/redirect.pl?palm0001en _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
