Commit 78c2925d authored by Dmitry Baryshkov's avatar Dmitry Baryshkov
Browse files

drm/msm/dpu: rearrange QoS setting code

parent 2defa907
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -1079,10 +1079,10 @@ static void dpu_plane_sspp_update_pipe(struct drm_plane *plane,
		pipe->sspp->ops.setup_sourceaddress(pipe, layout);
	}

	_dpu_plane_set_qos_ctrl(plane, pipe, false, DPU_PLANE_QOS_PANIC_CTRL);

	/* override for color fill */
	if (pdpu->color_fill & DPU_PLANE_COLOR_FILL_FLAG) {
		_dpu_plane_set_qos_ctrl(plane, pipe, false, DPU_PLANE_QOS_PANIC_CTRL);

		/* skip remaining processing on color fill */
		return;
	}
@@ -1125,12 +1125,14 @@ static void dpu_plane_sspp_update_pipe(struct drm_plane *plane,

	_dpu_plane_set_qos_lut(plane, pipe, fmt, pipe_cfg);
	_dpu_plane_set_danger_lut(plane, pipe, fmt);
	_dpu_plane_set_qos_ctrl(plane, pipe,
				pipe->sspp->idx != SSPP_CURSOR0 &&
				pipe->sspp->idx != SSPP_CURSOR1,
				DPU_PLANE_QOS_PANIC_CTRL);

	if (pipe->sspp->idx != SSPP_CURSOR0 &&
	    pipe->sspp->idx != SSPP_CURSOR1) {
		_dpu_plane_set_qos_ctrl(plane, pipe, true, DPU_PLANE_QOS_PANIC_CTRL);
	    pipe->sspp->idx != SSPP_CURSOR1)
		_dpu_plane_set_ot_limit(plane, pipe, pipe_cfg, frame_rate);
	}

	if (pstate->needs_qos_remap)
		_dpu_plane_set_qos_remap(plane, pipe);