diff options
author | Paul Walmsley <pwalmsley@nvidia.com> | 2013-11-25 18:04:34 -0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-12-06 23:19:19 +0100 |
commit | 189c9b8d925691cc58823ffdc3bf75dc8630ccdf (patch) | |
tree | 91545c503f2a3e44ce04ca83db745964c8b1ed0d /drivers/cpufreq | |
parent | 2209b0c964c7c402b07d0df6fcfbecf8ff53db30 (diff) | |
download | talos-obmc-linux-189c9b8d925691cc58823ffdc3bf75dc8630ccdf.tar.gz talos-obmc-linux-189c9b8d925691cc58823ffdc3bf75dc8630ccdf.zip |
cpufreq: SPEAr: clk_round_rate() can return a zero upon error
Treat both negative and zero return values from clk_round_rate()
as errors. This is needed since subsequent patches will convert
clk_round_rate()'s return value to be an unsigned type, rather
than a signed type, since some clock sources can generate rates
higher than (2^31)-1 Hz.
Eventually, when calling clk_round_rate(), only a return value of
zero will be considered a error. All other values will be
considered valid rates. The comparison against values less than
0 is kept to preserve the correct behavior in the meantime.
Signed-off-by: Paul Walmsley <pwalmsley@nvidia.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpufreq')
-rw-r--r-- | drivers/cpufreq/spear-cpufreq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/cpufreq/spear-cpufreq.c b/drivers/cpufreq/spear-cpufreq.c index d02ccd19c9c4..45ea4c094542 100644 --- a/drivers/cpufreq/spear-cpufreq.c +++ b/drivers/cpufreq/spear-cpufreq.c @@ -138,7 +138,7 @@ static int spear_cpufreq_target(struct cpufreq_policy *policy, } newfreq = clk_round_rate(srcclk, newfreq * mult); - if (newfreq < 0) { + if (newfreq <= 0) { pr_err("clk_round_rate failed for cpu src clock\n"); return newfreq; } |