diff options
Diffstat (limited to 'arch/arm/mach-omap2/omap_twl.c')
| -rw-r--r-- | arch/arm/mach-omap2/omap_twl.c | 73 | 
1 files changed, 14 insertions, 59 deletions
diff --git a/arch/arm/mach-omap2/omap_twl.c b/arch/arm/mach-omap2/omap_twl.c index 2bf35dc091b..fefd4016662 100644 --- a/arch/arm/mach-omap2/omap_twl.c +++ b/arch/arm/mach-omap2/omap_twl.c @@ -31,16 +31,6 @@  #define OMAP3_VP_VSTEPMAX_VSTEPMAX	0x04  #define OMAP3_VP_VLIMITTO_TIMEOUT_US	200 -#define OMAP3430_VP1_VLIMITTO_VDDMIN	0x14 -#define OMAP3430_VP1_VLIMITTO_VDDMAX	0x42 -#define OMAP3430_VP2_VLIMITTO_VDDMIN	0x18 -#define OMAP3430_VP2_VLIMITTO_VDDMAX	0x2c - -#define OMAP3630_VP1_VLIMITTO_VDDMIN	0x18 -#define OMAP3630_VP1_VLIMITTO_VDDMAX	0x3c -#define OMAP3630_VP2_VLIMITTO_VDDMIN	0x18 -#define OMAP3630_VP2_VLIMITTO_VDDMAX	0x30 -  #define OMAP4_SRI2C_SLAVE_ADDR		0x12  #define OMAP4_VDD_MPU_SR_VOLT_REG	0x55  #define OMAP4_VDD_MPU_SR_CMD_REG	0x56 @@ -54,13 +44,6 @@  #define OMAP4_VP_VSTEPMAX_VSTEPMAX	0x04  #define OMAP4_VP_VLIMITTO_TIMEOUT_US	200 -#define OMAP4_VP_MPU_VLIMITTO_VDDMIN	0xA -#define OMAP4_VP_MPU_VLIMITTO_VDDMAX	0x39 -#define OMAP4_VP_IVA_VLIMITTO_VDDMIN	0xA -#define OMAP4_VP_IVA_VLIMITTO_VDDMAX	0x2D -#define OMAP4_VP_CORE_VLIMITTO_VDDMIN	0xA -#define OMAP4_VP_CORE_VLIMITTO_VDDMAX	0x28 -  static bool is_offset_valid;  static u8 smps_offset;  /* @@ -159,16 +142,11 @@ static u8 twl6030_uv_to_vsel(unsigned long uv)  static struct omap_voltdm_pmic omap3_mpu_pmic = {  	.slew_rate		= 4000,  	.step_size		= 12500, -	.on_volt		= 1200000, -	.onlp_volt		= 1000000, -	.ret_volt		= 975000, -	.off_volt		= 600000, -	.volt_setup_time	= 0xfff,  	.vp_erroroffset		= OMAP3_VP_CONFIG_ERROROFFSET,  	.vp_vstepmin		= OMAP3_VP_VSTEPMIN_VSTEPMIN,  	.vp_vstepmax		= OMAP3_VP_VSTEPMAX_VSTEPMAX, -	.vp_vddmin		= OMAP3430_VP1_VLIMITTO_VDDMIN, -	.vp_vddmax		= OMAP3430_VP1_VLIMITTO_VDDMAX, +	.vddmin			= 600000, +	.vddmax			= 1450000,  	.vp_timeout_us		= OMAP3_VP_VLIMITTO_TIMEOUT_US,  	.i2c_slave_addr		= OMAP3_SRI2C_SLAVE_ADDR,  	.volt_reg_addr		= OMAP3_VDD_MPU_SR_CONTROL_REG, @@ -180,16 +158,11 @@ static struct omap_voltdm_pmic omap3_mpu_pmic = {  static struct omap_voltdm_pmic omap3_core_pmic = {  	.slew_rate		= 4000,  	.step_size		= 12500, -	.on_volt                = 1200000, -	.onlp_volt              = 1000000, -	.ret_volt               = 975000, -	.off_volt               = 600000, -	.volt_setup_time        = 0xfff,  	.vp_erroroffset		= OMAP3_VP_CONFIG_ERROROFFSET,  	.vp_vstepmin		= OMAP3_VP_VSTEPMIN_VSTEPMIN,  	.vp_vstepmax		= OMAP3_VP_VSTEPMAX_VSTEPMAX, -	.vp_vddmin		= OMAP3430_VP2_VLIMITTO_VDDMIN, -	.vp_vddmax		= OMAP3430_VP2_VLIMITTO_VDDMAX, +	.vddmin			= 600000, +	.vddmax			= 1450000,  	.vp_timeout_us		= OMAP3_VP_VLIMITTO_TIMEOUT_US,  	.i2c_slave_addr		= OMAP3_SRI2C_SLAVE_ADDR,  	.volt_reg_addr		= OMAP3_VDD_CORE_SR_CONTROL_REG, @@ -201,21 +174,17 @@ static struct omap_voltdm_pmic omap3_core_pmic = {  static struct omap_voltdm_pmic omap4_mpu_pmic = {  	.slew_rate		= 4000,  	.step_size		= 12660, -	.on_volt		= 1375000, -	.onlp_volt		= 1375000, -	.ret_volt		= 830000, -	.off_volt		= 0, -	.volt_setup_time	= 0,  	.vp_erroroffset		= OMAP4_VP_CONFIG_ERROROFFSET,  	.vp_vstepmin		= OMAP4_VP_VSTEPMIN_VSTEPMIN,  	.vp_vstepmax		= OMAP4_VP_VSTEPMAX_VSTEPMAX, -	.vp_vddmin		= OMAP4_VP_MPU_VLIMITTO_VDDMIN, -	.vp_vddmax		= OMAP4_VP_MPU_VLIMITTO_VDDMAX, +	.vddmin			= 0, +	.vddmax			= 2100000,  	.vp_timeout_us		= OMAP4_VP_VLIMITTO_TIMEOUT_US,  	.i2c_slave_addr		= OMAP4_SRI2C_SLAVE_ADDR,  	.volt_reg_addr		= OMAP4_VDD_MPU_SR_VOLT_REG,  	.cmd_reg_addr		= OMAP4_VDD_MPU_SR_CMD_REG,  	.i2c_high_speed		= true, +	.i2c_pad_load		= 3,  	.vsel_to_uv		= twl6030_vsel_to_uv,  	.uv_to_vsel		= twl6030_uv_to_vsel,  }; @@ -223,21 +192,17 @@ static struct omap_voltdm_pmic omap4_mpu_pmic = {  static struct omap_voltdm_pmic omap4_iva_pmic = {  	.slew_rate		= 4000,  	.step_size		= 12660, -	.on_volt		= 1188000, -	.onlp_volt		= 1188000, -	.ret_volt		= 830000, -	.off_volt		= 0, -	.volt_setup_time	= 0,  	.vp_erroroffset		= OMAP4_VP_CONFIG_ERROROFFSET,  	.vp_vstepmin		= OMAP4_VP_VSTEPMIN_VSTEPMIN,  	.vp_vstepmax		= OMAP4_VP_VSTEPMAX_VSTEPMAX, -	.vp_vddmin		= OMAP4_VP_IVA_VLIMITTO_VDDMIN, -	.vp_vddmax		= OMAP4_VP_IVA_VLIMITTO_VDDMAX, +	.vddmin			= 0, +	.vddmax			= 2100000,  	.vp_timeout_us		= OMAP4_VP_VLIMITTO_TIMEOUT_US,  	.i2c_slave_addr		= OMAP4_SRI2C_SLAVE_ADDR,  	.volt_reg_addr		= OMAP4_VDD_IVA_SR_VOLT_REG,  	.cmd_reg_addr		= OMAP4_VDD_IVA_SR_CMD_REG,  	.i2c_high_speed		= true, +	.i2c_pad_load		= 3,  	.vsel_to_uv		= twl6030_vsel_to_uv,  	.uv_to_vsel		= twl6030_uv_to_vsel,  }; @@ -245,20 +210,17 @@ static struct omap_voltdm_pmic omap4_iva_pmic = {  static struct omap_voltdm_pmic omap4_core_pmic = {  	.slew_rate		= 4000,  	.step_size		= 12660, -	.on_volt		= 1200000, -	.onlp_volt		= 1200000, -	.ret_volt		= 830000, -	.off_volt		= 0, -	.volt_setup_time	= 0,  	.vp_erroroffset		= OMAP4_VP_CONFIG_ERROROFFSET,  	.vp_vstepmin		= OMAP4_VP_VSTEPMIN_VSTEPMIN,  	.vp_vstepmax		= OMAP4_VP_VSTEPMAX_VSTEPMAX, -	.vp_vddmin		= OMAP4_VP_CORE_VLIMITTO_VDDMIN, -	.vp_vddmax		= OMAP4_VP_CORE_VLIMITTO_VDDMAX, +	.vddmin			= 0, +	.vddmax			= 2100000,  	.vp_timeout_us		= OMAP4_VP_VLIMITTO_TIMEOUT_US,  	.i2c_slave_addr		= OMAP4_SRI2C_SLAVE_ADDR,  	.volt_reg_addr		= OMAP4_VDD_CORE_SR_VOLT_REG,  	.cmd_reg_addr		= OMAP4_VDD_CORE_SR_CMD_REG, +	.i2c_high_speed		= true, +	.i2c_pad_load		= 3,  	.vsel_to_uv		= twl6030_vsel_to_uv,  	.uv_to_vsel		= twl6030_uv_to_vsel,  }; @@ -289,13 +251,6 @@ int __init omap3_twl_init(void)  	if (!cpu_is_omap34xx())  		return -ENODEV; -	if (cpu_is_omap3630()) { -		omap3_mpu_pmic.vp_vddmin = OMAP3630_VP1_VLIMITTO_VDDMIN; -		omap3_mpu_pmic.vp_vddmax = OMAP3630_VP1_VLIMITTO_VDDMAX; -		omap3_core_pmic.vp_vddmin = OMAP3630_VP2_VLIMITTO_VDDMIN; -		omap3_core_pmic.vp_vddmax = OMAP3630_VP2_VLIMITTO_VDDMAX; -	} -  	/*  	 * The smartreflex bit on twl4030 specifies if the setting of voltage  	 * is done over the I2C_SR path. Since this setting is independent of  |