aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRanjani Vaidyanathan <ra5478@freescale.com>2013-08-23 14:30:44 -0400
committerNitin Garg <nitin.garg@freescale.com>2014-04-16 09:01:26 -0400
commit3a81bd8ba44cbf770f2b2d75e70196e71bf1704c (patch)
tree1565d04bd16128901591b9a9b44f4eecb931e513
parentefea20642f203d97dcfec9f5a42aae4f53ed80cb (diff)
ENGR00276593-1 [iMX6x:Cpufreq]- Rename references to iMX6q
Change references to iMX6q to iMX6 as the CPUFREQ driver is common to all iMX6x chips. Reanme imx6q-cpufreq.c to cpufreq-imx6.c. Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
-rw-r--r--drivers/cpufreq/Kconfig.arm8
-rw-r--r--drivers/cpufreq/Makefile2
-rw-r--r--drivers/cpufreq/cpufreq-imx6.c (renamed from drivers/cpufreq/imx6q-cpufreq.c)70
3 files changed, 40 insertions, 40 deletions
diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm
index 6e57543fe0b9..ae5a2e8472d3 100644
--- a/drivers/cpufreq/Kconfig.arm
+++ b/drivers/cpufreq/Kconfig.arm
@@ -67,12 +67,12 @@ config ARM_HIGHBANK_CPUFREQ
67 67
68 If in doubt, say N. 68 If in doubt, say N.
69 69
70config ARM_IMX6Q_CPUFREQ 70config ARM_IMX6_CPUFREQ
71 tristate "Freescale i.MX6Q cpufreq support" 71 tristate "Freescale i.MX6 cpufreq support"
72 depends on SOC_IMX6Q 72 depends on SOC_IMX6Q || SOC_IMX6SL
73 depends on REGULATOR_ANATOP 73 depends on REGULATOR_ANATOP
74 help 74 help
75 This adds cpufreq driver support for Freescale i.MX6Q SOC. 75 This adds cpufreq driver support for Freescale i.MX6 series SOC.
76 76
77 If in doubt, say N. 77 If in doubt, say N.
78 78
diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile
index 49e83b62900d..12f2e7042b7d 100644
--- a/drivers/cpufreq/Makefile
+++ b/drivers/cpufreq/Makefile
@@ -59,7 +59,7 @@ obj-$(CONFIG_ARM_EXYNOS4X12_CPUFREQ) += exynos4x12-cpufreq.o
59obj-$(CONFIG_ARM_EXYNOS5250_CPUFREQ) += exynos5250-cpufreq.o 59obj-$(CONFIG_ARM_EXYNOS5250_CPUFREQ) += exynos5250-cpufreq.o
60obj-$(CONFIG_ARM_EXYNOS5440_CPUFREQ) += exynos5440-cpufreq.o 60obj-$(CONFIG_ARM_EXYNOS5440_CPUFREQ) += exynos5440-cpufreq.o
61obj-$(CONFIG_ARM_HIGHBANK_CPUFREQ) += highbank-cpufreq.o 61obj-$(CONFIG_ARM_HIGHBANK_CPUFREQ) += highbank-cpufreq.o
62obj-$(CONFIG_ARM_IMX6Q_CPUFREQ) += imx6q-cpufreq.o 62obj-$(CONFIG_ARM_IMX6_CPUFREQ) += cpufreq-imx6.o
63obj-$(CONFIG_ARM_INTEGRATOR) += integrator-cpufreq.o 63obj-$(CONFIG_ARM_INTEGRATOR) += integrator-cpufreq.o
64obj-$(CONFIG_ARM_KIRKWOOD_CPUFREQ) += kirkwood-cpufreq.o 64obj-$(CONFIG_ARM_KIRKWOOD_CPUFREQ) += kirkwood-cpufreq.o
65obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ) += omap-cpufreq.o 65obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ) += omap-cpufreq.o
diff --git a/drivers/cpufreq/imx6q-cpufreq.c b/drivers/cpufreq/cpufreq-imx6.c
index d704f42082f2..d301984bfa41 100644
--- a/drivers/cpufreq/imx6q-cpufreq.c
+++ b/drivers/cpufreq/cpufreq-imx6.c
@@ -37,20 +37,20 @@ struct soc_opp {
37 u32 soc_volt; 37 u32 soc_volt;
38}; 38};
39 39
40static struct soc_opp *imx6q_soc_opp; 40static struct soc_opp *imx6_soc_opp;
41static u32 soc_opp_count; 41static u32 soc_opp_count;
42 42
43static int imx6q_verify_speed(struct cpufreq_policy *policy) 43static int imx6_verify_speed(struct cpufreq_policy *policy)
44{ 44{
45 return cpufreq_frequency_table_verify(policy, freq_table); 45 return cpufreq_frequency_table_verify(policy, freq_table);
46} 46}
47 47
48static unsigned int imx6q_get_speed(unsigned int cpu) 48static unsigned int imx6_get_speed(unsigned int cpu)
49{ 49{
50 return clk_get_rate(arm_clk) / 1000; 50 return clk_get_rate(arm_clk) / 1000;
51} 51}
52 52
53static int imx6q_set_target(struct cpufreq_policy *policy, 53static int imx6_set_target(struct cpufreq_policy *policy,
54 unsigned int target_freq, unsigned int relation) 54 unsigned int target_freq, unsigned int relation)
55{ 55{
56 struct cpufreq_freqs freqs; 56 struct cpufreq_freqs freqs;
@@ -90,13 +90,13 @@ static int imx6q_set_target(struct cpufreq_policy *policy,
90 90
91 /* Find the matching VDDSOC/VDDPU operating voltage */ 91 /* Find the matching VDDSOC/VDDPU operating voltage */
92 while (soc_opp_index < soc_opp_count) { 92 while (soc_opp_index < soc_opp_count) {
93 if (freqs.new == imx6q_soc_opp[soc_opp_index].arm_freq) 93 if (freqs.new == imx6_soc_opp[soc_opp_index].arm_freq)
94 break; 94 break;
95 soc_opp_index++; 95 soc_opp_index++;
96 } 96 }
97 if (soc_opp_index >= soc_opp_count) { 97 if (soc_opp_index >= soc_opp_count) {
98 dev_err(cpu_dev, 98 dev_err(cpu_dev,
99 "Cannot find matching imx6q_soc_opp voltage\n"); 99 "Cannot find matching imx6_soc_opp voltage\n");
100 return -EINVAL; 100 return -EINVAL;
101 } 101 }
102 102
@@ -115,7 +115,7 @@ static int imx6q_set_target(struct cpufreq_policy *policy,
115 if (freqs.new > freqs.old) { 115 if (freqs.new > freqs.old) {
116 if (regulator_is_enabled(pu_reg)) { 116 if (regulator_is_enabled(pu_reg)) {
117 ret = regulator_set_voltage_tol(pu_reg, 117 ret = regulator_set_voltage_tol(pu_reg,
118 imx6q_soc_opp[soc_opp_index].soc_volt, 118 imx6_soc_opp[soc_opp_index].soc_volt,
119 0); 119 0);
120 if (ret) { 120 if (ret) {
121 dev_err(cpu_dev, 121 dev_err(cpu_dev,
@@ -124,7 +124,7 @@ static int imx6q_set_target(struct cpufreq_policy *policy,
124 } 124 }
125 } 125 }
126 ret = regulator_set_voltage_tol(soc_reg, 126 ret = regulator_set_voltage_tol(soc_reg,
127 imx6q_soc_opp[soc_opp_index].soc_volt, 0); 127 imx6_soc_opp[soc_opp_index].soc_volt, 0);
128 if (ret) { 128 if (ret) {
129 dev_err(cpu_dev, 129 dev_err(cpu_dev,
130 "failed to scale vddsoc up: %d\n", ret); 130 "failed to scale vddsoc up: %d\n", ret);
@@ -188,7 +188,7 @@ static int imx6q_set_target(struct cpufreq_policy *policy,
188 } 188 }
189 189
190 ret = regulator_set_voltage_tol(soc_reg, 190 ret = regulator_set_voltage_tol(soc_reg,
191 imx6q_soc_opp[soc_opp_index].soc_volt, 0); 191 imx6_soc_opp[soc_opp_index].soc_volt, 0);
192 if (ret) { 192 if (ret) {
193 dev_err(cpu_dev, 193 dev_err(cpu_dev,
194 "failed to scale vddsoc down: %d\n", ret); 194 "failed to scale vddsoc down: %d\n", ret);
@@ -197,7 +197,7 @@ static int imx6q_set_target(struct cpufreq_policy *policy,
197 197
198 if (regulator_is_enabled(pu_reg)) { 198 if (regulator_is_enabled(pu_reg)) {
199 ret = regulator_set_voltage_tol(pu_reg, 199 ret = regulator_set_voltage_tol(pu_reg,
200 imx6q_soc_opp[soc_opp_index].soc_volt, 200 imx6_soc_opp[soc_opp_index].soc_volt,
201 0); 201 0);
202 if (ret) { 202 if (ret) {
203 dev_err(cpu_dev, 203 dev_err(cpu_dev,
@@ -220,7 +220,7 @@ err1:
220 return -1; 220 return -1;
221} 221}
222 222
223static int imx6q_cpufreq_init(struct cpufreq_policy *policy) 223static int imx6_cpufreq_init(struct cpufreq_policy *policy)
224{ 224{
225 int ret; 225 int ret;
226 226
@@ -241,28 +241,28 @@ static int imx6q_cpufreq_init(struct cpufreq_policy *policy)
241 return 0; 241 return 0;
242} 242}
243 243
244static int imx6q_cpufreq_exit(struct cpufreq_policy *policy) 244static int imx6_cpufreq_exit(struct cpufreq_policy *policy)
245{ 245{
246 cpufreq_frequency_table_put_attr(policy->cpu); 246 cpufreq_frequency_table_put_attr(policy->cpu);
247 return 0; 247 return 0;
248} 248}
249 249
250static struct freq_attr *imx6q_cpufreq_attr[] = { 250static struct freq_attr *imx6_cpufreq_attr[] = {
251 &cpufreq_freq_attr_scaling_available_freqs, 251 &cpufreq_freq_attr_scaling_available_freqs,
252 NULL, 252 NULL,
253}; 253};
254 254
255static struct cpufreq_driver imx6q_cpufreq_driver = { 255static struct cpufreq_driver imx6_cpufreq_driver = {
256 .verify = imx6q_verify_speed, 256 .verify = imx6_verify_speed,
257 .target = imx6q_set_target, 257 .target = imx6_set_target,
258 .get = imx6q_get_speed, 258 .get = imx6_get_speed,
259 .init = imx6q_cpufreq_init, 259 .init = imx6_cpufreq_init,
260 .exit = imx6q_cpufreq_exit, 260 .exit = imx6_cpufreq_exit,
261 .name = "imx6q-cpufreq", 261 .name = "imx6-cpufreq",
262 .attr = imx6q_cpufreq_attr, 262 .attr = imx6_cpufreq_attr,
263}; 263};
264 264
265static int imx6q_cpufreq_probe(struct platform_device *pdev) 265static int imx6_cpufreq_probe(struct platform_device *pdev)
266{ 266{
267 struct device_node *np; 267 struct device_node *np;
268 struct opp *opp; 268 struct opp *opp;
@@ -340,11 +340,11 @@ static int imx6q_cpufreq_probe(struct platform_device *pdev)
340 } 340 }
341 341
342 /* Get the VDDSOC/VDDPU voltages that need to track the CPU voltages. */ 342 /* Get the VDDSOC/VDDPU voltages that need to track the CPU voltages. */
343 imx6q_soc_opp = devm_kzalloc(cpu_dev, 343 imx6_soc_opp = devm_kzalloc(cpu_dev,
344 sizeof(struct soc_opp) * (nr / 2), 344 sizeof(struct soc_opp) * (nr / 2),
345 GFP_KERNEL); 345 GFP_KERNEL);
346 346
347 if (imx6q_soc_opp == NULL) { 347 if (imx6_soc_opp == NULL) {
348 dev_err(cpu_dev, "No Memory for VDDSOC/PU table\n"); 348 dev_err(cpu_dev, "No Memory for VDDSOC/PU table\n");
349 goto free_freq_table; 349 goto free_freq_table;
350 } 350 }
@@ -375,8 +375,8 @@ static int imx6q_cpufreq_probe(struct platform_device *pdev)
375 goto free_freq_table; 375 goto free_freq_table;
376 } 376 }
377 } 377 }
378 imx6q_soc_opp[i].arm_freq = freq; 378 imx6_soc_opp[i].arm_freq = freq;
379 imx6q_soc_opp[i].soc_volt = volt; 379 imx6_soc_opp[i].soc_volt = volt;
380 soc_opp_count++; 380 soc_opp_count++;
381 } 381 }
382 rcu_read_unlock(); 382 rcu_read_unlock();
@@ -413,7 +413,7 @@ static int imx6q_cpufreq_probe(struct platform_device *pdev)
413 if (ret > 0) 413 if (ret > 0)
414 transition_latency += ret * 1000; 414 transition_latency += ret * 1000;
415 415
416 ret = cpufreq_register_driver(&imx6q_cpufreq_driver); 416 ret = cpufreq_register_driver(&imx6_cpufreq_driver);
417 if (ret) { 417 if (ret) {
418 dev_err(cpu_dev, "failed register driver: %d\n", ret); 418 dev_err(cpu_dev, "failed register driver: %d\n", ret);
419 goto free_freq_table; 419 goto free_freq_table;
@@ -429,24 +429,24 @@ put_node:
429 return ret; 429 return ret;
430} 430}
431 431
432static int imx6q_cpufreq_remove(struct platform_device *pdev) 432static int imx6_cpufreq_remove(struct platform_device *pdev)
433{ 433{
434 cpufreq_unregister_driver(&imx6q_cpufreq_driver); 434 cpufreq_unregister_driver(&imx6_cpufreq_driver);
435 opp_free_cpufreq_table(cpu_dev, &freq_table); 435 opp_free_cpufreq_table(cpu_dev, &freq_table);
436 436
437 return 0; 437 return 0;
438} 438}
439 439
440static struct platform_driver imx6q_cpufreq_platdrv = { 440static struct platform_driver imx6_cpufreq_platdrv = {
441 .driver = { 441 .driver = {
442 .name = "imx6q-cpufreq", 442 .name = "imx6-cpufreq",
443 .owner = THIS_MODULE, 443 .owner = THIS_MODULE,
444 }, 444 },
445 .probe = imx6q_cpufreq_probe, 445 .probe = imx6_cpufreq_probe,
446 .remove = imx6q_cpufreq_remove, 446 .remove = imx6_cpufreq_remove,
447}; 447};
448module_platform_driver(imx6q_cpufreq_platdrv); 448module_platform_driver(imx6_cpufreq_platdrv);
449 449
450MODULE_AUTHOR("Shawn Guo <shawn.guo@linaro.org>"); 450MODULE_AUTHOR("Shawn Guo <shawn.guo@linaro.org>");
451MODULE_DESCRIPTION("Freescale i.MX6Q cpufreq driver"); 451MODULE_DESCRIPTION("Freescale i.MX6 cpufreq driver");
452MODULE_LICENSE("GPL"); 452MODULE_LICENSE("GPL");