There was a discussion about this a while back, but I can't locate the messages in the archives or remember what the objections were.
Would there be a problem if the choose_configuration routine was changed to avoid configs that exceed the parent hub's power budget? This problem was just reported on linux-usb-users: The device has both a high-power and a low-power config, the high-power one is chosen because it is listed first, and it causes an overcurrent condition (taking down two or three other USB devices along with it) when plugged into a low-power hub. On a more theoretical note, it would be logical to move the configuration selection and installation code from where it is now (under usb_new_device) into the usb_generic probe routine. In a sense, that's the main function carried out when a new device is discovered. And now that there is code to deconfigure devices when they are unbound from usb_generic, for symmetry they should be reconfigured when they are rebound. Practically speaking, this may not be worthwhile. I don't expect people to go around unbinding and rebinding usb_generic very often. Moving the code like that would end up accomplishing little more than increasing the stack usage. Greg, what do you think? (Oh yes, if we proceed this way then at some point usb_device_match should be changed so that usb_generic always matches against devices and other drivers only match against interfaces. Right now it doesn't take account of the possibility that usb_generic might be unbound or reprobed.) Alan Stern ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
