RE: [PATCH 19/44] cpufreq: exynos: Use generic cpufreq routines

From: Kukjin Kim
Date: Sun Aug 18 2013 - 18:00:53 EST


amit daniel kachhap wrote:
>
> On Sat, Aug 10, 2013 at 12:14 PM, Viresh Kumar <viresh.kumar@xxxxxxxxxx>
> wrote:
> > Most of the CPUFreq drivers do similar things in .exit() and .verify()
> routines
> > and .attr. So its better if we have generic routines for them which can
> be used
> > by cpufreq drivers then.
> >
> > This patch uses these generic routines for this driver.
> >
> > Cc: Kukjin Kim <kgene.kim@xxxxxxxxxxx>

Looks good.

Acked-by: Kukjin Kim <kgene.kim@xxxxxxxxxxx>

Thanks,
Kukjin

> > Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
> The consolidation code looks fine,
> Acked-By: Amit Daniel Kachhap <amit.daniel@xxxxxxxxxxx>
>
> Thanks,
> Amit Daniel
> > ---
> > drivers/cpufreq/exynos-cpufreq.c | 23 +++--------------------
> > drivers/cpufreq/exynos5440-cpufreq.c | 15 ++-------------
> > 2 files changed, 5 insertions(+), 33 deletions(-)
> >
> > diff --git a/drivers/cpufreq/exynos-cpufreq.c b/drivers/cpufreq/exynos-
> cpufreq.c
> > index 71c4926..7663a96 100644
> > --- a/drivers/cpufreq/exynos-cpufreq.c
> > +++ b/drivers/cpufreq/exynos-cpufreq.c
> > @@ -31,12 +31,6 @@ static unsigned int locking_frequency;
> > static bool frequency_locked;
> > static DEFINE_MUTEX(cpufreq_lock);
> >
> > -static int exynos_verify_speed(struct cpufreq_policy *policy)
> > -{
> > - return cpufreq_frequency_table_verify(policy,
> > - exynos_info->freq_table);
> > -}
> > -
> > static unsigned int exynos_getspeed(unsigned int cpu)
> > {
> > return clk_get_rate(exynos_info->cpu_clk) / 1000;
> > @@ -257,26 +251,15 @@ static int exynos_cpufreq_cpu_init(struct
> cpufreq_policy *policy)
> > return cpufreq_table_validate_and_show(policy, exynos_info-
> >freq_table);
> > }
> >
> > -static int exynos_cpufreq_cpu_exit(struct cpufreq_policy *policy)
> > -{
> > - cpufreq_frequency_table_put_attr(policy->cpu);
> > - return 0;
> > -}
> > -
> > -static struct freq_attr *exynos_cpufreq_attr[] = {
> > - &cpufreq_freq_attr_scaling_available_freqs,
> > - NULL,
> > -};
> > -
> > static struct cpufreq_driver exynos_driver = {
> > .flags = CPUFREQ_STICKY,
> > - .verify = exynos_verify_speed,
> > + .verify = cpufreq_generic_frequency_table_verify,
> > .target = exynos_target,
> > .get = exynos_getspeed,
> > .init = exynos_cpufreq_cpu_init,
> > - .exit = exynos_cpufreq_cpu_exit,
> > + .exit = cpufreq_generic_exit,
> > .name = "exynos_cpufreq",
> > - .attr = exynos_cpufreq_attr,
> > + .attr = cpufreq_generic_attr,
> > #ifdef CONFIG_PM
> > .suspend = exynos_cpufreq_suspend,
> > .resume = exynos_cpufreq_resume,
> > diff --git a/drivers/cpufreq/exynos5440-cpufreq.c
> b/drivers/cpufreq/exynos5440-cpufreq.c
> > index b9dfc91..f139b3b 100644
> > --- a/drivers/cpufreq/exynos5440-cpufreq.c
> > +++ b/drivers/cpufreq/exynos5440-cpufreq.c
> > @@ -209,12 +209,6 @@ static void exynos_enable_dvfs(void)
> > dvfs_info->base + XMU_DVFS_CTRL);
> > }
> >
> > -static int exynos_verify_speed(struct cpufreq_policy *policy)
> > -{
> > - return cpufreq_frequency_table_verify(policy,
> > - dvfs_info->freq_table);
> > -}
> > -
> > static unsigned int exynos_getspeed(unsigned int cpu)
> > {
> > return dvfs_info->cur_frequency;
> > @@ -336,18 +330,13 @@ static int exynos_cpufreq_cpu_init(struct
> cpufreq_policy *policy)
> > return 0;
> > }
> >
> > -static int exynos_cpufreq_cpu_init(struct cpufreq_policy *policy)
> > -{
> > - cpufreq_frequency_table_put_attr(policy->cpu);
> > -}
> > -
> > static struct cpufreq_driver exynos_driver = {
> > .flags = CPUFREQ_STICKY,
> > - .verify = exynos_verify_speed,
> > + .verify = cpufreq_generic_frequency_table_verify,
> > .target = exynos_target,
> > .get = exynos_getspeed,
> > .init = exynos_cpufreq_cpu_init,
> > - .exit = exynos_cpufreq_cpu_exit,
> > + .exit = cpufreq_generic_exit,
> > .name = CPUFREQ_NAME,
> > };
> >
> > --
> > 1.7.12.rc2.18.g61b472e

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