diff options
author | Namhyung Kim <namhyung.kim@lge.com> | 2013-02-28 06:38:01 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-04-01 01:11:35 +0200 |
commit | ad529a9cd2306782907371830135a140e4572919 (patch) | |
tree | 43f38f483bf9638cf2249812b9401ea268cb7b4e /drivers | |
parent | cpufreq: governors: Avoid unnecessary per cpu timer interrupts (diff) | |
download | linux-ad529a9cd2306782907371830135a140e4572919.tar.xz linux-ad529a9cd2306782907371830135a140e4572919.zip |
cpufreq: conservative: Break out earlier on the lowest frequency
If we're on the lowest frequency, no need to calculate new freq.
Break out even earlier in this case.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/cpufreq/cpufreq_conservative.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/cpufreq/cpufreq_conservative.c b/drivers/cpufreq/cpufreq_conservative.c index 6fe6050a3889..302931e76842 100644 --- a/drivers/cpufreq/cpufreq_conservative.c +++ b/drivers/cpufreq/cpufreq_conservative.c @@ -87,18 +87,18 @@ static void cs_check_cpu(int cpu, unsigned int load) * safe, we focus 10 points under the threshold. */ if (load < (cs_tuners->down_threshold - 10)) { - freq_target = (cs_tuners->freq_step * policy->max) / 100; - - dbs_info->requested_freq -= freq_target; - if (dbs_info->requested_freq < policy->min) - dbs_info->requested_freq = policy->min; - /* * if we cannot reduce the frequency anymore, break out early */ if (policy->cur == policy->min) return; + freq_target = (cs_tuners->freq_step * policy->max) / 100; + + dbs_info->requested_freq -= freq_target; + if (dbs_info->requested_freq < policy->min) + dbs_info->requested_freq = policy->min; + __cpufreq_driver_target(policy, dbs_info->requested_freq, CPUFREQ_RELATION_H); return; |