Re: Non-enumerable devices on USB and other enumerable buses

From: Mark Brown
Date: Wed Aug 14 2013 - 19:59:55 EST


On Wed, Aug 14, 2013 at 08:16:56PM +0000, Paul Zimmerman wrote:

> Mark's original complaint about USB was this:
>
> > the device). The hub needs to be "plugged" into the SoC after the SoC
> > USB controller has started with some GPIOs so we need to tell the system
> > that the hub exists and needs to be synchronised with the USB controller.

> This sounds to me like the normal discovery mechanism for USB isn't getting
> kicked off because no Connect Status Change is being triggered on the root
> port when the hub is brought online using the GPIOs. Maybe the port has
> been runtime suspended because no device was attached originally?

> So maybe the only thing needed for USB is a way to tell the parent port to
> frob its port control bits to try to determine if a device is now present.
> (set Wake on Connect Enable? Do a Port Reset? Cycle the Port Power bit if
> possible?)

No, that's not required in this case - the case is the opposite one to
the one you describe. Host starting first then hub works fine, if the
host does go into a low power mode it seems to notice the hub appearing
just fine. Hub then host fails for some reason which I don't know.

Attachment: signature.asc
Description: Digital signature