|
@@ -1698,6 +1698,8 @@ static int musb_gadget_pullup(struct usb_gadget *gadget, int is_on)
|
|
|
|
|
|
is_on = !!is_on;
|
|
|
|
|
|
+ pm_runtime_get_sync(musb->controller);
|
|
|
+
|
|
|
/* NOTE: this assumes we are sensing vbus; we'd rather
|
|
|
* not pullup unless the B-session is active.
|
|
|
*/
|
|
@@ -1707,6 +1709,9 @@ static int musb_gadget_pullup(struct usb_gadget *gadget, int is_on)
|
|
|
musb_pullup(musb, is_on);
|
|
|
}
|
|
|
spin_unlock_irqrestore(&musb->lock, flags);
|
|
|
+
|
|
|
+ pm_runtime_put(musb->controller);
|
|
|
+
|
|
|
return 0;
|
|
|
}
|
|
|
|