Mark McClelland wrote:
> 
> Georg Acher wrote:
> 
> >Hi,
> >I'm currently fighting with the timing in hub.c...
> >
> >The Polestar USB audio device (with the Philips UDA1321) doesn't work anymore
> >with the current hub code (it worked a long time ago), the result after a
> >plugin is the usual "USB device not accepting new address". This happens
> >with both UHCI and OHCI, so it's not a HCD issue.
> >
> I have seen this with some ov511 cameras. Some particular models need to
> have power applied for a second or so before the data pins make contact.
> I have a USB power adapter that can do this. Also, reloading the HCD or
> disconnecting and reconnecting my hub's upstream cable usually fixes it.
> 
> >When inserting a wait_ms(300) in usb_hub_port_reset, it gets detected at the
> >second try, with a larger delay is works at the first try. However this long
> >delay is not applicable with the current "single-device handling" of hub.c,
> >since it would take too long for more than a few connected devices... But
> >the long delays are obviously needed for some devices.
> >
> I seem to recall trying this too. It made it impossible to connect more
> than one camera at a time. Even now, I can only connect 3 at most
> (probably because I do too much initialization in the probe function).
> 
> It seems like even the fastest probe function possible would still not
> allow all 127 possible devices per bus. Is there any way to parallelize
> the probing?
> 

To parallelize the probing is a bad idea because there should be just
one 
new device with address 0 on the bus at a point of time.

> >[...]
> >
> > However, the modules are properly detected in Windows 2000, so Linux
> >apparently does something wrong.
> >
> Yeah, I don't have these problems under Win98 or WinME either.
> 
> Speaking of hub problems, has anyone else noticed that Linux never
> reports overcurrent conditions? I can plug two 500 mA cameras into a
> bus-powered hub and no overcurrent condition is reported. The cameras
> switch to high power mode and seem to work perfectly. My kernel log says
> "hub.c: No over-current condition exists" no matter what. I have
> accidentally done this a few times, and I don't know how many more my
> hub / host controller can take.
> 

'hub.c: No over-current condition exists' means that the hub 'messures' 
no physical overcurrent. So your mainboard seems to be able to 
deliver 1.1A (2*cam+hub) and each of the hub ports can give you 500mA. 
AFAIK The current hub code does not calculate and restrict the power 
consumption of the devices. So the hub code should not allow your 
configuration but it does not check it currently. 
Also the UHCI virtual root hub has no standard way to check the 
physical overcurrent condition. On the other hand I think at least 
some VIA chips should be able to check for a overcurrent condition 
but the UHCI drivers do not read it. 
(OHCI virtual root hub checks overcurrent)

- Roman

> The hub is a D-Link DSB-H4 (VID=0x0441 PID=0x1456). I can provide full
> descriptors on request.
> 
> --
> Mark McClelland
> [EMAIL PROTECTED]
> 
> 
> _______________________________________________
> [EMAIL PROTECTED]
> To unsubscribe, use the last form field at:
> http://lists.sourceforge.net/lists/listinfo/linux-usb-devel

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to