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@xxxxxxx> --- 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 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox