On Wed, 15 Apr 2015, Oliver Neukum wrote: > Hi, > > I found a problem with the close() function of usbhid. > It fails to properly suspend device that don't support > remote wake-up. The power core does not retry an autosuspend > that failed due to a lack of support for remote wake-up. > > So there needs to be a _put() if the need for remote wake-up > is rescinded. The current state of affairs leads to joysticks > never going to sleep again after use. > > But I am not happy with the simple solution. It needlessly > wakes up suspended devices. So, I tried using > usb_autopm_get_interface_no_resume(). To my considerable > surprise that didn't work. I cannot understand why. In what way did it not work? > So what is to be done? Start with a little debugging. When you do the put, what happens inside autosuspend_check()? 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