Re: RFC: Platform data for onboard USB assets

Greg KH
2011-03-11T16:57:31Z

On Fri, Mar 11, 2011 at 04:48:50PM +0000, Mark Brown wrote:
> On Fri, Mar 11, 2011 at 08:35:22AM -0800, Greg KH wrote:
> > On Fri, Mar 11, 2011 at 04:27:59PM +0000, Mark Brown wrote:
>
> > > I'm actually not that fussed about the MAC address use case itself and
> > > do tend to agree with you that that's handlable in userspace but for the
> > > other things that might need to be configured there's a lot of things
> > > that for non-discoverable buses we're currently passing through platform
> > > data so switching to bouncing things through userspace would itself be a
> > > substantial change from other systems.
>
> > But USB _is_ discoverable, that's my point.
>
> USB itself is discoverable but the when the USB bus you're looking at is
> one that's soldered down onto a board in a specific design all bets are
> off regarding how complete the information you get will be. On a basic
> level the designers may have done things like omit the configuration
> EEPROMs that would set the device IDs that the driver should be relying
> on to identify the hardware configuration. There may be other, nastier,
> things going on.

Then you use the existing platform data for your USB host controller
driver. Doesn't that work today just fine?

> > > You can't in general rely on the system being neatly abstracted and
> > > while discoverable buses do avoid many problems in this sort of area
> > > there are still things which can only be discovered through reference to
> > > the schematics or similar, especially if you care about the microamps.
>
> > Again, that's not USB, so it isn't relevant here.
>
> You really can't make this assumption about discoverable buses on
> embedded devices. The discoverability will get you most of the way
> there but not always all of the way there.

Then the bus is not really USB, sorry. USB is discoverable, _and_ can
support enumeration in non-deterministic ways. If people are using it
in other ways then it is not USB and is something else.

thanks,

greg k-h