aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnson Huang <b20788@freescale.com>2014-06-11 04:42:01 -0400
committerAnson Huang <b20788@freescale.com>2014-06-11 04:50:40 -0400
commit8d5b4cfe4f781216606e13d23b7e2ccd8de586cc (patch)
treeabbc2622bde1289a850c0083fec03b59df72459b
parent88d63044be671990666a712626d57bbb882a8eb5 (diff)
ENGR00317861 ARM: imx: add cpufreq support when VPU running at 352MHz
When VPU 352MHz is supported, PLL2_PFD2 will run at 352MHz instead of 396MHz, CPUFreq driver will use PLL2_PFD2 when it is running at 396MHz setpoint, so when VPU 352MHz is enabled, CPUFreq can be enabled but need to remove the 396MHz setpoint. Signed-off-by: Anson Huang <b20788@freescale.com>
-rw-r--r--arch/arm/mach-imx/mach-imx6q.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/mach-imx/mach-imx6q.c b/arch/arm/mach-imx/mach-imx6q.c
index 9a8fd6f01c62..4808ebbff9ac 100644
--- a/arch/arm/mach-imx/mach-imx6q.c
+++ b/arch/arm/mach-imx/mach-imx6q.c
@@ -391,6 +391,12 @@ static void __init imx6q_opp_check_speed_grading(struct device *cpu_dev)
391 pr_warn("failed to disable 850 MHz OPP\n"); 391 pr_warn("failed to disable 850 MHz OPP\n");
392 } 392 }
393 393
394 if (IS_ENABLED(CONFIG_MX6_VPU_352M)) {
395 if (opp_disable(cpu_dev, 396000000))
396 pr_warn("failed to disable 396MHz OPP\n");
397 pr_info("remove 396MHz OPP for VPU running at 352MHz!\n");
398 }
399
394put_node: 400put_node:
395 of_node_put(np); 401 of_node_put(np);
396} 402}
@@ -466,8 +472,7 @@ static void __init imx6q_init_late(void)
466 IMX_CHIP_REVISION_1_0)) 472 IMX_CHIP_REVISION_1_0))
467 imx6q_cpuidle_init(); 473 imx6q_cpuidle_init();
468 474
469 if (IS_ENABLED(CONFIG_ARM_IMX6_CPUFREQ) && 475 if (IS_ENABLED(CONFIG_ARM_IMX6_CPUFREQ)) {
470 !IS_ENABLED(CONFIG_MX6_VPU_352M)) {
471 imx6q_opp_init(&imx6q_cpufreq_pdev.dev); 476 imx6q_opp_init(&imx6q_cpufreq_pdev.dev);
472 platform_device_register(&imx6q_cpufreq_pdev); 477 platform_device_register(&imx6q_cpufreq_pdev);
473 } 478 }