aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/pm24xx.c
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2012-04-26 04:06:50 -0400
committerShawn Guo <shawn.guo@linaro.org>2012-05-08 08:36:20 -0400
commitbbd707acee279a61177a604822db92e8164d00db (patch)
treefe806947f2082f469a7e39683d6e275d694ec666 /arch/arm/mach-omap2/pm24xx.c
parent82c3bd03535f1571426fdd19b7d832f76b7ac85e (diff)
ARM: omap2: use machine specific hook for late init
Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Acked-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/pm24xx.c')
-rw-r--r--arch/arm/mach-omap2/pm24xx.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/arch/arm/mach-omap2/pm24xx.c b/arch/arm/mach-omap2/pm24xx.c
index 95442b69ae27..b2758b83a0a6 100644
--- a/arch/arm/mach-omap2/pm24xx.c
+++ b/arch/arm/mach-omap2/pm24xx.c
@@ -301,13 +301,10 @@ static void __init prcm_setup_regs(void)
301 WKUP_MOD, PM_WKEN); 301 WKUP_MOD, PM_WKEN);
302} 302}
303 303
304static int __init omap2_pm_init(void) 304int __init omap2_pm_init(void)
305{ 305{
306 u32 l; 306 u32 l;
307 307
308 if (!cpu_is_omap24xx())
309 return -ENODEV;
310
311 printk(KERN_INFO "Power Management for OMAP2 initializing\n"); 308 printk(KERN_INFO "Power Management for OMAP2 initializing\n");
312 l = omap2_prm_read_mod_reg(OCP_MOD, OMAP2_PRCM_REVISION_OFFSET); 309 l = omap2_prm_read_mod_reg(OCP_MOD, OMAP2_PRCM_REVISION_OFFSET);
313 printk(KERN_INFO "PRCM revision %d.%d\n", (l >> 4) & 0x0f, l & 0x0f); 310 printk(KERN_INFO "PRCM revision %d.%d\n", (l >> 4) & 0x0f, l & 0x0f);
@@ -373,17 +370,13 @@ static int __init omap2_pm_init(void)
373 * These routines need to be in SRAM as that's the only 370 * These routines need to be in SRAM as that's the only
374 * memory the MPU can see when it wakes up. 371 * memory the MPU can see when it wakes up.
375 */ 372 */
376 if (cpu_is_omap24xx()) { 373 omap2_sram_idle = omap_sram_push(omap24xx_idle_loop_suspend,
377 omap2_sram_idle = omap_sram_push(omap24xx_idle_loop_suspend, 374 omap24xx_idle_loop_suspend_sz);
378 omap24xx_idle_loop_suspend_sz);
379 375
380 omap2_sram_suspend = omap_sram_push(omap24xx_cpu_suspend, 376 omap2_sram_suspend = omap_sram_push(omap24xx_cpu_suspend,
381 omap24xx_cpu_suspend_sz); 377 omap24xx_cpu_suspend_sz);
382 }
383 378
384 arm_pm_idle = omap2_pm_idle; 379 arm_pm_idle = omap2_pm_idle;
385 380
386 return 0; 381 return 0;
387} 382}
388
389late_initcall(omap2_pm_init);