[PATCH RESEND] usb: chipidea-imx: Fix usb initialization

Alexander Shiyan shc_work at mail.ru
Tue Mar 12 13:02:42 EDT 2013


This patch fix chipidea-imx usb initialization.
"imx_chipidea_port_init" was moved before PORTSC setup in the
commit "USB i.MX chipidea: implement post init support". This
change breaks usb function with ULPI. Patch moves port initialization
back after PORTSC setup, so it works again.

Signed-off-by: Alexander Shiyan <shc_work at mail.ru>
---
 drivers/usb/imx/chipidea-imx.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/imx/chipidea-imx.c b/drivers/usb/imx/chipidea-imx.c
index 483484e..1570f90 100644
--- a/drivers/usb/imx/chipidea-imx.c
+++ b/drivers/usb/imx/chipidea-imx.c
@@ -73,13 +73,13 @@ static int imx_chipidea_probe(struct device_d *dev)
 	data.post_init = imx_chipidea_port_post_init;
 	data.drvdata = dev;
 
-	imx_chipidea_port_init(dev);
-
 	portsc = readl(base + 0x184);
 	portsc &= ~MXC_EHCI_PORTSC_MASK;
 	portsc |= pdata->flags & MXC_EHCI_PORTSC_MASK;
 	writel(portsc, base + 0x184);
 
+	imx_chipidea_port_init(dev);
+
 	if ((pdata->flags & MXC_EHCI_PORTSC_MASK) == MXC_EHCI_MODE_ULPI) {
 		dev_dbg(dev, "using ULPI phy\n");
 		if (IS_ENABLED(CONFIG_USB_ULPI)) {
-- 
1.7.12.4




More information about the barebox mailing list