summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Shiyan <shc_work@mail.ru>2013-03-12 21:02:42 +0400
committerSascha Hauer <s.hauer@pengutronix.de>2013-03-13 17:35:30 +0100
commit2e7d66f526217f6ff3167e4580aecb9548a0de33 (patch)
tree3e6dda48b01042921ea49d06ebc8bca34f580de0
parentd34aca4c09615870b694820dc21049bd1e77030e (diff)
downloadbarebox-2e7d66f526217f6ff3167e4580aecb9548a0de33.tar.gz
barebox-2e7d66f526217f6ff3167e4580aecb9548a0de33.tar.xz
usb: chipidea-imx: Fix usb initialization
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@mail.ru> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--drivers/usb/imx/chipidea-imx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/imx/chipidea-imx.c b/drivers/usb/imx/chipidea-imx.c
index 483484e117..1570f90d9c 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)) {