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 739e59e8025cc7b109707ac7f4b302afbb82fb14..1145a2562b0f7fc9620793a34a526bdc4878f2b1 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 */