Skip to contentSkip to conversation

usb: musb: gadget: clear gadget_driver when gadget is stopped

PATCH New Grazvydas Ignotas 1 participant 1 message Mar 10, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 usb: musb: gadget: clear gadget_driver when gadget is stopped

Some musb glue drivers use gadget_driver pointer to know if any gadget drivers are loaded at some moment and base further decisions on it, like to do runtime suspend/resume or not. Right now the pointer is left alone on stop and OMAP musb glue later does wrong runtime_pm decisions because of it.

Clear the gadget_driver pointer on remove, it's invalid after stop anyway.

---
 drivers/usb/musb/musb_gadget.c |    1 +
 1 file changed, 1 insertion(+)
drivers/usb/musb/musb_gadget.c +1 -0
index 19998e9..1ddb889 100644
@@ -2057,6 +2057,7 @@ static int musb_gadget_stop(struct usb_gadget *g,
 	dev_dbg(musb->controller, "unregistering driver %s\n", driver->function);
 
 	musb->is_active = 0;
+	musb->gadget_driver = NULL;
 	musb_platform_try_idle(musb, 0);
 	spin_unlock_irqrestore(&musb->lock, flags);
 
Signature · 6 lines
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html