aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpufreq
diff options
context:
space:
mode:
authorTodd Poynor <toddpoynor@google.com>2011-06-24 03:04:17 -0400
committerDave Jones <davej@redhat.com>2011-07-13 18:29:58 -0400
commit74df8e69e901e624fe0b439f914aa7be66201154 (patch)
tree5fd252e9207c3bc9483f9bf85679919c2ecfc892 /drivers/cpufreq
parent5b02b7794b555e299c5e9298c6b223b538888ec8 (diff)
[CPUFREQ] S5PV210: Adjust udelay prior to voltage scaling down
Voltage scaling accesses the MAX8998 regulators over bit-banged I2C with lots of udelays. In the case of decreasing CPU speed, the number of loops per us for udelay needs to be adjusted prior to decreasing voltage to avoid delaying for up to 10X too long. Signed-off-by: Todd Poynor <toddpoynor@google.com> Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Dave Jones <davej@redhat.com>
Diffstat (limited to 'drivers/cpufreq')
-rw-r--r--drivers/cpufreq/s5pv210-cpufreq.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/cpufreq/s5pv210-cpufreq.c b/drivers/cpufreq/s5pv210-cpufreq.c
index 7fba356d2729..155242cfc714 100644
--- a/drivers/cpufreq/s5pv210-cpufreq.c
+++ b/drivers/cpufreq/s5pv210-cpufreq.c
@@ -467,6 +467,8 @@ static int s5pv210_target(struct cpufreq_policy *policy,
467 } 467 }
468 } 468 }
469 469
470 cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);
471
470 if (freqs.new < freqs.old) { 472 if (freqs.new < freqs.old) {
471 regulator_set_voltage(int_regulator, 473 regulator_set_voltage(int_regulator,
472 int_volt, int_volt_max); 474 int_volt, int_volt_max);
@@ -475,8 +477,6 @@ static int s5pv210_target(struct cpufreq_policy *policy,
475 arm_volt, arm_volt_max); 477 arm_volt, arm_volt_max);
476 } 478 }
477 479
478 cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);
479
480 printk(KERN_DEBUG "Perf changed[L%d]\n", index); 480 printk(KERN_DEBUG "Perf changed[L%d]\n", index);
481 481
482exit: 482exit: