diff options
Diffstat (limited to 'drivers/cpufreq/kirkwood-cpufreq.c')
-rw-r--r-- | drivers/cpufreq/kirkwood-cpufreq.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/cpufreq/kirkwood-cpufreq.c b/drivers/cpufreq/kirkwood-cpufreq.c index 0e83e3c24f5b..d36ea8dc96eb 100644 --- a/drivers/cpufreq/kirkwood-cpufreq.c +++ b/drivers/cpufreq/kirkwood-cpufreq.c | |||
@@ -55,7 +55,8 @@ static unsigned int kirkwood_cpufreq_get_cpu_frequency(unsigned int cpu) | |||
55 | return kirkwood_freq_table[0].frequency; | 55 | return kirkwood_freq_table[0].frequency; |
56 | } | 56 | } |
57 | 57 | ||
58 | static void kirkwood_cpufreq_set_cpu_state(unsigned int index) | 58 | static void kirkwood_cpufreq_set_cpu_state(struct cpufreq_policy *policy, |
59 | unsigned int index) | ||
59 | { | 60 | { |
60 | struct cpufreq_freqs freqs; | 61 | struct cpufreq_freqs freqs; |
61 | unsigned int state = kirkwood_freq_table[index].index; | 62 | unsigned int state = kirkwood_freq_table[index].index; |
@@ -63,9 +64,8 @@ static void kirkwood_cpufreq_set_cpu_state(unsigned int index) | |||
63 | 64 | ||
64 | freqs.old = kirkwood_cpufreq_get_cpu_frequency(0); | 65 | freqs.old = kirkwood_cpufreq_get_cpu_frequency(0); |
65 | freqs.new = kirkwood_freq_table[index].frequency; | 66 | freqs.new = kirkwood_freq_table[index].frequency; |
66 | freqs.cpu = 0; /* Kirkwood is UP */ | ||
67 | 67 | ||
68 | cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); | 68 | cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
69 | 69 | ||
70 | dev_dbg(priv.dev, "Attempting to set frequency to %i KHz\n", | 70 | dev_dbg(priv.dev, "Attempting to set frequency to %i KHz\n", |
71 | kirkwood_freq_table[index].frequency); | 71 | kirkwood_freq_table[index].frequency); |
@@ -99,7 +99,7 @@ static void kirkwood_cpufreq_set_cpu_state(unsigned int index) | |||
99 | 99 | ||
100 | local_irq_enable(); | 100 | local_irq_enable(); |
101 | } | 101 | } |
102 | cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); | 102 | cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
103 | }; | 103 | }; |
104 | 104 | ||
105 | static int kirkwood_cpufreq_verify(struct cpufreq_policy *policy) | 105 | static int kirkwood_cpufreq_verify(struct cpufreq_policy *policy) |
@@ -117,7 +117,7 @@ static int kirkwood_cpufreq_target(struct cpufreq_policy *policy, | |||
117 | target_freq, relation, &index)) | 117 | target_freq, relation, &index)) |
118 | return -EINVAL; | 118 | return -EINVAL; |
119 | 119 | ||
120 | kirkwood_cpufreq_set_cpu_state(index); | 120 | kirkwood_cpufreq_set_cpu_state(policy, index); |
121 | 121 | ||
122 | return 0; | 122 | return 0; |
123 | } | 123 | } |
@@ -175,11 +175,9 @@ static int kirkwood_cpufreq_probe(struct platform_device *pdev) | |||
175 | dev_err(&pdev->dev, "Cannot get memory resource\n"); | 175 | dev_err(&pdev->dev, "Cannot get memory resource\n"); |
176 | return -ENODEV; | 176 | return -ENODEV; |
177 | } | 177 | } |
178 | priv.base = devm_request_and_ioremap(&pdev->dev, res); | 178 | priv.base = devm_ioremap_resource(&pdev->dev, res); |
179 | if (!priv.base) { | 179 | if (IS_ERR(priv.base)) |
180 | dev_err(&pdev->dev, "Cannot ioremap\n"); | 180 | return PTR_ERR(priv.base); |
181 | return -EADDRNOTAVAIL; | ||
182 | } | ||
183 | 181 | ||
184 | np = of_find_node_by_path("/cpus/cpu@0"); | 182 | np = of_find_node_by_path("/cpus/cpu@0"); |
185 | if (!np) | 183 | if (!np) |