aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/pm34xx.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/pm34xx.c')
-rw-r--r--arch/arm/mach-omap2/pm34xx.c25
1 files changed, 2 insertions, 23 deletions
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index 2f864e4b085d..1883a464aace 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -311,11 +311,6 @@ static irqreturn_t prcm_interrupt_handler (int irq, void *dev_id)
311 return IRQ_HANDLED; 311 return IRQ_HANDLED;
312} 312}
313 313
314static void restore_control_register(u32 val)
315{
316 __asm__ __volatile__ ("mcr p15, 0, %0, c1, c0, 0" : : "r" (val));
317}
318
319/* Function to restore the table entry that was modified for enabling MMU */ 314/* Function to restore the table entry that was modified for enabling MMU */
320static void restore_table_entry(void) 315static void restore_table_entry(void)
321{ 316{
@@ -337,7 +332,7 @@ static void restore_table_entry(void)
337 control_reg_value = __raw_readl(scratchpad_address 332 control_reg_value = __raw_readl(scratchpad_address
338 + OMAP343X_CONTROL_REG_VALUE_OFFSET); 333 + OMAP343X_CONTROL_REG_VALUE_OFFSET);
339 /* This will enable caches and prediction */ 334 /* This will enable caches and prediction */
340 restore_control_register(control_reg_value); 335 set_cr(control_reg_value);
341} 336}
342 337
343void omap_sram_idle(void) 338void omap_sram_idle(void)
@@ -695,21 +690,6 @@ static void __init prcm_setup_regs(void)
695 u32 omap3630_grpsel_uart4_mask = cpu_is_omap3630() ? 690 u32 omap3630_grpsel_uart4_mask = cpu_is_omap3630() ?
696 OMAP3630_GRPSEL_UART4_MASK : 0; 691 OMAP3630_GRPSEL_UART4_MASK : 0;
697 692
698
699 /* XXX Reset all wkdeps. This should be done when initializing
700 * powerdomains */
701 omap2_prm_write_mod_reg(0, OMAP3430_IVA2_MOD, PM_WKDEP);
702 omap2_prm_write_mod_reg(0, MPU_MOD, PM_WKDEP);
703 omap2_prm_write_mod_reg(0, OMAP3430_DSS_MOD, PM_WKDEP);
704 omap2_prm_write_mod_reg(0, OMAP3430_NEON_MOD, PM_WKDEP);
705 omap2_prm_write_mod_reg(0, OMAP3430_CAM_MOD, PM_WKDEP);
706 omap2_prm_write_mod_reg(0, OMAP3430_PER_MOD, PM_WKDEP);
707 if (omap_rev() > OMAP3430_REV_ES1_0) {
708 omap2_prm_write_mod_reg(0, OMAP3430ES2_SGX_MOD, PM_WKDEP);
709 omap2_prm_write_mod_reg(0, OMAP3430ES2_USBHOST_MOD, PM_WKDEP);
710 } else
711 omap2_prm_write_mod_reg(0, GFX_MOD, PM_WKDEP);
712
713 /* 693 /*
714 * Enable interface clock autoidle for all modules. 694 * Enable interface clock autoidle for all modules.
715 * Note that in the long run this should be done by clockfw 695 * Note that in the long run this should be done by clockfw
@@ -928,8 +908,7 @@ void omap3_pm_off_mode_enable(int enable)
928 pwrst->pwrdm == core_pwrdm && 908 pwrst->pwrdm == core_pwrdm &&
929 state == PWRDM_POWER_OFF) { 909 state == PWRDM_POWER_OFF) {
930 pwrst->next_state = PWRDM_POWER_RET; 910 pwrst->next_state = PWRDM_POWER_RET;
931 WARN_ONCE(1, 911 pr_warn("%s: Core OFF disabled due to errata i583\n",
932 "%s: Core OFF disabled due to errata i583\n",
933 __func__); 912 __func__);
934 } else { 913 } else {
935 pwrst->next_state = state; 914 pwrst->next_state = state;