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

Commit 6a8def73 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: avoid kickoff wait during validation phase"

parents 7b71ead9 5ce4d5e6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -3045,6 +3045,7 @@ int mdp3_ctrl_init(struct msm_fb_data_type *mfd)
		goto init_done;
	}

	mfd->skip_koff_wait = true;
	mdp3_session->dma->output_config.out_sel = intf_type;
	mdp3_session->mfd = mfd;
	mdp3_session->panel = dev_get_platdata(&mfd->pdev->dev);
+29 −26
Original line number Diff line number Diff line
@@ -3388,20 +3388,24 @@ int mdss_fb_atomic_commit(struct fb_info *info,

	commit_v1 = &commit->commit_v1;
	if (commit_v1->flags & MDP_VALIDATE_LAYER) {
		if (!mfd->skip_koff_wait) {
			ret = mdss_fb_wait_for_kickoff(mfd);
			if (ret) {
				pr_err("wait for kickoff failed\n");
		} else {
				goto end;
			}
		}
		__ioctl_transition_dyn_mode_state(mfd,
			MSMFB_ATOMIC_COMMIT, true, false);
		if (mfd->panel.type == WRITEBACK_PANEL) {
				output_layer = commit_v1->output_layer;
			output_layer = (struct mdp_output_layer *)
					commit_v1->output_layer;
			if (!output_layer) {
				pr_err("Output layer is null\n");
				goto end;
			}
			wb_change = !mdss_fb_is_wb_config_same(mfd,
						commit_v1->output_layer);
					output_layer);
			if (wb_change) {
				old_xres = pinfo->xres;
				old_yres = pinfo->yres;
@@ -3415,7 +3419,6 @@ int mdss_fb_atomic_commit(struct fb_info *info,
		ret = mfd->mdp.atomic_validate(mfd, file, commit_v1);
		if (!ret)
			mfd->atomic_commit_pending = true;
		}
		goto end;
	} else {
		ret = mdss_fb_pan_idle(mfd);
+1 −0
Original line number Diff line number Diff line
@@ -358,6 +358,7 @@ struct msm_fb_data_type {
	bool mdss_fb_split_stored;

	u32 wait_for_kickoff;
	u32 skip_koff_wait;
	u32 thermal_level;

	int fb_mmap_type;