diff options
author | Robin Gong <b38343@freescale.com> | 2012-08-14 15:27:27 +0800 |
---|---|---|
committer | Robin Gong <b38343@freescale.com> | 2012-08-14 15:35:44 +0800 |
commit | 71833bc03b14fed17dd37549d6776f5b04f49242 (patch) | |
tree | 1a6ba1ad3e302c55715a196d2283371882ba343c | |
parent | 88a4498cc9eec58abf4687190a79068d0a0b8fd6 (diff) |
ENGR00220340 mx6sl pfuze: keep NVCC_1V8 and NVCC_1.2V always on
1. Keep the corresponding rail of pfuze:VGEN4 and VGEN1 "always on".
2. mx6sl enable LDO bypass default, which can't including adjust soc
and pu regulator. To support old LDO bypass code, need check soc_regulator
and pu_regulator, otherwise, system will crash.
Signed-off-by: Robin Gong <b38343@freescale.com>
-rw-r--r-- | arch/arm/mach-mx6/mx6sl_arm2_pmic_pfuze100.c | 6 | ||||
-rwxr-xr-x | arch/arm/plat-mxc/cpufreq.c | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/arch/arm/mach-mx6/mx6sl_arm2_pmic_pfuze100.c b/arch/arm/mach-mx6/mx6sl_arm2_pmic_pfuze100.c index 0c3f1b20d361..eaa9721dc7d3 100644 --- a/arch/arm/mach-mx6/mx6sl_arm2_pmic_pfuze100.c +++ b/arch/arm/mach-mx6/mx6sl_arm2_pmic_pfuze100.c @@ -298,8 +298,8 @@ static struct regulator_init_data vgen1_init = { .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE | REGULATOR_CHANGE_STATUS, .valid_modes_mask = 0, - .always_on = 0, - .boot_on = 0, + .always_on = 1, + .boot_on = 1, }, .num_consumer_supplies = ARRAY_SIZE(vgen1_consumers), .consumer_supplies = vgen1_consumers, @@ -345,6 +345,8 @@ static struct regulator_init_data vgen4_init = { .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE | REGULATOR_CHANGE_STATUS, .valid_modes_mask = 0, + .always_on = 1, + .boot_on = 1, }, .num_consumer_supplies = ARRAY_SIZE(vgen4_consumers), .consumer_supplies = vgen4_consumers, diff --git a/arch/arm/plat-mxc/cpufreq.c b/arch/arm/plat-mxc/cpufreq.c index fd285cfce0bc..52112ef59939 100755 --- a/arch/arm/plat-mxc/cpufreq.c +++ b/arch/arm/plat-mxc/cpufreq.c @@ -99,7 +99,7 @@ int set_cpu_freq(int freq) if (low_bus_freq_mode || audio_bus_freq_mode) set_high_bus_freq(0); mutex_unlock(&bus_freq_mutex); - if (freq == cpu_op_tbl[0].cpu_rate && soc_regulator && pu_regulator) { + if (freq == cpu_op_tbl[0].cpu_rate && !IS_ERR(soc_regulator) && !IS_ERR(pu_regulator)) { ret = regulator_set_voltage(soc_regulator, soc_volt, soc_volt); if (ret < 0) { @@ -135,7 +135,7 @@ int set_cpu_freq(int freq) printk(KERN_DEBUG "COULD NOT SET GP VOLTAGE!!!!\n"); return ret; } - if (soc_regulator_set && soc_regulator && pu_regulator) { + if (soc_regulator_set && !IS_ERR(soc_regulator) && !IS_ERR(pu_regulator)) { ret = regulator_set_voltage(soc_regulator, soc_volt, soc_volt); if (ret < 0) { |