summaryrefslogtreecommitdiff
path: root/drivers/usb/musb/musb_gadget.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/musb/musb_gadget.c')
-rw-r--r--drivers/usb/musb/musb_gadget.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c
index 7ae88092e46..ead9486a0a0 100644
--- a/drivers/usb/musb/musb_gadget.c
+++ b/drivers/usb/musb/musb_gadget.c
@@ -2029,7 +2029,9 @@ static int musb_gadget_stop(struct usb_gadget *g,
spin_lock_irqsave(&musb->lock, flags);
+#ifdef CONFIG_USB_MUSB_OTG
musb_hnp_stop(musb);
+#endif
(void) musb_gadget_vbus_draw(&musb->g, 0);
@@ -2143,6 +2145,7 @@ void musb_g_disconnect(struct musb *musb)
switch (musb->xceiv->state) {
default:
+#ifdef CONFIG_USB_MUSB_OTG
dev_dbg(musb->controller, "Unhandled disconnect %s, setting a_idle\n",
otg_state_string(musb->xceiv->state));
musb->xceiv->state = OTG_STATE_A_IDLE;
@@ -2154,6 +2157,7 @@ void musb_g_disconnect(struct musb *musb)
break;
case OTG_STATE_B_WAIT_ACON:
case OTG_STATE_B_HOST:
+#endif
case OTG_STATE_B_PERIPHERAL:
case OTG_STATE_B_IDLE:
musb->xceiv->state = OTG_STATE_B_IDLE;