MUSB: Remove usb_musb_pm_init() call
authorAnand Gadiyar <gadiyar@ti.com>
Mon, 24 Aug 2009 12:06:37 +0000 (17:36 +0530)
committerKevin Hilman <khilman@deeprootsystems.com>
Wed, 2 Sep 2009 22:07:56 +0000 (15:07 -0700)
In usb_musb_pm_init, we attempt to access an MUSB register
when the i-clock may not be on, or the module is otherwise
not accessible.

We need to either:
- enable the clock before this access, or
- remove this code and move it to the bootloader, or
- enable the clock in the bootloader

If we enable the clock in the bootloader, we might as well
add the workaround in the bootloader itself. This code will
anyway be changed once hwmod is in place, so remove it for now

This allows us to boot the kernel on certain OMAP3 boards with
a bootloader that doesn't enable this clock. Without this, we
will need to upgrade the bootloaders on these boards.

Signed-off-by: Anand Gadiyar <gadiyar@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-omap2/usb-musb.c

index 739e59e..1145a25 100644 (file)
 #include <mach/mux.h>
 #include <mach/usb.h>
 
-#define OTG_SYSCONFIG  (OMAP34XX_HSUSB_OTG_BASE + 0x404)
-
-static void __init usb_musb_pm_init(void)
-{
-       /* Ensure force-idle mode for OTG controller */
-       if (cpu_is_omap34xx())
-               omap_writel(0, OTG_SYSCONFIG);
-}
-
 #ifdef CONFIG_USB_MUSB_SOC
 
 static struct resource musb_resources[] = {
@@ -173,13 +164,10 @@ void __init usb_musb_init(void)
                printk(KERN_ERR "Unable to register HS-USB (MUSB) device\n");
                return;
        }
-
-       usb_musb_pm_init();
 }
 
 #else
 void __init usb_musb_init(void)
 {
-       usb_musb_pm_init();
 }
 #endif /* CONFIG_USB_MUSB_SOC */