summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnson Huang <b20788@freescale.com>2012-07-02 19:23:23 +0800
committerXinyu Chen <xinyu.chen@freescale.com>2012-07-05 13:10:09 +0800
commit5012bea536b510c5bf81e7b26fb238354995096e (patch)
treebfa7eb0708d6aa3e5bd228218352dea037e990db
parentdfe62a8c062021226c7f72bc154fec3e0c04586b (diff)
ENGR00215491 [MX6]Need to increase BUS freq when CPU freq is increased
When BUS freq is running at DLL off mode(24M or 50M), when CPU freq is increased, we need to increase BUS freq to 400M setpoint in order to achieve high performance when CPU is busy. Signed-off-by: Anson Huang <b20788@freescale.com>
-rw-r--r--arch/arm/mach-mx6/bus_freq.c2
-rwxr-xr-xarch/arm/plat-mxc/cpufreq.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/mach-mx6/bus_freq.c b/arch/arm/mach-mx6/bus_freq.c
index cd53fde1a383..6ebd76c1bd7d 100644
--- a/arch/arm/mach-mx6/bus_freq.c
+++ b/arch/arm/mach-mx6/bus_freq.c
@@ -408,7 +408,7 @@ static ssize_t bus_freq_scaling_enable_store(struct device *dev,
static int busfreq_suspend(struct platform_device *pdev, pm_message_t message)
{
- if (low_bus_freq_mode)
+ if (low_bus_freq_mode || audio_bus_freq_mode)
set_high_bus_freq(1);
busfreq_suspended = 1;
return 0;
diff --git a/arch/arm/plat-mxc/cpufreq.c b/arch/arm/plat-mxc/cpufreq.c
index f79d8e771b49..d3e16ae24a50 100755
--- a/arch/arm/plat-mxc/cpufreq.c
+++ b/arch/arm/plat-mxc/cpufreq.c
@@ -87,6 +87,7 @@ extern struct regulator *cpu_regulator;
extern int dvfs_core_is_active;
extern struct cpu_op *(*get_cpu_op)(int *op);
extern int low_bus_freq_mode;
+extern int audio_bus_freq_mode;
extern int high_bus_freq_mode;
extern int set_low_bus_freq(void);
extern int set_high_bus_freq(int high_bus_speed);
@@ -243,7 +244,7 @@ int set_cpu_freq(int freq)
/*Set the voltage for the GP domain. */
if (freq > org_cpu_rate) {
- if (low_bus_freq_mode)
+ if (low_bus_freq_mode || audio_bus_freq_mode)
set_high_bus_freq(0);
#ifdef CONFIG_MX6_INTER_LDO_BYPASS
if (cpu_freq_suspend_in) {