Re: [PATCH 0/2] USB gadget: Handle endpoint requests at the function level

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 18 Aug 2009, Laurent Pinchart wrote:

> On Tuesday 18 August 2009 17:43:23 Alan Stern wrote:
> > On Tue, 18 Aug 2009, Laurent Pinchart wrote:
> > > Hi everybody,
> > >
> > > this patch series introduces an endpoint claim/release interface for
> > > function drivers to dispatch requests targeted at endpoints to the
> > > correct function driver.
> >
> > It's not clear why this should be needed.  Don't function drivers
> > already allocate endpoints amongst themselves as part of configuration
> > initialization?
> 
> Do they, but they don't establish an endpoint -> function ownership link.
> 
> > After all, we can't have two different interfaces trying to use the same
> > endpoint.
> 
> Except in different configurations. Actually it seems multiple configurations 
> are not well supported today. The infrastructure is there, but function 
> drivers allocate their endpoints globally at the gadget level and not at the 
> configuration level.
> 
> > If this is a matter of figuring out which function driver owns an
> > endpoint, can't that be done by searching through the endpoint
> > descriptors for each function's active interfaces?
> 
> In that case I would have to loop over all functions for the active 
> configuration (easy) and parse all descriptors for the correct speed to locate 
> endpoint descriptors. That should be possible, would the overhead be ok ?

It might be; I don't have a good feel for it.

Alternatively, the framework could set up the ownership links itself by
reading the descriptors just once, while processing the Set-Config
request.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux