Message ID | 1346418020-31779-1-git-send-email-prakash.pm@ti.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Headers | show |
Hi, On Fri, Aug 31, 2012 at 18:30:20, Manjunathappa, Prakash wrote: > Check for FB_BLANK_UNBLANK before enabling LCDC from PM resume > and DVFS. Without this, behavior in case of below used case is > not be not expected, > 1) Issue FB_BLANK, LCDC disabled. > 2) Do suspend/resume cycle or DVFS. > 3) Do not expect LCDC to get enabled at this point. > > Re-enabling of LCDC is done when FB_BLANK_UNBLANK is issued. I will reword this and send across next version. > > Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com> > --- > Applies on top of fbdev-next of Florian Tobias Schandinat's tree. > > drivers/video/da8xx-fb.c | 11 +++++++---- > 1 files changed, 7 insertions(+), 4 deletions(-) > > diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c > index 761c8d1..1273354 100644 > --- a/drivers/video/da8xx-fb.c > +++ b/drivers/video/da8xx-fb.c > @@ -962,7 +962,8 @@ static int lcd_da8xx_cpufreq_transition(struct notifier_block *nb, > par->lcd_fck_rate = clk_get_rate(par->lcdc_clk); > lcd_disable_raster(); > lcd_calc_clk_divider(par); > - lcd_enable_raster(); > + if (par->blank == FB_BLANK_UNBLANK) > + lcd_enable_raster(); > } > } > > @@ -1486,10 +1487,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(); > -- > 1.7.1 > >
diff --git a/drivers/video/da8xx-fb.c b/drivers/video/da8xx-fb.c index 761c8d1..1273354 100644 --- a/drivers/video/da8xx-fb.c +++ b/drivers/video/da8xx-fb.c @@ -962,7 +962,8 @@ static int lcd_da8xx_cpufreq_transition(struct notifier_block *nb, par->lcd_fck_rate = clk_get_rate(par->lcdc_clk); lcd_disable_raster(); lcd_calc_clk_divider(par); - lcd_enable_raster(); + if (par->blank == FB_BLANK_UNBLANK) + lcd_enable_raster(); } } @@ -1486,10 +1487,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();
Check for FB_BLANK_UNBLANK before enabling LCDC from PM resume and DVFS. Without this, behavior in case of below used case is not be not expected, 1) Issue FB_BLANK, LCDC disabled. 2) Do suspend/resume cycle or DVFS. 3) Do not expect LCDC to get enabled at this point. Re-enabling of LCDC is done when FB_BLANK_UNBLANK is issued. Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com> --- Applies on top of fbdev-next of Florian Tobias Schandinat's tree. drivers/video/da8xx-fb.c | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-)