On Tue, 6 Apr 2010, Oliver Neukum wrote: > > Hmm. Maybe usb_driver_claim_interface() should be changed. Since the > > Yes. > > > probe routine never gets called for a claimed interface, it would make > > sense that the interface should start out in a suspended state. So > > maybe claim_interface should call pm_runtime_set_suspended() instead of > > pm_runtime_set_active(). > > Yes, though ideally we wouldn't make an attempt to autosuspend > an interface a driver that does not support autosuspend has claimed. That could happen only if the driver was probed for interface A, and the probe routine claimed interface B before failing, but it didn't release interface B. Under such circumstances a little waste in the core won't matter. > > Oliver, do you know if this issue has come up before? > > No, this is new. I suspect behavior has been changed by the switch > to the generic framework. Have you tested the cdc-acm driver to see if it still autosuspends correctly? That's the only other example I can think of offhand where a driver claims multiple interfaces and supports autosuspend. Alan Stern -- 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