[PATCH 3/4] Removing imx6q_opp_init
John Tobias
john.tobias.ph at gmail.com
Tue Dec 17 20:17:30 EST 2013
Since of_init_opp_table is in imx6q-cpufreq.c, the imx6q_opp_init is no longer needed anymore.
The only question right now is the imx6q_opp_check_1p2ghz function.
Is the function below are acceptible under imx6q_init_late?.
if (!cpu_dev)
imx6q_opp_check_1p2ghz(cpu_dev);
If not, what is the better way to impelement because the said function is board specific?.
Signed-off-by: John Tobias <john.tobias.ph at gmail.com>
---
arch/arm/mach-imx/mach-imx6q.c | 30 ++++--------------------------
1 file changed, 4 insertions(+), 26 deletions(-)
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index d0cfb22..f5d9e04 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -183,31 +183,6 @@ put_node:
of_node_put(np);
}
-static void __init imx6q_opp_init(void)
-{
- struct device_node *np;
- struct device *cpu_dev = get_cpu_device(0);
-
- if (!cpu_dev) {
- pr_warn("failed to get cpu0 device\n");
- return;
- }
- np = of_node_get(cpu_dev->of_node);
- if (!np) {
- pr_warn("failed to find cpu0 node\n");
- return;
- }
-
- if (of_init_opp_table(cpu_dev)) {
- pr_warn("failed to init OPP table\n");
- goto put_node;
- }
-
- imx6q_opp_check_1p2ghz(cpu_dev);
-
-put_node:
- of_node_put(np);
-}
static struct platform_device imx6q_cpufreq_pdev = {
.name = "imx6q-cpufreq",
@@ -215,6 +190,7 @@ static struct platform_device imx6q_cpufreq_pdev = {
static void __init imx6q_init_late(void)
{
+ struct device *cpu_dev = get_cpu_device(0);
/*
* WAIT mode is broken on TO 1.0 and 1.1, so there is no point
* to run cpuidle on them.
@@ -223,8 +199,10 @@ static void __init imx6q_init_late(void)
imx6q_cpuidle_init();
if (IS_ENABLED(CONFIG_ARM_IMX6Q_CPUFREQ)) {
- imx6q_opp_init();
platform_device_register(&imx6q_cpufreq_pdev);
+
+ if (!cpu_dev)
+ imx6q_opp_check_1p2ghz(cpu_dev);
}
}
--
1.8.3.2
More information about the linux-arm-kernel
mailing list