cpufreq: exynos5440: Fix to skip when new frequency same as current
authorAmit Daniel Kachhap <amit.daniel@samsung.com>
Wed, 7 Aug 2013 11:16:11 +0000 (16:46 +0530)
committerViresh Kumar <viresh.kumar@linaro.org>
Mon, 12 Aug 2013 06:30:18 +0000 (12:00 +0530)
This patch fixes the issue of un-necessary setting the clock controller
when the new target frequency is same as the current one. This case usually
occurs with governors like ondemand which passes the target frequency as the
percentage of average frequency. This check is present in most of the cpufreq
drivers.

Cc: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/exynos5440-cpufreq.c

index 0c74018eda47e1fd2d09ef0db1baaf8595a70547..d514c152fd1a43041e8ff570fca7f9cc2b28f58d 100644 (file)
@@ -238,6 +238,9 @@ static int exynos_target(struct cpufreq_policy *policy,
        freqs.old = dvfs_info->cur_frequency;
        freqs.new = freq_table[index].frequency;
 
+       if (freqs.old == freqs.new)
+               goto out;
+
        cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE);
 
        /* Set the target frequency in all C0_3_PSTATE register */