diff options
| -rw-r--r-- | arch/arm/mach-omap2/pm24xx.c | 63 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/pm34xx.c | 105 | 
2 files changed, 5 insertions, 163 deletions
diff --git a/arch/arm/mach-omap2/pm24xx.c b/arch/arm/mach-omap2/pm24xx.c index abe08f49b2e..96907da1910 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)  	int i, num_mem_banks;  	struct powerdomain *pwrdm; -	/* Enable autoidle */ +	/* +	 * Enable autoidle +	 * XXX This should be handled by hwmod code or PRCM init code +	 */  	omap2_prm_write_mod_reg(OMAP24XX_AUTOIDLE_MASK, OCP_MOD,  			  OMAP2_PRCM_SYSCONFIG_OFFSET); @@ -418,64 +421,6 @@ static void __init prcm_setup_regs(void)  	clkdm_for_each(clkdms_setup, NULL);  	clkdm_add_wkdep(mpu_clkdm, wkup_clkdm); -	/* Enable clock autoidle for all domains */ -	omap2_cm_write_mod_reg(OMAP24XX_AUTO_CAM_MASK | -			       OMAP24XX_AUTO_MAILBOXES_MASK | -			       OMAP24XX_AUTO_WDT4_MASK | -			       OMAP2420_AUTO_WDT3_MASK | -			       OMAP24XX_AUTO_MSPRO_MASK | -			       OMAP2420_AUTO_MMC_MASK | -			       OMAP24XX_AUTO_FAC_MASK | -			       OMAP2420_AUTO_EAC_MASK | -			       OMAP24XX_AUTO_HDQ_MASK | -			       OMAP24XX_AUTO_UART2_MASK | -			       OMAP24XX_AUTO_UART1_MASK | -			       OMAP24XX_AUTO_I2C2_MASK | -			       OMAP24XX_AUTO_I2C1_MASK | -			       OMAP24XX_AUTO_MCSPI2_MASK | -			       OMAP24XX_AUTO_MCSPI1_MASK | -			       OMAP24XX_AUTO_MCBSP2_MASK | -			       OMAP24XX_AUTO_MCBSP1_MASK | -			       OMAP24XX_AUTO_GPT12_MASK | -			       OMAP24XX_AUTO_GPT11_MASK | -			       OMAP24XX_AUTO_GPT10_MASK | -			       OMAP24XX_AUTO_GPT9_MASK | -			       OMAP24XX_AUTO_GPT8_MASK | -			       OMAP24XX_AUTO_GPT7_MASK | -			       OMAP24XX_AUTO_GPT6_MASK | -			       OMAP24XX_AUTO_GPT5_MASK | -			       OMAP24XX_AUTO_GPT4_MASK | -			       OMAP24XX_AUTO_GPT3_MASK | -			       OMAP24XX_AUTO_GPT2_MASK | -			       OMAP2420_AUTO_VLYNQ_MASK | -			       OMAP24XX_AUTO_DSS_MASK, -			       CORE_MOD, CM_AUTOIDLE1); -	omap2_cm_write_mod_reg(OMAP24XX_AUTO_UART3_MASK | -			       OMAP24XX_AUTO_SSI_MASK | -			       OMAP24XX_AUTO_USB_MASK, -			       CORE_MOD, CM_AUTOIDLE2); -	omap2_cm_write_mod_reg(OMAP24XX_AUTO_SDRC_MASK | -			       OMAP24XX_AUTO_GPMC_MASK | -			       OMAP24XX_AUTO_SDMA_MASK, -			       CORE_MOD, CM_AUTOIDLE3); -	omap2_cm_write_mod_reg(OMAP24XX_AUTO_PKA_MASK | -			       OMAP24XX_AUTO_AES_MASK | -			       OMAP24XX_AUTO_RNG_MASK | -			       OMAP24XX_AUTO_SHA_MASK | -			       OMAP24XX_AUTO_DES_MASK, -			       CORE_MOD, OMAP24XX_CM_AUTOIDLE4); - -	omap2_cm_write_mod_reg(OMAP2420_AUTO_DSP_IPI_MASK, OMAP24XX_DSP_MOD, -			       CM_AUTOIDLE); - -	omap2_cm_write_mod_reg(OMAP24XX_AUTO_OMAPCTRL_MASK | -			       OMAP24XX_AUTO_WDT1_MASK | -			       OMAP24XX_AUTO_MPU_WDT_MASK | -			       OMAP24XX_AUTO_GPIOS_MASK | -			       OMAP24XX_AUTO_32KSYNC_MASK | -			       OMAP24XX_AUTO_GPT1_MASK, -			       WKUP_MOD, CM_AUTOIDLE); -  	/* REVISIT: Configure number of 32 kHz clock cycles for sys_clk  	 * stabilisation */  	omap2_prm_write_mod_reg(15 << OMAP_SETUP_TIME_SHIFT, OMAP24XX_GR_MOD, diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index a99f296bdbf..3d6a00e07a5 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@ -688,14 +688,11 @@ static void __init omap3_d2d_idle(void)  static void __init prcm_setup_regs(void)  { -	u32 omap3630_auto_uart4_mask = cpu_is_omap3630() ? -					OMAP3630_AUTO_UART4_MASK : 0;  	u32 omap3630_en_uart4_mask = cpu_is_omap3630() ?  					OMAP3630_EN_UART4_MASK : 0;  	u32 omap3630_grpsel_uart4_mask = cpu_is_omap3630() ?  					OMAP3630_GRPSEL_UART4_MASK : 0; -  	/* XXX Reset all wkdeps. This should be done when initializing  	 * powerdomains */  	omap2_prm_write_mod_reg(0, OMAP3430_IVA2_MOD, PM_WKDEP); @@ -710,107 +707,7 @@ static void __init prcm_setup_regs(void)  	} else  		omap2_prm_write_mod_reg(0, GFX_MOD, PM_WKDEP); -	/* -	 * Enable interface clock autoidle for all modules. -	 * Note that in the long run this should be done by clockfw -	 */ -	omap2_cm_write_mod_reg( -		OMAP3430_AUTO_MODEM_MASK | -		OMAP3430ES2_AUTO_MMC3_MASK | -		OMAP3430ES2_AUTO_ICR_MASK | -		OMAP3430_AUTO_AES2_MASK | -		OMAP3430_AUTO_SHA12_MASK | -		OMAP3430_AUTO_DES2_MASK | -		OMAP3430_AUTO_MMC2_MASK | -		OMAP3430_AUTO_MMC1_MASK | -		OMAP3430_AUTO_MSPRO_MASK | -		OMAP3430_AUTO_HDQ_MASK | -		OMAP3430_AUTO_MCSPI4_MASK | -		OMAP3430_AUTO_MCSPI3_MASK | -		OMAP3430_AUTO_MCSPI2_MASK | -		OMAP3430_AUTO_MCSPI1_MASK | -		OMAP3430_AUTO_I2C3_MASK | -		OMAP3430_AUTO_I2C2_MASK | -		OMAP3430_AUTO_I2C1_MASK | -		OMAP3430_AUTO_UART2_MASK | -		OMAP3430_AUTO_UART1_MASK | -		OMAP3430_AUTO_GPT11_MASK | -		OMAP3430_AUTO_GPT10_MASK | -		OMAP3430_AUTO_MCBSP5_MASK | -		OMAP3430_AUTO_MCBSP1_MASK | -		OMAP3430ES1_AUTO_FAC_MASK | /* This is es1 only */ -		OMAP3430_AUTO_MAILBOXES_MASK | -		OMAP3430_AUTO_OMAPCTRL_MASK | -		OMAP3430ES1_AUTO_FSHOSTUSB_MASK | -		OMAP3430_AUTO_HSOTGUSB_MASK | -		OMAP3430_AUTO_SAD2D_MASK | -		OMAP3430_AUTO_SSI_MASK, -		CORE_MOD, CM_AUTOIDLE1); - -	omap2_cm_write_mod_reg( -		OMAP3430_AUTO_PKA_MASK | -		OMAP3430_AUTO_AES1_MASK | -		OMAP3430_AUTO_RNG_MASK | -		OMAP3430_AUTO_SHA11_MASK | -		OMAP3430_AUTO_DES1_MASK, -		CORE_MOD, CM_AUTOIDLE2); - -	if (omap_rev() > OMAP3430_REV_ES1_0) { -		omap2_cm_write_mod_reg( -			OMAP3430_AUTO_MAD2D_MASK | -			OMAP3430ES2_AUTO_USBTLL_MASK, -			CORE_MOD, CM_AUTOIDLE3); -	} - -	omap2_cm_write_mod_reg( -		OMAP3430_AUTO_WDT2_MASK | -		OMAP3430_AUTO_WDT1_MASK | -		OMAP3430_AUTO_GPIO1_MASK | -		OMAP3430_AUTO_32KSYNC_MASK | -		OMAP3430_AUTO_GPT12_MASK | -		OMAP3430_AUTO_GPT1_MASK, -		WKUP_MOD, CM_AUTOIDLE); - -	omap2_cm_write_mod_reg( -		OMAP3430_AUTO_DSS_MASK, -		OMAP3430_DSS_MOD, -		CM_AUTOIDLE); - -	omap2_cm_write_mod_reg( -		OMAP3430_AUTO_CAM_MASK, -		OMAP3430_CAM_MOD, -		CM_AUTOIDLE); - -	omap2_cm_write_mod_reg( -		omap3630_auto_uart4_mask | -		OMAP3430_AUTO_GPIO6_MASK | -		OMAP3430_AUTO_GPIO5_MASK | -		OMAP3430_AUTO_GPIO4_MASK | -		OMAP3430_AUTO_GPIO3_MASK | -		OMAP3430_AUTO_GPIO2_MASK | -		OMAP3430_AUTO_WDT3_MASK | -		OMAP3430_AUTO_UART3_MASK | -		OMAP3430_AUTO_GPT9_MASK | -		OMAP3430_AUTO_GPT8_MASK | -		OMAP3430_AUTO_GPT7_MASK | -		OMAP3430_AUTO_GPT6_MASK | -		OMAP3430_AUTO_GPT5_MASK | -		OMAP3430_AUTO_GPT4_MASK | -		OMAP3430_AUTO_GPT3_MASK | -		OMAP3430_AUTO_GPT2_MASK | -		OMAP3430_AUTO_MCBSP4_MASK | -		OMAP3430_AUTO_MCBSP3_MASK | -		OMAP3430_AUTO_MCBSP2_MASK, -		OMAP3430_PER_MOD, -		CM_AUTOIDLE); - -	if (omap_rev() > OMAP3430_REV_ES1_0) { -		omap2_cm_write_mod_reg( -			OMAP3430ES2_AUTO_USBHOST_MASK, -			OMAP3430ES2_USBHOST_MOD, -			CM_AUTOIDLE); -	} - +	/* XXX This should be handled by hwmod code or SCM init code */  	omap_ctrl_writel(OMAP3430_AUTOIDLE_MASK, OMAP2_CONTROL_SYSCONFIG);  	/*  |