aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorViresh Kumar <viresh.kumar@linaro.org>2013-10-03 10:58:05 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-10-15 18:50:24 -0400
commit06494eb783cf34fa1d67b77fa597b656b6ad07fe (patch)
tree4c3b18da40e27f39015bd571e9853f986eb6fbb4
parentf51d2ac3267b7898fc3f8e8b0af33ffc24823190 (diff)
cpufreq: elanfreq: 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 in the elanfreq driver. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r--drivers/cpufreq/elanfreq.c32
1 files changed, 3 insertions, 29 deletions
diff --git a/drivers/cpufreq/elanfreq.c b/drivers/cpufreq/elanfreq.c
index 4000c34e5e59..fe7053cd68af 100644
--- a/drivers/cpufreq/elanfreq.c
+++ b/drivers/cpufreq/elanfreq.c
@@ -165,19 +165,6 @@ static void elanfreq_set_cpu_state(struct cpufreq_policy *policy,
165}; 165};
166 166
167 167
168/**
169 * elanfreq_validatespeed: test if frequency range is valid
170 * @policy: the policy to validate
171 *
172 * This function checks if a given frequency range in kHz is valid
173 * for the hardware supported by the driver.
174 */
175
176static int elanfreq_verify(struct cpufreq_policy *policy)
177{
178 return cpufreq_frequency_table_verify(policy, &elanfreq_table[0]);
179}
180
181static int elanfreq_target(struct cpufreq_policy *policy, 168static int elanfreq_target(struct cpufreq_policy *policy,
182 unsigned int target_freq, 169 unsigned int target_freq,
183 unsigned int relation) 170 unsigned int relation)
@@ -226,13 +213,6 @@ static int elanfreq_cpu_init(struct cpufreq_policy *policy)
226} 213}
227 214
228 215
229static int elanfreq_cpu_exit(struct cpufreq_policy *policy)
230{
231 cpufreq_frequency_table_put_attr(policy->cpu);
232 return 0;
233}
234
235
236#ifndef MODULE 216#ifndef MODULE
237/** 217/**
238 * elanfreq_setup - elanfreq command line parameter parsing 218 * elanfreq_setup - elanfreq command line parameter parsing
@@ -255,20 +235,14 @@ __setup("elanfreq=", elanfreq_setup);
255#endif 235#endif
256 236
257 237
258static struct freq_attr *elanfreq_attr[] = {
259 &cpufreq_freq_attr_scaling_available_freqs,
260 NULL,
261};
262
263
264static struct cpufreq_driver elanfreq_driver = { 238static struct cpufreq_driver elanfreq_driver = {
265 .get = elanfreq_get_cpu_frequency, 239 .get = elanfreq_get_cpu_frequency,
266 .verify = elanfreq_verify, 240 .verify = cpufreq_generic_frequency_table_verify,
267 .target = elanfreq_target, 241 .target = elanfreq_target,
268 .init = elanfreq_cpu_init, 242 .init = elanfreq_cpu_init,
269 .exit = elanfreq_cpu_exit, 243 .exit = cpufreq_generic_exit,
270 .name = "elanfreq", 244 .name = "elanfreq",
271 .attr = elanfreq_attr, 245 .attr = cpufreq_generic_attr,
272}; 246};
273 247
274static const struct x86_cpu_id elan_id[] = { 248static const struct x86_cpu_id elan_id[] = {