On Tue, 2 Dec 2003, Alex Bennee wrote:

> > As I showed above with a decode from a CATC chief, they are setup commands 
> > to a hub, probably the one containing his device.
> 
> Is that an external hub, because we didn't have one. However there is a
> "Virtual Root Hub" which is part of the ISP116x. I'm a little fuzzy on
> what a this is meant to mean or do, but could we be incorrectly routing
> packets for the hub to the device?

That sounds like a very likely possibility.

> That may explain some of the weirdness, if I understood what role the
> root hub plays in USB :-)

Normally I would expect your device to ignore those hub commands because 
it wouldn't understand them.  But failure of the commands would mean that 
the USB core wouldn't communicate with your root hub properly and hence 
wouldn't communicate with any devices attached to your controller.

The role of a root hub is pretty simple to understand.  Many host
controllers have multiple ports and hence must behave like a hub.  For
consistency, even controllers with just a single port are treated like a
hub.  That's what the root hub is (sometimes called a "virtual" root hub 
because it's not really a hub, just a software emulation).

Your HCD has to register its root hub and carry out the associated
functions.  That means responding to control messages for hub and port
status, generating status change interrupt messages, and carrying out
various SetFeature and ClearFeature commands.  In other words, your driver
has to carry out all the functions necessary to convince the hub driver
that there is a hub at the root of your bus.

For an example of how such a thing might work, look at the uhci-hub.c file
in drivers/usb/host/.

Alan Stern



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to