b/arch/arm/mach-imx/clk-imx51-imx53.c
@@ -492,6 +492,7 @@ int __init mx53_clocks_init(unsigned long
rate_ckil, unsigned long rate_osc,
clk_register_clkdev(clk[usboh3_per_gate], "per", "53f80800.usbmisc");
clk_register_clkdev(clk[usboh3_gate], "ipg", "53f80800.usbmisc");
clk_register_clkdev(clk[usboh3_gate], "ahb", "53f80800.usbmisc");
+ clk_register_clkdev(clk[usb_phy1_gate], "phy1",
"53f80800.usbmisc"); // MF
clk_register_clkdev(clk[esdhc1_ipg_gate], "ipg", "sdhci-esdhc-imx53.0");
clk_register_clkdev(clk[dummy], "ahb", "sdhci-esdhc-imx53.0");
clk_register_clkdev(clk[esdhc1_per_gate], "per", "sdhci-esdhc-imx53.0");
b/drivers/usb/chipidea/usbmisc_imx.c
@@ -197,6 +197,24 @@ static int __devinit usbmisc_imx_probe(struct
platform_device *pdev)
if (ret)
goto err_per_failed;
+
+ { /* Temp Hack by MF awaiting reply on mailing list */
+ struct clk *phy_clk;
+
+ dev_info(&pdev->dev, "@MF@ hacking phy clock enable\n");
+ phy_clk = devm_clk_get(&pdev->dev, "phy1");
+ if (IS_ERR(phy_clk)) {
+ dev_err(&pdev->dev, "failed to get PHY clock,
err=%ld\n", PTR_ERR(phy_clk));
+ goto err_per_failed;
+ }
+
+ ret = clk_prepare_enable(phy_clk);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to enable PHY
clock, err=%d\n", ret);
+ goto err_per_failed;
+ }
+ }
+