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

Reply via email to