On Mon, Jul 21, 2003 at 10:27:30PM +0200, Oliver Neukum wrote: > Am Montag, 21. Juli 2003 20:02 schrieb Alan Stern: > > David: > > > > My last patch for usbcore concerns usb_device_remove() in usb.c. The most > > annoying things about it is its name. The routine doesn't remove USB > > devices; it disconnects drivers from interfaces. So I renamed it > > usb_remove_driver(). Luckily it's not used in many places. > > Quite misleading as well :-) > It doesn't remove a driver, as the driver stays loaded. > I suggest calling it usb_unlink_interface_driver()
Since 'unlink' has special meaning w.r.t URBs, how about
usb_unassociate_interface_driver() ?
> > Disabling and enabling interfaces would be a lot easier and more reliable
> > if struct urb contained a usb_interface field instead of (or in addition
> > to) its usb_device field. But that would be an immense change, something
> > for 2.7.
>
> URBs are addressed at device/endpoint pairs. Interfaces don't exist at
> that level, so I don't think that they should be dragged into it.
> But I might be wrong.
I've mention Alan's idea before, and gotten the same response. While
'interfaces' don't exist at that level, 'interfaces' are the basic unit
that drivers deal in.
Since a driver needs to go from device -> interface -> endpoint to submit an
URB, it does seem to make real sense to let the drivers track interfaces
instead of devices, and force them to convert interface -> endpoint.
Matt
--
Matthew Dharm Home: [EMAIL PROTECTED]
Maintainer, Linux USB Mass Storage Driver
Now payink attention, please. This is mouse. Click-click. Easy to
use, da? Now you try...
-- Pitr to Miranda
User Friendly, 10/11/1998
pgp00000.pgp
Description: PGP signature
