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

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

Merge "disp: msm: sde: use new state when checking conn-crtc association" into...

Merge "disp: msm: sde: use new state when checking conn-crtc association" into display-kernel.lnx.5.4
parents 6db21fc3 1ec61a0b
Loading
Loading
Loading
Loading
+14 −11
Original line number Diff line number Diff line
@@ -4873,6 +4873,7 @@ static int sde_crtc_atomic_check(struct drm_crtc *crtc,
	struct sde_multirect_plane_states *multirect_plane = NULL;
	struct drm_connector *conn;
	struct drm_connector_list_iter conn_iter;
	struct drm_connector_state *conn_state;

	if (!crtc) {
		SDE_ERROR("invalid crtc\n");
@@ -4908,6 +4909,19 @@ static int sde_crtc_atomic_check(struct drm_crtc *crtc,
	if (state->active_changed)
		state->mode_changed = true;

	/* identify connectors attached to this crtc */
	cstate->num_connectors = 0;
	drm_connector_list_iter_begin(dev, &conn_iter);
	drm_for_each_connector_iter(conn, &conn_iter) {
		conn_state = drm_atomic_get_connector_state(state->state, conn);

		if (conn_state && conn_state->crtc == crtc &&
				cstate->num_connectors < MAX_CONNECTORS) {
			cstate->connectors[cstate->num_connectors++] = conn;
		}
	}
	drm_connector_list_iter_end(&conn_iter);

	rc = _sde_crtc_check_dest_scaler_data(crtc, state);
	if (rc) {
		SDE_ERROR("crtc%d failed dest scaler check %d\n",
@@ -4922,17 +4936,6 @@ static int sde_crtc_atomic_check(struct drm_crtc *crtc,
		goto end;
	}

	/* identify connectors attached to this crtc */
	cstate->num_connectors = 0;

	drm_connector_list_iter_begin(dev, &conn_iter);
	drm_for_each_connector_iter(conn, &conn_iter)
		if (conn->state && conn->state->crtc == crtc &&
				cstate->num_connectors < MAX_CONNECTORS) {
			cstate->connectors[cstate->num_connectors++] = conn;
		}
	drm_connector_list_iter_end(&conn_iter);

	_sde_crtc_setup_is_ppsplit(state);
	_sde_crtc_setup_lm_bounds(crtc, state);