tech-kern archive

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

Re: use of an intermediate device to handle USB interfaces



On Thu, 7 Feb 2008, Matthias Drochner wrote:

> mouse%Rodents.Montreal.QC.CA@localhost said:
> > I'm not clear on the
> > difference between a device and an interface
>
> A device is basically what plugs into a USB slot,
> so eg link and power management is done at this level.
> A device logically consists of (one or more) interfaces.
> Interfaces often belong to some pre-defined interface
> class which can be handled by some class driver.
> Thus drivers for common stuff (storage, keyboards, audio...)
> attach to some interface.

I think its a fine idea you are proposing, if I understand correctly:

ubt0 at uhub0    - ubt(4) handles whole device

udev0 at uhub0   - udev(4) handles generic device with multiple interfaces
uhidev0 at udev0 - first interface is HID
ums0 at uhidev0  - a mouse
uhidev1 at udev0 - second interface is HID
ukbd0 at uhidev1 - a keyboard
ugen0 at udev0   - last interface we have no driver for

which would clean up the device attachment somewhat (IIRC there need be
multiple passes outside of the normal autoconf framework with the current
method)

iain
(as you see, my suggestion is udev(4) rather than "ucompound" :)



Home | Main Index | Thread Index | Old Index