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



abs%NetBSD.org@localhost said:
>       So (assuming I've understood correctly), ucompound would
>       map to a USB device and all NetBSD's existing usb devices
>       would really be USB interfaces? 

Unfortunately not all... (I don't understand why the USB
spec has introduced that complexity, but that's how it is.)
There are devices which are matched at a device level.
These are basically all which can be called "proprietary",
in particular most ethernet interfaces. These are fully
controlled by their device drivers, can use hidden or
non-standard interfaces etc.
Most "standard" functions reside at the interface level,
so they would be childs of "ucompound". Most, but not all:
hubs are full devices (which makes sense or not - at least
they can put additional functions onto their downstream side
if they need some, so it doesn't hurt). And "ubt" bluetooth
resides at device level too. (This might have historical
reasons: ubt needs multiple interfaces, and the USB spec
didn't provide for a way to group interfaces originally -
IADs were introduced just recently. So it might be just
good engineering to claim the whole device rather than
relying on non-standard hacks to detect interface groups.)

But anyway: we have drivers at device and at interface level.
A while ago, I did seperate them logically -- if you look
at sys/dev/usb/files.usb you'll see two attribute definitions:
"usbdevif" for device and "usbifif" for interface.

>       As a (possibly somewhat insane idea), how would it work to
>       merge ugen and ucompound

This makes a lot of sense. At least if we want (or need) to keep
the ugen API and semantics. Eg a real (loadable) driver could take over
part of a device controlled by ugen, as long as no user application
deals with the interfaces in question.
As said - the ugen API sucks, but there is a lot depending on
it so we need to be careful.

best regards
Matthias




-------------------------------------------------------------------
-------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich

Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzende des Aufsichtsrats: MinDir'in Baerbel Brumme-Bothe
Geschaeftsfuehrung: Prof. Dr. Achim Bachem (Vorsitzender),
Dr. Ulrich Krafft (stellv. Vorsitzender), Prof. Dr. Harald Bolt,
Dr. Sebastian M. Schmidt
-------------------------------------------------------------------
-------------------------------------------------------------------



Home | Main Index | Thread Index | Old Index