On Tue, Mar 05, 2013 at 09:11:08PM +0400, Alexander Shiyan wrote: > 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. On which board are you working? The pcm038? This currently works for me ;) > > 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); > + Damn. I moved this to the current place also while working on ULPI, it was the Efika MX Smartbook in this case. I would have to check if this still works with this patch applied. I wish I'd know how to do this setup correctly. This was a source of initialization order shuffeling in the Kernel already. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox