On Wed, Jun 13, 2012 at 01:11:27AM -0300, Fabio Estevam wrote: > From: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> > > With the new common clock infrastructure, the following clocks should be > used on i.MX drivers: ipg, per and ahb. > > Adapt fsl_mxc_udc to follow this new behaviour to fix the following probe error: > > Freescale High-Speed USB SOC Device Controller driver (Apr 20, 2007) > fsl-usb2-udc fsl-usb2-udc: clk_get("usb") failed > fsl-usb2-udc: probe of fsl-usb2-udc failed with error -2 > > Reported-by: Christoph Fritz <chf.fritz@xxxxxxxxxxxxxx> > Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> > --- > Changes since v2: > - Fix one more error in the mxc_ipg_clk path > Changes since v1: > - Fix error path for mxc_ipg_clk > - Use clk_disable_unprepare in other locations as well > drivers/usb/gadget/fsl_mxc_udc.c | 26 +++++++++++++++++--------- > 1 files changed, 17 insertions(+), 9 deletions(-) > > diff --git a/drivers/usb/gadget/fsl_mxc_udc.c b/drivers/usb/gadget/fsl_mxc_udc.c > index dcbc0a2..0bc7815 100644 > --- a/drivers/usb/gadget/fsl_mxc_udc.c > +++ b/drivers/usb/gadget/fsl_mxc_udc.c > @@ -22,6 +22,7 @@ > > static struct clk *mxc_ahb_clk; > static struct clk *mxc_usb_clk; > +static struct clk *mxc_ipg_clk; > > /* workaround ENGcm09152 for i.MX35 */ > #define USBPHYCTRL_OTGBASE_OFFSET 0x608 > @@ -35,12 +36,18 @@ int fsl_udc_clk_init(struct platform_device *pdev) > > pdata = pdev->dev.platform_data; > > + mxc_ipg_clk = devm_clk_get(&pdev->dev, "ipg"); > + if (IS_ERR(mxc_ipg_clk)) { > + dev_err(&pdev->dev, "clk_get(\"ipg\") failed\n"); > + return PTR_ERR(mxc_ipg_clk); > + } > + > if (!cpu_is_mx35() && !cpu_is_mx25()) { You should drop the cpu_is_* here. Both i.MX35 and i.MX25 do provide these clocks, so there's potential to make this clock handling here simpler. 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