summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx
diff options
context:
space:
mode:
authorAnson Huang <b20788@freescale.com>2014-06-11 16:42:01 +0800
committerAnson Huang <b20788@freescale.com>2014-06-11 16:50:40 +0800
commit8d5b4cfe4f781216606e13d23b7e2ccd8de586cc (patch)
treeabbc2622bde1289a850c0083fec03b59df72459b /arch/arm/mach-imx
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>
Diffstat (limited to 'arch/arm/mach-imx')
-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)
pr_warn("failed to disable 850 MHz OPP\n");
}
+ if (IS_ENABLED(CONFIG_MX6_VPU_352M)) {
+ if (opp_disable(cpu_dev, 396000000))
+ pr_warn("failed to disable 396MHz OPP\n");
+ pr_info("remove 396MHz OPP for VPU running at 352MHz!\n");
+ }
+
put_node:
of_node_put(np);
}
@@ -466,8 +472,7 @@ static void __init imx6q_init_late(void)
IMX_CHIP_REVISION_1_0))
imx6q_cpuidle_init();
- if (IS_ENABLED(CONFIG_ARM_IMX6_CPUFREQ) &&
- !IS_ENABLED(CONFIG_MX6_VPU_352M)) {
+ if (IS_ENABLED(CONFIG_ARM_IMX6_CPUFREQ)) {
imx6q_opp_init(&imx6q_cpufreq_pdev.dev);
platform_device_register(&imx6q_cpufreq_pdev);
}