We have common infrastructure available with us for getting a CPUs clk rate.
Lets use it for this driver.

We don't have to find closest frequency in platform specific ->get() routine
wihch dbx500 driver was doing and hence it can be removed as well.

Acked-by: Linus Walleij <linus.wall...@linaro.org>
Signed-off-by: Viresh Kumar <viresh.ku...@linaro.org>
---
 drivers/cpufreq/dbx500-cpufreq.c | 19 ++-----------------
 1 file changed, 2 insertions(+), 17 deletions(-)

diff --git a/drivers/cpufreq/dbx500-cpufreq.c b/drivers/cpufreq/dbx500-cpufreq.c
index 0e67ab9..d83129d 100644
--- a/drivers/cpufreq/dbx500-cpufreq.c
+++ b/drivers/cpufreq/dbx500-cpufreq.c
@@ -26,24 +26,9 @@ static int dbx500_cpufreq_target(struct cpufreq_policy 
*policy,
        return clk_set_rate(armss_clk, freq_table[index].frequency * 1000);
 }
 
-static unsigned int dbx500_cpufreq_getspeed(unsigned int cpu)
-{
-       int i = 0;
-       unsigned long freq = clk_get_rate(armss_clk) / 1000;
-
-       /* The value is rounded to closest frequency in the defined table. */
-       while (freq_table[i + 1].frequency != CPUFREQ_TABLE_END) {
-               if (freq < freq_table[i].frequency +
-                  (freq_table[i + 1].frequency - freq_table[i].frequency) / 2)
-                       return freq_table[i].frequency;
-               i++;
-       }
-
-       return freq_table[i].frequency;
-}
-
 static int dbx500_cpufreq_init(struct cpufreq_policy *policy)
 {
+       policy->clk = armss_clk;
        return cpufreq_generic_init(policy, freq_table, 20 * 1000);
 }
 
@@ -51,7 +36,7 @@ static struct cpufreq_driver dbx500_cpufreq_driver = {
        .flags  = CPUFREQ_STICKY | CPUFREQ_CONST_LOOPS,
        .verify = cpufreq_generic_frequency_table_verify,
        .target_index = dbx500_cpufreq_target,
-       .get    = dbx500_cpufreq_getspeed,
+       .get    = cpufreq_generic_get,
        .init   = dbx500_cpufreq_init,
        .name   = "DBX500",
        .attr   = cpufreq_generic_attr,
-- 
1.7.12.rc2.18.g61b472e

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to