Loading drivers/video/msm/mdss/mdss_mdp_intf_cmd.c +8 −2 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ struct mdss_mdp_cmd_ctx { atomic_t pp_done_cnt; struct mdss_panel_recovery recovery; struct mdss_mdp_cmd_ctx *sync_ctx; /* for partial update */ u32 pp_timeout_report_cnt; }; struct mdss_mdp_cmd_ctx mdss_mdp_cmd_ctx_list[MAX_SESSIONS]; Loading Loading @@ -569,14 +570,18 @@ static int mdss_mdp_cmd_wait4pingpong(struct mdss_mdp_ctl *ctl, void *arg) } if (rc <= 0) { if (!ctx->pp_timeout_report_cnt) { WARN(1, "cmd kickoff timed out (%d) ctl=%d\n", rc, ctl->num); MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", "edp", "hdmi", "panic"); } ctx->pp_timeout_report_cnt++; rc = -EPERM; mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_TIMEOUT); } else { rc = 0; ctx->pp_timeout_report_cnt = 0; } } Loading Loading @@ -946,6 +951,7 @@ static int mdss_mdp_cmd_intfs_setup(struct mdss_mdp_ctl *ctl, ctx->ctl = ctl; ctx->pp_num = (is_split_dst(ctl->mfd) ? session : mixer->num); ctx->pp_timeout_report_cnt = 0; init_completion(&ctx->pp_comp); init_completion(&ctx->stop_comp); spin_lock_init(&ctx->clk_lock); Loading Loading
drivers/video/msm/mdss/mdss_mdp_intf_cmd.c +8 −2 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ struct mdss_mdp_cmd_ctx { atomic_t pp_done_cnt; struct mdss_panel_recovery recovery; struct mdss_mdp_cmd_ctx *sync_ctx; /* for partial update */ u32 pp_timeout_report_cnt; }; struct mdss_mdp_cmd_ctx mdss_mdp_cmd_ctx_list[MAX_SESSIONS]; Loading Loading @@ -569,14 +570,18 @@ static int mdss_mdp_cmd_wait4pingpong(struct mdss_mdp_ctl *ctl, void *arg) } if (rc <= 0) { if (!ctx->pp_timeout_report_cnt) { WARN(1, "cmd kickoff timed out (%d) ctl=%d\n", rc, ctl->num); MDSS_XLOG_TOUT_HANDLER("mdp", "dsi0", "dsi1", "edp", "hdmi", "panic"); } ctx->pp_timeout_report_cnt++; rc = -EPERM; mdss_mdp_ctl_notify(ctl, MDP_NOTIFY_FRAME_TIMEOUT); } else { rc = 0; ctx->pp_timeout_report_cnt = 0; } } Loading Loading @@ -946,6 +951,7 @@ static int mdss_mdp_cmd_intfs_setup(struct mdss_mdp_ctl *ctl, ctx->ctl = ctl; ctx->pp_num = (is_split_dst(ctl->mfd) ? session : mixer->num); ctx->pp_timeout_report_cnt = 0; init_completion(&ctx->pp_comp); init_completion(&ctx->stop_comp); spin_lock_init(&ctx->clk_lock); Loading