diff --git a/drivers/video/msm/mdp4_overlay.c b/drivers/video/msm/mdp4_overlay.c index 2a15506103a..1287743f7c0 100644 --- a/drivers/video/msm/mdp4_overlay.c +++ b/drivers/video/msm/mdp4_overlay.c @@ -3086,7 +3086,13 @@ int mdp4_overlay_play(struct fb_info *info, struct msmfb_overlay_data *req) mdp4_overlay_rgb_setup(pipe); /* rgb pipe */ } - mdp4_overlay_reg_flush(pipe, 1); + if (pipe->mixer_num != MDP4_MIXER2) { + if ((ctrl->panel_mode & MDP4_PANEL_DTV) || + (ctrl->panel_mode & MDP4_PANEL_LCDC) || + (ctrl->panel_mode & MDP4_PANEL_DSI_VIDEO)) + mdp4_overlay_reg_flush(pipe, 1); + } + mdp4_mixer_stage_up(pipe); if (pipe->mixer_num == MDP4_MIXER2) {