Commit 8fb3e25c authored by Lyude Paul's avatar Lyude Paul
Browse files

drm/nouveau/kms/nv50-: Fix drm_dp_remove_payload() invocation



We changed the semantics for this in:

commit e761cc20 ("drm/display/dp_mst: Handle old/new payload states in
drm_dp_remove_payload()")

But I totally forgot to update this properly in nouveau. So, let's do that.

Signed-off-by: default avatarLyude Paul <lyude@redhat.com>
Reviewed-by: default avatarKarol Herbst <kherbst@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230613210529.552098-1-lyude@redhat.com
parent 0c3855ba
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -909,15 +909,19 @@ nv50_msto_prepare(struct drm_atomic_state *state,
	struct nouveau_drm *drm = nouveau_drm(msto->encoder.dev);
	struct nv50_mstc *mstc = msto->mstc;
	struct nv50_mstm *mstm = mstc->mstm;
	struct drm_dp_mst_atomic_payload *payload;
	struct drm_dp_mst_topology_state *old_mst_state;
	struct drm_dp_mst_atomic_payload *payload, *old_payload;

	NV_ATOMIC(drm, "%s: msto prepare\n", msto->encoder.name);

	old_mst_state = drm_atomic_get_old_mst_topology_state(state, mgr);

	payload = drm_atomic_get_mst_payload_state(mst_state, mstc->port);
	old_payload = drm_atomic_get_mst_payload_state(old_mst_state, mstc->port);

	// TODO: Figure out if we want to do a better job of handling VCPI allocation failures here?
	if (msto->disabled) {
		drm_dp_remove_payload(mgr, mst_state, payload, payload);
		drm_dp_remove_payload(mgr, mst_state, old_payload, payload);

		nvif_outp_dp_mst_vcpi(&mstm->outp->outp, msto->head->base.index, 0, 0, 0, 0);
	} else {