diff --git a/drivers/video/fbdev/msm/mdss_mdp_intf_cmd.c b/drivers/video/fbdev/msm/mdss_mdp_intf_cmd.c index 6023c36d9e39..f9b225859c7d 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_intf_cmd.c +++ b/drivers/video/fbdev/msm/mdss_mdp_intf_cmd.c @@ -2452,7 +2452,10 @@ int mdss_mdp_cmd_ctx_stop(struct mdss_mdp_ctl *ctl, mdss_mdp_resource_control(ctl, MDP_RSRC_CTL_EVENT_STOP); flush_work(&ctx->pp_done_work); - mdss_mdp_tearcheck_enable(ctl, false); + + if (mdss_panel_is_power_off(panel_power_state) || + mdss_panel_is_power_on_ulp(panel_power_state)) + mdss_mdp_tearcheck_enable(ctl, false); if (mdss_panel_is_power_on(panel_power_state)) { pr_debug("%s: intf stopped with panel on\n", __func__);