Loading drivers/video/msm/mdss/mdss_mdp_overlay.c +14 −2 Original line number Diff line number Diff line Loading @@ -4824,6 +4824,7 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) int rc; struct mdss_overlay_private *mdp5_data; struct mdss_mdp_ctl *ctl = NULL; struct mdss_data_type *mdata; if (!mfd) return -ENODEV; Loading @@ -4835,6 +4836,10 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) if (!mdp5_data) return -EINVAL; mdata = mfd_to_mdata(mfd); if (!mdata) return -EINVAL; mdss_mdp_set_lm_flag(mfd); if (!mdp5_data->ctl) { Loading Loading @@ -4864,9 +4869,16 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) if (rc) goto panel_on; /* Skip the overlay start and kickoff for all displays if handoff is pending. Previously we skipped it for DTV panel and pluggable panels (bridge chip hdmi case). But it does not cover the case where there is a non pluggable tertiary display. Using the flag handoff_pending to skip overlay start and kickoff should cover all cases TODO: In the long run, the overlay start and kickoff should not be skipped, instead, the handoff can be done */ if (!mfd->panel_info->cont_splash_enabled && (mfd->panel_info->type != DTV_PANEL) && !mfd->panel_info->is_pluggable) { !mdata->handoff_pending) { rc = mdss_mdp_overlay_start(mfd); if (rc) goto end; Loading Loading
drivers/video/msm/mdss/mdss_mdp_overlay.c +14 −2 Original line number Diff line number Diff line Loading @@ -4824,6 +4824,7 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) int rc; struct mdss_overlay_private *mdp5_data; struct mdss_mdp_ctl *ctl = NULL; struct mdss_data_type *mdata; if (!mfd) return -ENODEV; Loading @@ -4835,6 +4836,10 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) if (!mdp5_data) return -EINVAL; mdata = mfd_to_mdata(mfd); if (!mdata) return -EINVAL; mdss_mdp_set_lm_flag(mfd); if (!mdp5_data->ctl) { Loading Loading @@ -4864,9 +4869,16 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd) if (rc) goto panel_on; /* Skip the overlay start and kickoff for all displays if handoff is pending. Previously we skipped it for DTV panel and pluggable panels (bridge chip hdmi case). But it does not cover the case where there is a non pluggable tertiary display. Using the flag handoff_pending to skip overlay start and kickoff should cover all cases TODO: In the long run, the overlay start and kickoff should not be skipped, instead, the handoff can be done */ if (!mfd->panel_info->cont_splash_enabled && (mfd->panel_info->type != DTV_PANEL) && !mfd->panel_info->is_pluggable) { !mdata->handoff_pending) { rc = mdss_mdp_overlay_start(mfd); if (rc) goto end; Loading