On Tue, 3 Jan 2012 00:38:31 +0000 Matthew Garrett <mjg@xxxxxxxxxx> wrote: > On Tue, Jan 03, 2012 at 12:22:58AM +0000, Jack Stone wrote: > > > So we have a table of USB ids that list the devices that need firmware drivers. When the uvcvideo driver registers the firmware interface with a USB id that matches the list we load the firmware driver and pass it a "warm start" event so it can cache the firmware. > > > > As long as we can identify the devices that *might* need firmware then we are ok. > > We could do all of this. Or we could just push the responsibility for > this specific case back to userspace, and maybe that's what I should > have done in the first place. My guess is this For small firmware and most devices we ought to just grab the firmware on module load, drop it on module unload. Whoopee its 8K or so. For the really big horrors where we can be fairly sure its not part of a critical path like big DVB firmware or 3G modems like qcserial then user space. and pray there are none that are large and problematic (eg iscsi, wireless or some other similar sort of suspect) Going back to loading the small firmwares at module load is exactly the same as when they were compiled in, which didn't seem to cause much pain. Alan -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html