diff options
author | Tero Kristo <t-kristo@ti.com> | 2014-03-04 10:24:21 -0500 |
---|---|---|
committer | Tero Kristo <t-kristo@ti.com> | 2014-07-04 10:02:20 -0400 |
commit | c2148e5930cdd2dd964e18fb7057c1e07f63c363 (patch) | |
tree | 0f274cd650a2e2ee33ed606757d4c0723e1fd82a | |
parent | bbd36f9f03eceee5c208db83049142171e6338f6 (diff) |
ARM: OMAP3: PRM: move modem reset and iva2 idle to PRM driver
Done in preparation to move PRM into its own driver.
Signed-off-by: Tero Kristo <t-kristo@ti.com>
-rw-r--r-- | arch/arm/mach-omap2/pm34xx.c | 15 | ||||
-rw-r--r-- | arch/arm/mach-omap2/prm3xxx.c | 7 |
2 files changed, 7 insertions, 15 deletions
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index 126f3ec2d174..9410b4a5c252 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c | |||
@@ -353,27 +353,12 @@ restore: | |||
353 | #define omap3_pm_suspend NULL | 353 | #define omap3_pm_suspend NULL |
354 | #endif /* CONFIG_SUSPEND */ | 354 | #endif /* CONFIG_SUSPEND */ |
355 | 355 | ||
356 | static void __init omap3_d2d_idle(void) | ||
357 | { | ||
358 | omap3_ctrl_setup_d2d_padconf(); | ||
359 | |||
360 | /* reset modem */ | ||
361 | omap3_prm_reset_modem(); | ||
362 | } | ||
363 | |||
364 | static void __init prcm_setup_regs(void) | 356 | static void __init prcm_setup_regs(void) |
365 | { | 357 | { |
366 | /* XXX This should be handled by hwmod code or SCM init code */ | 358 | /* XXX This should be handled by hwmod code or SCM init code */ |
367 | omap_ctrl_writel(OMAP3430_AUTOIDLE_MASK, OMAP2_CONTROL_SYSCONFIG); | 359 | omap_ctrl_writel(OMAP3430_AUTOIDLE_MASK, OMAP2_CONTROL_SYSCONFIG); |
368 | 360 | ||
369 | omap3_prm_init_pm(cpu_is_omap3630(), omap3_has_iva()); | 361 | omap3_prm_init_pm(cpu_is_omap3630(), omap3_has_iva()); |
370 | |||
371 | /* | ||
372 | * We need to idle iva2_pwrdm even on am3703 with no iva2. | ||
373 | */ | ||
374 | omap3xxx_prm_iva_idle(); | ||
375 | |||
376 | omap3_d2d_idle(); | ||
377 | } | 362 | } |
378 | 363 | ||
379 | void omap3_pm_off_mode_enable(int enable) | 364 | void omap3_pm_off_mode_enable(int enable) |
diff --git a/arch/arm/mach-omap2/prm3xxx.c b/arch/arm/mach-omap2/prm3xxx.c index 48218a450cb0..75dfe8efdfe0 100644 --- a/arch/arm/mach-omap2/prm3xxx.c +++ b/arch/arm/mach-omap2/prm3xxx.c | |||
@@ -362,6 +362,13 @@ void __init omap3_prm_init_pm(bool has_uart4, bool has_iva) | |||
362 | 362 | ||
363 | /* Clear any pending PRCM interrupts */ | 363 | /* Clear any pending PRCM interrupts */ |
364 | omap2_prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET); | 364 | omap2_prm_write_mod_reg(0, OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET); |
365 | |||
366 | /* We need to idle iva2_pwrdm even on am3703 with no iva2. */ | ||
367 | omap3xxx_prm_iva_idle(); | ||
368 | |||
369 | omap3_ctrl_setup_d2d_padconf(); | ||
370 | |||
371 | omap3_prm_reset_modem(); | ||
365 | } | 372 | } |
366 | 373 | ||
367 | /** | 374 | /** |