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

Commit c0f7bf86 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: mdss: unstage pipes after entering display recovery sequence"

parents 889de18e fad0ec92
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -1516,9 +1516,11 @@ static void __overlay_kickoff_requeue(struct msm_fb_data_type *mfd)
	mdss_mdp_display_commit(ctl, NULL, NULL);
	mdss_mdp_display_wait4comp(ctl);

	ATRACE_BEGIN("sspp_programming");
	/* unstage any recovery pipes and re-queue used pipes */
	mdss_mdp_mixer_unstage_all(ctl->mixer_left);
	mdss_mdp_mixer_unstage_all(ctl->mixer_right);

	__overlay_queue_pipes(mfd);
	ATRACE_END("sspp_programming");

	mdss_mdp_display_commit(ctl, NULL,  NULL);
	mdss_mdp_display_wait4comp(ctl);
+14 −4
Original line number Diff line number Diff line
@@ -1090,13 +1090,23 @@ static bool mdss_mdp_check_pipe_in_use(struct mdss_mdp_pipe *pipe)
			continue;

		mixer = ctl->mixer_left;
		if (!mixer || mixer->rotator_mode)
		if (mixer && mixer->rotator_mode)
			continue;

		mixercfg = mdss_mdp_get_mixercfg(mixer);
		if ((mixercfg & stage_off_mask) && ctl->play_cnt) {
			pr_err("BUG. pipe%d is active. mcfg:0x%x mask:0x%x\n",
				pipe->num, mixercfg, stage_off_mask);
		if (mixercfg & stage_off_mask) {
			pr_err("IN USE: mixer=%d pipe=%d mcfg:0x%x mask:0x%x\n",
				mixer->num, pipe->num,
				mixercfg, stage_off_mask);
			BUG();
		}

		mixer = ctl->mixer_right;
		mixercfg = mdss_mdp_get_mixercfg(mixer);
		if (mixercfg & stage_off_mask) {
			pr_err("IN USE: mixer=%d pipe=%d mcfg:0x%x mask:0x%x\n",
				mixer->num, pipe->num,
				mixercfg, stage_off_mask);
			BUG();
		}
	}