From 0be39b8f3b91b0df2d2dbe75ca2123a38301560e Mon Sep 17 00:00:00 2001 From: Dhaval Patel Date: Thu, 19 Nov 2015 11:59:51 -0800 Subject: msm: mdss: avoid vsync_handler update in lp2 power state vsync_handler added in lp2 (doze_suspend) power state enables the vsync on hardware. That can lead to unclocked register access because device can go in pm_suspend in this power state. This change blocks the vsync_handler processing in lp2 power state. Change-Id: I4386baa6bc2f8303928edade79108b4983f66f42 Signed-off-by: Dhaval Patel --- drivers/video/fbdev/msm/mdss_mdp_overlay.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/video/fbdev/msm/mdss_mdp_overlay.c b/drivers/video/fbdev/msm/mdss_mdp_overlay.c index cc378bb8c69b..c4fa50cbdca2 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_overlay.c +++ b/drivers/video/fbdev/msm/mdss_mdp_overlay.c @@ -2639,7 +2639,8 @@ int mdss_mdp_overlay_vsync_ctrl(struct msm_fb_data_type *mfd, int en) if (!ctl->ops.add_vsync_handler || !ctl->ops.remove_vsync_handler) return -EOPNOTSUPP; if (!ctl->panel_data->panel_info.cont_splash_enabled - && !mdss_mdp_ctl_is_power_on(ctl)) { + && (!mdss_mdp_ctl_is_power_on(ctl) || + mdss_panel_is_power_on_ulp(ctl->power_state))) { pr_debug("fb%d vsync pending first update en=%d\n", mfd->index, en); return -EPERM; -- cgit v1.2.3