On Tue, Sep 2, 2014 at 7:54 AM, Felipe Balbi <balbi@xxxxxx> wrote: > Hi, > > On Tue, Sep 02, 2014 at 05:19:18PM +0530, Kiran Kumar Raparthy wrote: ... >> diff --git a/drivers/usb/phy/otg-wakeupsource.c b/drivers/usb/phy/otg-wakeupsource.c >> index fca2010..70fa05e 100644 >> --- a/drivers/usb/phy/otg-wakeupsource.c >> +++ b/drivers/usb/phy/otg-wakeupsource.c >> @@ -48,7 +48,7 @@ static void otgws_handle_event(struct usb_phy *otgws_xceiv, unsigned long event) >> case USB_EVENT_NONE: >> case USB_EVENT_ID: >> case USB_EVENT_CHARGER: >> - usb_drop_wsource(otgws_xceiv); >> + usb_temporary_hold_wsource(otgws_xceiv); > > looks like this won't work. You're holding the lock even on > USB_EVEN_NONE. Why ? It temporarily holds a timed wakeup source on USB disconnect events, to allow the rest of the system time to react to the USB disconnection (dropping host sessions, updating charger status, etc.) prior to re-allowing suspend. Todd -- 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