Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 87ea5843 authored by Ajay Singh Parmar's avatar Ajay Singh Parmar Committed by Vishnuvardhan Prodduturi
Browse files

msm: mdss: do not issue RESET event from display thread



Currently, RESET event is being issued from commit which
assumes panel power on has been successful. In case RESET of
the panel fails, this error needs to be propagated back to
unblank to avoid display commits.
Move issuing of RESET event to panels to unblank to detect
panel power on failure and stop the display thread.

Change-Id: Id13cc479b6a837e0c28a1504bda9f23e0c251f45
Signed-off-by: default avatarAjay Singh Parmar <aparmar@codeaurora.org>
Signed-off-by: default avatarPadmanabhan Komanduru <pkomandu@codeaurora.org>
Signed-off-by: default avatarVishnuvardhan Prodduturi <vproddut@codeaurora.org>
parent bb29ea15
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -3286,13 +3286,6 @@ int mdss_mdp_ctl_start(struct mdss_mdp_ctl *ctl, bool handoff)

	mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_ON);

	ret = mdss_mdp_ctl_intf_event(ctl,
		MDSS_EVENT_RESET, NULL, CTL_INTF_EVENT_FLAG_DEFAULT);
	if (ret) {
		pr_err("panel power on failed ctl=%d\n", ctl->num);
		goto error;
	}

	ret = mdss_mdp_ctl_start_sub(ctl, handoff);
	if (ret == 0) {
		if (sctl && ctl->mfd &&
@@ -3317,7 +3310,6 @@ int mdss_mdp_ctl_start(struct mdss_mdp_ctl *ctl, bool handoff)

	mdss_mdp_hist_intr_setup(&mdata->hist_intr, MDSS_IRQ_RESUME);

error:
	mdss_mdp_clk_ctrl(MDP_BLOCK_POWER_OFF);
	mutex_unlock(&ctl->lock);

+5 −0
Original line number Diff line number Diff line
@@ -4559,6 +4559,11 @@ static int mdss_mdp_overlay_on(struct msm_fb_data_type *mfd)
		goto panel_on;
	}

	rc = mdss_mdp_ctl_intf_event(mdp5_data->ctl, MDSS_EVENT_RESET,
		NULL, false);
	if (rc)
		goto panel_on;

	if (!mfd->panel_info->cont_splash_enabled &&
		(mfd->panel_info->type != DTV_PANEL)) {
		rc = mdss_mdp_overlay_start(mfd);