cpufreq: imx6q: Use generic cpufreq routines
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 in the imx6q driver. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
59b2413bfe
commit
4f6ba385e9
|
@ -35,11 +35,6 @@ static struct device *cpu_dev;
|
|||
static struct cpufreq_frequency_table *freq_table;
|
||||
static unsigned int transition_latency;
|
||||
|
||||
static int imx6q_verify_speed(struct cpufreq_policy *policy)
|
||||
{
|
||||
return cpufreq_frequency_table_verify(policy, freq_table);
|
||||
}
|
||||
|
||||
static unsigned int imx6q_get_speed(unsigned int cpu)
|
||||
{
|
||||
return clk_get_rate(arm_clk) / 1000;
|
||||
|
@ -174,25 +169,14 @@ static int imx6q_cpufreq_init(struct cpufreq_policy *policy)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int imx6q_cpufreq_exit(struct cpufreq_policy *policy)
|
||||
{
|
||||
cpufreq_frequency_table_put_attr(policy->cpu);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct freq_attr *imx6q_cpufreq_attr[] = {
|
||||
&cpufreq_freq_attr_scaling_available_freqs,
|
||||
NULL,
|
||||
};
|
||||
|
||||
static struct cpufreq_driver imx6q_cpufreq_driver = {
|
||||
.verify = imx6q_verify_speed,
|
||||
.verify = cpufreq_generic_frequency_table_verify,
|
||||
.target = imx6q_set_target,
|
||||
.get = imx6q_get_speed,
|
||||
.init = imx6q_cpufreq_init,
|
||||
.exit = imx6q_cpufreq_exit,
|
||||
.exit = cpufreq_generic_exit,
|
||||
.name = "imx6q-cpufreq",
|
||||
.attr = imx6q_cpufreq_attr,
|
||||
.attr = cpufreq_generic_attr,
|
||||
};
|
||||
|
||||
static int imx6q_cpufreq_probe(struct platform_device *pdev)
|
||||
|
|
Loading…
Reference in New Issue