usb: musb: gadget: use platform callback to enable vbus
authorGrazvydas Ignotas <notasas@gmail.com>
Sun, 24 Mar 2013 15:36:55 +0000 (17:36 +0200)
committerFelipe Balbi <balbi@ti.com>
Tue, 2 Apr 2013 08:42:44 +0000 (11:42 +0300)
On some platform configurations (like OMAP3+twl4030) it's the platform
code that enables VBUS, not OTG transceiver, so call vbus platform
callback instead, it will then call the transceiver if needed.

This fixes a use case where USB cable is plugged first and gadget
driver is loaded later after that.

Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/musb/musb_gadget.c

index ff6ba3adf5feb88535dd043bb49c3d49de56edf1..4be48651b5a8edeb87a7db73d23c024f70f4af1d 100644 (file)
@@ -1848,9 +1848,8 @@ static int musb_gadget_start(struct usb_gadget *g,
                goto err;
        }
 
-       if ((musb->xceiv->last_event == USB_EVENT_ID)
-                               && otg->set_vbus)
-               otg_set_vbus(otg, 1);
+       if (musb->xceiv->last_event == USB_EVENT_ID)
+               musb_platform_set_vbus(musb, 1);
 
        hcd->self.uses_pio_for_control = 1;