summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorManjunathappa, Prakash <prakash.pm@ti.com>2012-08-31 16:18:59 +0200
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2012-09-22 23:24:51 +0200
commit67900814c8cf77d1835578bbbbeea3adbd994bfd (patch)
tree4347ccf5444ffb639845175535f9d048377b9b42 /drivers
parentvideo: mbxfb: Include linux/io.h instead of asm/io.h (diff)
downloadlinux-67900814c8cf77d1835578bbbbeea3adbd994bfd.tar.xz
linux-67900814c8cf77d1835578bbbbeea3adbd994bfd.zip
da8xx-fb: enable LCDC if FB is unblanked
It is expected that LCDC to continue to be disabled after resume if it is blanked before suspend. This is also true for DVFS. But it is observed that LCDC being enabled after suspend/resume cycle or DVFS. Correcting it by having check for FB_BLANK_UNBLANK before enabling. Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/video/da8xx-fb.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c
index 03ebc0ddcfdb..af2aa387ec17 100644
--- a/drivers/video/da8xx-fb.c
+++ b/drivers/video/da8xx-fb.c
@@ -988,7 +988,8 @@ static int lcd_da8xx_cpufreq_transition(struct notifier_block *nb,
par->lcd_fck_rate = clk_get_rate(par->lcdc_clk);
lcd_disable_raster(true);
lcd_calc_clk_divider(par);
- lcd_enable_raster();
+ if (par->blank == FB_BLANK_UNBLANK)
+ lcd_enable_raster();
}
}
@@ -1514,10 +1515,12 @@ static int fb_resume(struct platform_device *dev)
console_lock();
clk_enable(par->lcdc_clk);
- lcd_enable_raster();
+ if (par->blank == FB_BLANK_UNBLANK) {
+ lcd_enable_raster();
- if (par->panel_power_ctrl)
- par->panel_power_ctrl(1);
+ if (par->panel_power_ctrl)
+ par->panel_power_ctrl(1);
+ }
fb_set_suspend(info, 0);
console_unlock();