omap2+: Make omap_hwmod_late_init into core_initcall
authorTony Lindgren <tony@atomide.com>
Mon, 14 Feb 2011 23:40:20 +0000 (15:40 -0800)
committerTony Lindgren <tony@atomide.com>
Mon, 14 Feb 2011 23:40:49 +0000 (15:40 -0800)
Otherwise things will fail with early_init changes.

Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/io.c
arch/arm/mach-omap2/omap_hwmod.c
arch/arm/plat-omap/include/plat/omap_hwmod.h

index c203204..f89173a 100644 (file)
@@ -400,8 +400,6 @@ void __init omap2_init_common_devices(struct omap_sdrc_params *sdrc_cs0,
 {
        omap_serial_early_init();
 
-       omap_hwmod_late_init();
-
        if (cpu_is_omap24xx() || cpu_is_omap34xx()) {
                omap2_sdrc_init(sdrc_cs0, sdrc_cs1);
                _omap2_init_reprogram_sdrc();
index e282e35..eacdfd3 100644 (file)
@@ -1628,7 +1628,7 @@ int __init omap_hwmod_init(struct omap_hwmod **ohs)
  * to struct clk pointers for each registered omap_hwmod.  Also calls
  * _setup() on each hwmod.  Returns 0.
  */
-int omap_hwmod_late_init(void)
+static int __init omap_hwmod_late_init(void)
 {
        int r;
 
@@ -1644,6 +1644,7 @@ int omap_hwmod_late_init(void)
 
        return 0;
 }
+core_initcall(omap_hwmod_late_init);
 
 /**
  * omap_hwmod_enable - enable an omap_hwmod
index 1eee85a..fedd829 100644 (file)
@@ -539,7 +539,6 @@ int omap_hwmod_init(struct omap_hwmod **ohs);
 struct omap_hwmod *omap_hwmod_lookup(const char *name);
 int omap_hwmod_for_each(int (*fn)(struct omap_hwmod *oh, void *data),
                        void *data);
-int omap_hwmod_late_init(void);
 
 int omap_hwmod_enable(struct omap_hwmod *oh);
 int _omap_hwmod_enable(struct omap_hwmod *oh);