aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDave Jones <davej@redhat.com>2005-05-31 22:03:48 -0400
committerDave Jones <davej@redhat.com>2005-05-31 22:03:48 -0400
commitc11420a616039e2181e4ecbffb4d125d39e6877d (patch)
tree413a30af85846567ea326d42e38ba40153b73bce /drivers
parent3d5ee9e55d13de28d2fa58d6e13f2e4d3a5f8b1a (diff)
[CPUFREQ] Prevents un-necessary cpufreq changes if we are already at min/max
Signed-off-by: Alexander Clouter <alex-kernel@digriz.org.uk> Signed-off-by: Dave Jones <davej@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/cpufreq/cpufreq_ondemand.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
index 7d7244314ac9..6dc83808e590 100644
--- a/drivers/cpufreq/cpufreq_ondemand.c
+++ b/drivers/cpufreq/cpufreq_ondemand.c
@@ -333,6 +333,10 @@ static void dbs_check_cpu(int cpu)
333 usecs_to_jiffies(dbs_tuners_ins.sampling_rate); 333 usecs_to_jiffies(dbs_tuners_ins.sampling_rate);
334 334
335 if (idle_ticks < up_idle_ticks) { 335 if (idle_ticks < up_idle_ticks) {
336 /* if we are already at full speed then break out early */
337 if (policy->cur == policy->max)
338 return;
339
336 __cpufreq_driver_target(policy, policy->max, 340 __cpufreq_driver_target(policy, policy->max,
337 CPUFREQ_RELATION_H); 341 CPUFREQ_RELATION_H);
338 down_skip[cpu] = 0; 342 down_skip[cpu] = 0;
@@ -386,6 +390,10 @@ static void dbs_check_cpu(int cpu)
386 usecs_to_jiffies(freq_down_sampling_rate); 390 usecs_to_jiffies(freq_down_sampling_rate);
387 391
388 if (idle_ticks > down_idle_ticks ) { 392 if (idle_ticks > down_idle_ticks ) {
393 /* if we are already at the lowest speed then break out early */
394 if (policy->cur == policy->min)
395 return;
396
389 freq_down_step = (5 * policy->max) / 100; 397 freq_down_step = (5 * policy->max) / 100;
390 398
391 /* max freq cannot be less than 100. But who knows.... */ 399 /* max freq cannot be less than 100. But who knows.... */