summaryrefslogtreecommitdiff
path: root/arch/arm/mach-mx6/bus_freq.c
diff options
context:
space:
mode:
authorAnson Huang <b20788@freescale.com>2012-06-12 18:50:42 +0800
committerAnson Huang <b20788@freescale.com>2012-06-12 21:21:51 +0800
commitfa2acf51598a6006378ca5aac8ea49b0b9512555 (patch)
tree1cba535370566b0201ffca3caffe8ead3bad6339 /arch/arm/mach-mx6/bus_freq.c
parentca0bb4bd4a06977077e95cc5d8f053aafeb2140c (diff)
ENGR00180930 [MX6]Fix low bus mode bug when there is no CPUFreq change
If the CPUFreq change is done before enabling low bus freq driver, the bus freq will be staying at high freq until there is new request of entering low bus freq. So we need to put the bus freq into low point if all the conditions are met when we enable bus freq. Signed-off-by: Anson Huang <b20788@freescale.com>
Diffstat (limited to 'arch/arm/mach-mx6/bus_freq.c')
-rw-r--r--arch/arm/mach-mx6/bus_freq.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/mach-mx6/bus_freq.c b/arch/arm/mach-mx6/bus_freq.c
index 36a8190dd812..c7f8fef30923 100644
--- a/arch/arm/mach-mx6/bus_freq.c
+++ b/arch/arm/mach-mx6/bus_freq.c
@@ -322,6 +322,10 @@ static ssize_t bus_freq_scaling_enable_store(struct device *dev,
if (strncmp(buf, "1", 1) == 0) {
bus_freq_scaling_is_active = 1;
set_high_bus_freq(0);
+ /* Make sure system can enter low bus mode if it should be in
+ low bus mode */
+ if (low_freq_bus_used() && !low_bus_freq_mode)
+ set_low_bus_freq();
} else if (strncmp(buf, "0", 1) == 0) {
if (bus_freq_scaling_is_active)
set_high_bus_freq(1);