summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRajkumar Subbiah <rsubbia@codeaurora.org>2017-03-28 11:04:26 -0400
committerRajkumar Subbiah <rsubbia@codeaurora.org>2017-03-28 18:30:05 -0400
commit2c85c366dcae3cc14edf8a581a106e54c2f8ad2f (patch)
tree206ccff6fa627878ee977e246440de49d217f70d
parentfec225ae45829184255a95a00d81cf1387fd6a84 (diff)
msm: mdss: Wait for VSYNC after continuous splash handoff
After the pipes are unstaged during continuous splash handoff the driver should wait for VSYNC to make sure the changes are flushed before moving on. Currently it sleeps for 20ms but this might not be enough especially on low fps configurations causing pipe hang. Changing that to wait for VSYNC interrupt instead. Change-Id: Ic722a7d6c39c36084f35f55e7e899476e34f607f Signed-off-by: Rajkumar Subbiah <rsubbia@codeaurora.org>
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_intf_video.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_intf_video.c b/drivers/video/fbdev/msm/mdss_mdp_intf_video.c
index a3511a1a07ef..58464eea7eb9 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_intf_video.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_intf_video.c
@@ -1796,7 +1796,9 @@ int mdss_mdp_video_reconfigure_splash_done(struct mdss_mdp_ctl *ctl,
mdss_mdp_video_timegen_flush(ctl, sctx);
/* wait for 1 VSYNC for the pipe to be unstaged */
- msleep(20);
+ mdss_mdp_video_wait4comp(ctl, NULL);
+ if (sctl)
+ mdss_mdp_video_wait4comp(sctl, NULL);
ret = mdss_mdp_ctl_intf_event(ctl,
MDSS_EVENT_CONT_SPLASH_FINISH, NULL,