aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorVasily Khoruzhick <anarsoul@gmail.com>2011-03-11 11:20:50 +0200
committerEric Miao <eric.y.miao@gmail.com>2011-03-16 17:44:58 +0800
commit27be9a9e378dad166fc81df310e052e7b67cb667 (patch)
treefe67cf222a9c56c3cb2fd38e41af404d8223a3c8 /drivers
parentdcf8eee94f7eb2671e6d5774e81d45ad06b4f980 (diff)
downloadkernel_samsung_smdk4412-27be9a9e378dad166fc81df310e052e7b67cb667.zip
kernel_samsung_smdk4412-27be9a9e378dad166fc81df310e052e7b67cb667.tar.gz
kernel_samsung_smdk4412-27be9a9e378dad166fc81df310e052e7b67cb667.tar.bz2
ARM: pxafb: don't disable controller on cpufreq transition if overlay in use
It's not safe to disable controller if overlay(s) is enabled (results in system hang). So we avoid to disable controller in this case. Userspace should choose proper governor to avoid freq changing when overlay is in use, otherwise LCD may blink. Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/pxafb.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/video/pxafb.c b/drivers/video/pxafb.c
index a3bdcc1..a2e5b51 100644
--- a/drivers/video/pxafb.c
+++ b/drivers/video/pxafb.c
@@ -1648,7 +1648,8 @@ pxafb_freq_transition(struct notifier_block *nb, unsigned long val, void *data)
switch (val) {
case CPUFREQ_PRECHANGE:
- set_ctrlr_state(fbi, C_DISABLE_CLKCHANGE);
+ if (!fbi->overlay[0].usage && !fbi->overlay[1].usage)
+ set_ctrlr_state(fbi, C_DISABLE_CLKCHANGE);
break;
case CPUFREQ_POSTCHANGE: