[PATCH] usb: add Freescale QE/CPM USB peripheral controller driver
Alan Stern
stern at rowland.harvard.edu
Sat Aug 30 02:05:02 EST 2008
On Fri, 29 Aug 2008, Arnd Bergmann wrote:
> > > Does building a kernel image that can run on different hardware without
> > > rebuilding also violate the "relevant standards"?
> >
> > No. That isn't what Arnd was concerned about. He noted that even if
> > you did build multiple modules, only one of them could be loaded at any
> > time.
>
> Well, actually it was exactly what I was concerned about ;-)
>
> The way I understand the code, it is layered into the hardware specific
> part and the protocol specific part, which are connected through
> the interfaces I pointed out.
That's right.
> The standard requires that there can only be one protocol handler
> per physical interface, which is a reasonable limitation.
No, you've got it exactly backward. There can be multiple protocol
handlers per physical interface, but there must be only one physical
interface per device.
> However, what the Linux implementation actually enforces is
> that there can only be one hardware specific driver built or loaded
> into the kernel, which just looks like an arbitrary restriction
> that does not actually help.
Not at all -- it is an implementation of the constraint that there be
only one physical interface.
> If the gadget hardware drivers were registering the device with a
> gadget_bus_type, you could still enforce the "only one protocol"
> rule by binding every protocol to every device in that bus type.
There is no such rule.
Alan Stern
More information about the Linuxppc-dev
mailing list