On Wed, 4 Jun 2003 [EMAIL PROTECTED] wrote: > The only information the core has is the vendor and product IDs. > This is certainly not sufficient to determine which of multiple > configurations should be used / activated.
No, it's not. > It is the responsibility of the driver to take control of a device if > it can, including multiple dissimilar internal functions. Since it > was registered with a matching vendor and product ID in the first > place, it can presumably handle all aspects of that device. Normally a Linux driver handles only one aspect of the device. If a device contains multiple dissimilar internal functions, there normally will be multiple drivers loaded for it. > A good example is my Brother MFC 9200C. It contains a printer, a fax > machine, a scanner, and a smart-card reader. Each of these has > different driver requirements, yet they should all be supported (or > not support) by a single driver and a single probe() call. IMHO. They could be. But why not modularize the driver, and split it up into separate printer, fax, scanner, and card-reader drivers? Each would be easier to write and test, and might even be able to work generically on other units of the same kind, not just a Brother device. As far as selecting configurations, the argument you gave before can be taken even farther. If a single driver provides total support for a device, then presumably it also supports many different configurations, so it won't know which one to choose either! Only the user can tell. In Linux this choice is made by the user installing the proper settings in the hotplug config files. Alan Stern ------------------------------------------------------- This SF.net email is sponsored by: Etnus, makers of TotalView, The best thread debugger on the planet. Designed with thread debugging features you've never dreamed of, try TotalView 6 free at www.etnus.com. _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel