diff options
author | Jun Li <r65092@freescale.com> | 2010-04-14 15:03:45 +0800 |
---|---|---|
committer | Alejandro Gonzalez <alex.gonzalez@digi.com> | 2010-05-25 11:20:24 +0200 |
commit | ccf152ba77572611d19cbfda2b4c677d8ca8c50a (patch) | |
tree | d022b3b1745b4fff752688bf75f98518164f64a0 | |
parent | 2487a516df82b70531082550e277485601a4eb98 (diff) |
ENGR00121945 Fix USB OTG pin-detect.
In OTG mode, entering low power mode after udc probe causes
otg controller can not exit from it when switch to host mode.
this patch let gadget class driver handle it.
Signed-off-by: Jun Li <r65092@freescale.com>
Signed-off-by: Alejandro Gonzalez <alex.gonzalez@digi.com>
-rw-r--r-- | drivers/usb/gadget/arcotg_udc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/usb/gadget/arcotg_udc.c b/drivers/usb/gadget/arcotg_udc.c index b8beeb51dd68..b4ccc3bc3d4f 100644 --- a/drivers/usb/gadget/arcotg_udc.c +++ b/drivers/usb/gadget/arcotg_udc.c @@ -2198,14 +2198,14 @@ int usb_gadget_register_driver(struct usb_gadget_driver *driver) udc_controller->driver = driver; udc_controller->gadget.dev.driver = &driver->driver; spin_unlock_irqrestore(&udc_controller->lock, flags); - +#ifndef CONFIG_USB_OTG if (udc_controller->pdata->usb_clock_for_pm) udc_controller->pdata->usb_clock_for_pm(true); portsc = fsl_readl(&dr_regs->portsc1); portsc &= ~PORTSCX_PHY_LOW_POWER_SPD; fsl_writel(portsc, &dr_regs->portsc1); - +#endif /* bind udc driver to gadget driver */ retval = driver->bind(&udc_controller->gadget); if (retval) { @@ -2869,7 +2869,7 @@ static int __init fsl_udc_probe(struct platform_device *pdev) #ifdef POSTPONE_FREE_LAST_DTD last_free_td = NULL; #endif - +#ifndef CONFIG_USB_OTG /* disable all INTR */ fsl_writel(0, &dr_regs->usbintr); @@ -2882,7 +2882,7 @@ static int __init fsl_udc_probe(struct platform_device *pdev) if (udc_controller->pdata->usb_clock_for_pm) udc_controller->pdata->usb_clock_for_pm(false); - +#endif create_proc_file(); return 0; |