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

Commit 1520065c authored by Krishna Manikandan's avatar Krishna Manikandan
Browse files

msm: mdss: Avoid unnecessary warnings during pipe unstaging



In some cases, when the pipe is being unstaged from right mixer,
some unnecessary processing is done and warning messages are
being printed. This can be avoided by updating the right stage
information after unstaging the pipe.

Change-Id: Ibeaa1c4bee29d7ac3ae34140bea8d5b7468dbc85
Signed-off-by: default avatarKrishna Chaitanya Devarakonda <kdevarak@codeaurora.org>
Signed-off-by: default avatarKrishna Manikandan <mkrishn@codeaurora.org>
parent 2a7bbea4
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1123,6 +1123,7 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
	int ret = 0;
	u32 left_lm_w = left_lm_w_from_mfd(mfd);
	u64 flags;
	bool is_right_blend = false;

	struct mdss_mdp_mixer *mixer = NULL;
	struct mdss_overlay_private *mdp5_data = mfd_to_mdp5_data(mfd);
@@ -1234,6 +1235,7 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
	 * staging, same pipe will be stagged on both layer mixers.
	 */
	if (mdata->has_src_split) {
		is_right_blend = pipe->is_right_blend;
		if (left_blend_pipe) {
			if (__validate_pipe_priorities(left_blend_pipe, pipe)) {
				pr_err("priority limitation. left:%d rect:%d, right:%d rect:%d\n",
@@ -1245,7 +1247,7 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
				goto end;
			} else {
				pr_debug("pipe%d is a right_pipe\n", pipe->num);
				pipe->is_right_blend = true;
				is_right_blend = true;
			}
		} else if (pipe->is_right_blend) {
			/*
@@ -1254,7 +1256,7 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
			 */
			mdss_mdp_mixer_pipe_unstage(pipe, pipe->mixer_left);
			mdss_mdp_mixer_pipe_unstage(pipe, pipe->mixer_right);
			pipe->is_right_blend = false;
			is_right_blend = false;
		}

		if (is_split_lm(mfd) && __layer_needs_src_split(layer)) {
@@ -1280,6 +1282,7 @@ static int __configure_pipe_params(struct msm_fb_data_type *mfd,
			}
			pipe->src_split_req = false;
		}
		pipe->is_right_blend = is_right_blend;
	}

	pipe->multirect.mode = vinfo->multirect.mode;