diff options
Diffstat (limited to 'drivers/cpufreq/sparc-us3-cpufreq.c')
-rw-r--r-- | drivers/cpufreq/sparc-us3-cpufreq.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/drivers/cpufreq/sparc-us3-cpufreq.c b/drivers/cpufreq/sparc-us3-cpufreq.c index 9b3dbd31362e..2e54d55915df 100644 --- a/drivers/cpufreq/sparc-us3-cpufreq.c +++ b/drivers/cpufreq/sparc-us3-cpufreq.c | |||
@@ -93,8 +93,7 @@ static unsigned int us3_freq_get(unsigned int cpu) | |||
93 | return ret; | 93 | return ret; |
94 | } | 94 | } |
95 | 95 | ||
96 | static void us3_set_cpu_divider_index(struct cpufreq_policy *policy, | 96 | static int us3_freq_target(struct cpufreq_policy *policy, unsigned int index) |
97 | unsigned int index) | ||
98 | { | 97 | { |
99 | unsigned int cpu = policy->cpu; | 98 | unsigned int cpu = policy->cpu; |
100 | unsigned long new_bits, new_freq, reg; | 99 | unsigned long new_bits, new_freq, reg; |
@@ -136,22 +135,6 @@ static void us3_set_cpu_divider_index(struct cpufreq_policy *policy, | |||
136 | cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); | 135 | cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
137 | 136 | ||
138 | set_cpus_allowed_ptr(current, &cpus_allowed); | 137 | set_cpus_allowed_ptr(current, &cpus_allowed); |
139 | } | ||
140 | |||
141 | static int us3_freq_target(struct cpufreq_policy *policy, | ||
142 | unsigned int target_freq, | ||
143 | unsigned int relation) | ||
144 | { | ||
145 | unsigned int new_index = 0; | ||
146 | |||
147 | if (cpufreq_frequency_table_target(policy, | ||
148 | &us3_freq_table[policy->cpu].table[0], | ||
149 | target_freq, | ||
150 | relation, | ||
151 | &new_index)) | ||
152 | return -EINVAL; | ||
153 | |||
154 | us3_set_cpu_divider_index(policy, new_index); | ||
155 | 138 | ||
156 | return 0; | 139 | return 0; |
157 | } | 140 | } |
@@ -182,7 +165,7 @@ static int us3_freq_cpu_exit(struct cpufreq_policy *policy) | |||
182 | { | 165 | { |
183 | if (cpufreq_us3_driver) { | 166 | if (cpufreq_us3_driver) { |
184 | cpufreq_frequency_table_put_attr(policy->cpu); | 167 | cpufreq_frequency_table_put_attr(policy->cpu); |
185 | us3_set_cpu_divider_index(policy, 0); | 168 | us3_freq_target(policy, 0); |
186 | } | 169 | } |
187 | 170 | ||
188 | return 0; | 171 | return 0; |
@@ -219,7 +202,7 @@ static int __init us3_freq_init(void) | |||
219 | 202 | ||
220 | driver->init = us3_freq_cpu_init; | 203 | driver->init = us3_freq_cpu_init; |
221 | driver->verify = cpufreq_generic_frequency_table_verify; | 204 | driver->verify = cpufreq_generic_frequency_table_verify; |
222 | driver->target = us3_freq_target; | 205 | driver->target_index = us3_freq_target; |
223 | driver->get = us3_freq_get; | 206 | driver->get = us3_freq_get; |
224 | driver->exit = us3_freq_cpu_exit; | 207 | driver->exit = us3_freq_cpu_exit; |
225 | strcpy(driver->name, "UltraSPARC-III"); | 208 | strcpy(driver->name, "UltraSPARC-III"); |