diff options
author | Paul Walmsley <paul@pwsan.com> | 2011-02-25 17:39:30 -0500 |
---|---|---|
committer | Paul Walmsley <paul@pwsan.com> | 2011-03-07 22:04:15 -0500 |
commit | 4ef70c0694bf428d9f1d4722edaffa1dc5fa39e1 (patch) | |
tree | 827937561b0829d62b9d21c33fbe187bf45e5edd /arch/arm/mach-omap2/pm24xx.c | |
parent | ec538e30f7eded2c4af8d9184619a3de65bc378e (diff) |
OMAP2/3: PM: remove manual CM_AUTOIDLE bit setting in mach-omap2/pm*xx.c
These CM_AUTOIDLE bits are now set by the clock code via the common PM
code in mach-omap2/pm.c.
N.B.: The pm24xx.c code that this patch removes didn't ensure that the
CM_AUTOIDLE bits were set for several 2430-only modules, such as
GPIO5, MDM_INTC, MMCHS1/2, the modem oscillator clock, and USBHS.
Similarly, the pm34xx.c code that this patch removes didn't ensure
that the CM_AUTOIDLE bits were set for USIM and the AM3517 UART4.
Those cases should now be handled.
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Kevin Hilman <khilman@ti.com>
Tested-by: Rajendra Nayak <rnayak@ti.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/pm24xx.c')
-rw-r--r-- | arch/arm/mach-omap2/pm24xx.c | 63 |
1 files changed, 4 insertions, 59 deletions
diff --git a/arch/arm/mach-omap2/pm24xx.c b/arch/arm/mach-omap2/pm24xx.c index abe08f49b2ec..96907da1910a 100644 --- a/arch/arm/mach-omap2/pm24xx.c +++ b/arch/arm/mach-omap2/pm24xx.c | |||
@@ -379,7 +379,10 @@ static void __init prcm_setup_regs(void) | |||
379 | int i, num_mem_banks; | 379 | int i, num_mem_banks; |
380 | struct powerdomain *pwrdm; | 380 | struct powerdomain *pwrdm; |
381 | 381 | ||
382 | /* Enable autoidle */ | 382 | /* |
383 | * Enable autoidle | ||
384 | * XXX This should be handled by hwmod code or PRCM init code | ||
385 | */ | ||
383 | omap2_prm_write_mod_reg(OMAP24XX_AUTOIDLE_MASK, OCP_MOD, | 386 | omap2_prm_write_mod_reg(OMAP24XX_AUTOIDLE_MASK, OCP_MOD, |
384 | OMAP2_PRCM_SYSCONFIG_OFFSET); | 387 | OMAP2_PRCM_SYSCONFIG_OFFSET); |
385 | 388 | ||
@@ -418,64 +421,6 @@ static void __init prcm_setup_regs(void) | |||
418 | clkdm_for_each(clkdms_setup, NULL); | 421 | clkdm_for_each(clkdms_setup, NULL); |
419 | clkdm_add_wkdep(mpu_clkdm, wkup_clkdm); | 422 | clkdm_add_wkdep(mpu_clkdm, wkup_clkdm); |
420 | 423 | ||
421 | /* Enable clock autoidle for all domains */ | ||
422 | omap2_cm_write_mod_reg(OMAP24XX_AUTO_CAM_MASK | | ||
423 | OMAP24XX_AUTO_MAILBOXES_MASK | | ||
424 | OMAP24XX_AUTO_WDT4_MASK | | ||
425 | OMAP2420_AUTO_WDT3_MASK | | ||
426 | OMAP24XX_AUTO_MSPRO_MASK | | ||
427 | OMAP2420_AUTO_MMC_MASK | | ||
428 | OMAP24XX_AUTO_FAC_MASK | | ||
429 | OMAP2420_AUTO_EAC_MASK | | ||
430 | OMAP24XX_AUTO_HDQ_MASK | | ||
431 | OMAP24XX_AUTO_UART2_MASK | | ||
432 | OMAP24XX_AUTO_UART1_MASK | | ||
433 | OMAP24XX_AUTO_I2C2_MASK | | ||
434 | OMAP24XX_AUTO_I2C1_MASK | | ||
435 | OMAP24XX_AUTO_MCSPI2_MASK | | ||
436 | OMAP24XX_AUTO_MCSPI1_MASK | | ||
437 | OMAP24XX_AUTO_MCBSP2_MASK | | ||
438 | OMAP24XX_AUTO_MCBSP1_MASK | | ||
439 | OMAP24XX_AUTO_GPT12_MASK | | ||
440 | OMAP24XX_AUTO_GPT11_MASK | | ||
441 | OMAP24XX_AUTO_GPT10_MASK | | ||
442 | OMAP24XX_AUTO_GPT9_MASK | | ||
443 | OMAP24XX_AUTO_GPT8_MASK | | ||
444 | OMAP24XX_AUTO_GPT7_MASK | | ||
445 | OMAP24XX_AUTO_GPT6_MASK | | ||
446 | OMAP24XX_AUTO_GPT5_MASK | | ||
447 | OMAP24XX_AUTO_GPT4_MASK | | ||
448 | OMAP24XX_AUTO_GPT3_MASK | | ||
449 | OMAP24XX_AUTO_GPT2_MASK | | ||
450 | OMAP2420_AUTO_VLYNQ_MASK | | ||
451 | OMAP24XX_AUTO_DSS_MASK, | ||
452 | CORE_MOD, CM_AUTOIDLE1); | ||
453 | omap2_cm_write_mod_reg(OMAP24XX_AUTO_UART3_MASK | | ||
454 | OMAP24XX_AUTO_SSI_MASK | | ||
455 | OMAP24XX_AUTO_USB_MASK, | ||
456 | CORE_MOD, CM_AUTOIDLE2); | ||
457 | omap2_cm_write_mod_reg(OMAP24XX_AUTO_SDRC_MASK | | ||
458 | OMAP24XX_AUTO_GPMC_MASK | | ||
459 | OMAP24XX_AUTO_SDMA_MASK, | ||
460 | CORE_MOD, CM_AUTOIDLE3); | ||
461 | omap2_cm_write_mod_reg(OMAP24XX_AUTO_PKA_MASK | | ||
462 | OMAP24XX_AUTO_AES_MASK | | ||
463 | OMAP24XX_AUTO_RNG_MASK | | ||
464 | OMAP24XX_AUTO_SHA_MASK | | ||
465 | OMAP24XX_AUTO_DES_MASK, | ||
466 | CORE_MOD, OMAP24XX_CM_AUTOIDLE4); | ||
467 | |||
468 | omap2_cm_write_mod_reg(OMAP2420_AUTO_DSP_IPI_MASK, OMAP24XX_DSP_MOD, | ||
469 | CM_AUTOIDLE); | ||
470 | |||
471 | omap2_cm_write_mod_reg(OMAP24XX_AUTO_OMAPCTRL_MASK | | ||
472 | OMAP24XX_AUTO_WDT1_MASK | | ||
473 | OMAP24XX_AUTO_MPU_WDT_MASK | | ||
474 | OMAP24XX_AUTO_GPIOS_MASK | | ||
475 | OMAP24XX_AUTO_32KSYNC_MASK | | ||
476 | OMAP24XX_AUTO_GPT1_MASK, | ||
477 | WKUP_MOD, CM_AUTOIDLE); | ||
478 | |||
479 | /* REVISIT: Configure number of 32 kHz clock cycles for sys_clk | 424 | /* REVISIT: Configure number of 32 kHz clock cycles for sys_clk |
480 | * stabilisation */ | 425 | * stabilisation */ |
481 | omap2_prm_write_mod_reg(15 << OMAP_SETUP_TIME_SHIFT, OMAP24XX_GR_MOD, | 426 | omap2_prm_write_mod_reg(15 << OMAP_SETUP_TIME_SHIFT, OMAP24XX_GR_MOD, |