Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> writes: > On Mon, 30 Jul 2012, Sarah Sharp wrote: > >> - I'm not sure if it's true that all devices that need firmware will >> have USB_QUIRK_RESET_MORPHS set. Alan, Oliver? > > Probably not, and in any case the situation is more complex than it > first appears. (In fact, I wonder whether we really need that quirk > flag at all -- as far as I can tell it's not doing anybody any good.) usb_modeswitch use it to prevent usb-storage from resetting the device on errors. Some 3G modems expose a storage interface (SD card reader and/or embedded driver CD) even after switching to modem mode. You do not want them to switch back from modem mode on every usb-storage problem, especially as you may assume the device firmware is buggy. Some devices would probably end up in a continuous reset loop without this quirk. >From usb_modeswitch.tcl: # In newer kernels there is a switch to avoid the use of a device # reset (e.g. from usb-storage) which would possibly switch back # a mode-switching device to initial mode if [regexp {ok:} $report] { Log "Checking for AVOID_RESET_QUIRK attribute" if [file exists $devdir/avoid_reset_quirk] { if [catch {exec echo "1" >$devdir/avoid_reset_quirk 2>/dev/null} err] { Log " Error setting the attribute: $err" } else { Log " AVOID_RESET_QUIRK activated" } } else { Log " AVOID_RESET_QUIRK not present" } } IMHO that should have been the default for any composite device, but whatever.. I don't think it's very nice of usb-storage to reset the device if there are drivers bound to other functions. Bjørn -- 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