Message ID | 1343143805.834.3.camel@coredoba.hi.pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Am 24.07.2012 17:30, schrieb Jan Lübbe: > Hi, > > On Mon, 2012-07-23 at 09:08 +0200, Yegor Yefremov wrote: >> After getting MMC working I now have following issues: both musb and EHCI make problems. >> >> musb: >> >> musb-hdrc: version 6.0, ?dma?, otg (peripheral+host) >> musb-am35x musb-am35x: failed to get clock >> musb-am35x: probe of musb-am35x failed with error -2 > I've seen the same problem after merging omap-devel-d-for-3.6 onto v3.5. > (see http://git.kernel.org/?p=linux/kernel/git/pjw/omap-pending.git;a=tag;h=refs/tags/omap-devel-d-for-3.6) > > So far I've worked around it like this (I'm not sure this is the correct > approach, but it works): > > diff --git a/drivers/usb/musb/am35x.c b/drivers/usb/musb/am35x.c > index 9f3eda9..2184693 100644 > --- a/drivers/usb/musb/am35x.c > +++ b/drivers/usb/musb/am35x.c > @@ -480,14 +480,14 @@ static int __devinit am35x_probe(struct platform_device *pdev) > goto err1; > } > > - phy_clk = clk_get(&pdev->dev, "fck"); > + phy_clk = clk_get(&pdev->dev, "hsotgusb_ick"); > if (IS_ERR(phy_clk)) { > dev_err(&pdev->dev, "failed to get PHY clock\n"); > ret = PTR_ERR(phy_clk); > goto err2; > } > > - clk = clk_get(&pdev->dev, "ick"); > + clk = clk_get(&pdev->dev, "hsotgusb_fck"); > if (IS_ERR(clk)) { > dev_err(&pdev->dev, "failed to get clock\n"); > ret = PTR_ERR(clk); Jan, thanks for the patch. It helped. I've taken the upcoming vanila 3.6 kernel and got both musb and EHCI running. I will test it further after linux-omap will be merged with linux-2.6 after merge window is closed. Yegor -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/usb/musb/am35x.c b/drivers/usb/musb/am35x.c index 9f3eda9..2184693 100644 --- a/drivers/usb/musb/am35x.c +++ b/drivers/usb/musb/am35x.c @@ -480,14 +480,14 @@ static int __devinit am35x_probe(struct platform_device *pdev) goto err1; } - phy_clk = clk_get(&pdev->dev, "fck"); + phy_clk = clk_get(&pdev->dev, "hsotgusb_ick"); if (IS_ERR(phy_clk)) { dev_err(&pdev->dev, "failed to get PHY clock\n"); ret = PTR_ERR(phy_clk); goto err2; } - clk = clk_get(&pdev->dev, "ick"); + clk = clk_get(&pdev->dev, "hsotgusb_fck"); if (IS_ERR(clk)) { dev_err(&pdev->dev, "failed to get clock\n"); ret = PTR_ERR(clk);