Hi Guennadi, On Fri, Apr 03, 2009 at 11:47:18AM +0200, Guennadi Liakhovetski wrote: > This patch adds support for i.MX3x (only tested with i.MX31 so far) ARM > SoCs to the fsl_usb2_udc driver. It also moves PHY configuration before > controller reset, because otherwise an ULPI PHY doesn't get a reset and > doesn't function after a reboot. The problem with longer control transfers > is still not fixed. The patch renames the fsl_usb2_udc.c file to > fsl_udc_core.c to preserve the same module name for user-space > compatibility. > > Signed-off-by: Guennadi Liakhovetski <lg@xxxxxxx> > --- > > Caution: CC-ing the ARM kernel ML, which is moderated for non-subscribers, > beware when replying. > > Ths patch is RFC because it actually doesn't work with the current next, > but it does work if I revert the clkdev support for i.MX31... Note that the driver was only working due to a bug *before* clkdev support which gets fixed by accident with this patch. The code without clkdev did a clk_disable(&usb_pll_clk); during initialization. This was without effect because the use count of this clock was 0 and thus the actual disable function was not called. The result was that the clock was still running from the bootloader (it's reset default). Try to turn this clock on even for the ULPI case, this at least helped me with the host driver. IIRC the Freescale code turned this clock on aswell, but disabled it for the ULPI case after initialization. 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 | -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html