All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/dp_mst: Remove VCPI while disabling topology mgr
@ 2019-12-02  3:57 ` Wayne Lin
  0 siblings, 0 replies; 8+ messages in thread
From: Wayne Lin @ 2019-12-02  3:57 UTC (permalink / raw)
  To: dri-devel, amd-gfx
  Cc: Jerry.Zuo, harry.wentland, Nicholas.Kazlauskas, Wayne Lin

[Why]
While disabling mst topology manager in
drm_dp_mst_topology_mgr_set_mst(), now just reset the mgr->payloads
but doesn't handle the mgr->proposed_vcpis.

[How]
Remove mgr->proposed_vcpis to NULL.

Signed-off-by: Wayne Lin <Wayne.Lin@amd.com>
---
 drivers/gpu/drm/drm_dp_mst_topology.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index ae5809a1f19a..81e92b260d7a 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -3386,6 +3386,7 @@ static int drm_dp_get_vc_payload_bw(u8 dp_link_bw, u8  dp_link_count)
 int drm_dp_mst_topology_mgr_set_mst(struct drm_dp_mst_topology_mgr *mgr, bool mst_state)
 {
 	int ret = 0;
+	int i = 0;
 	struct drm_dp_mst_branch *mstb = NULL;
 
 	mutex_lock(&mgr->lock);
@@ -3446,10 +3447,21 @@ int drm_dp_mst_topology_mgr_set_mst(struct drm_dp_mst_topology_mgr *mgr, bool ms
 		/* this can fail if the device is gone */
 		drm_dp_dpcd_writeb(mgr->aux, DP_MSTM_CTRL, 0);
 		ret = 0;
+		mutex_lock(&mgr->payload_lock);
 		memset(mgr->payloads, 0, mgr->max_payloads * sizeof(struct drm_dp_payload));
 		mgr->payload_mask = 0;
 		set_bit(0, &mgr->payload_mask);
+		for (i = 0; i < mgr->max_payloads; i++) {
+			struct drm_dp_vcpi *tmp_vcpi = mgr->proposed_vcpis[i];
+
+			if (tmp_vcpi) {
+				tmp_vcpi->vcpi = 0;
+				tmp_vcpi->num_slots = 0;
+			}
+			mgr->proposed_vcpis[i] = NULL;
+		}
 		mgr->vcpi_mask = 0;
+		mutex_unlock(&mgr->payload_lock);
 	}
 
 out_unlock:
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-12-03  7:47 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-02  3:57 [PATCH] drm/dp_mst: Remove VCPI while disabling topology mgr Wayne Lin
2019-12-02  3:57 ` Wayne Lin
2019-12-02  3:57 ` Wayne Lin
2019-12-03  0:02 ` Lyude Paul
2019-12-03  0:02   ` Lyude Paul
2019-12-03  7:47   ` Lin, Wayne
2019-12-03  7:47     ` Lin, Wayne
2019-12-03  7:47     ` Lin, Wayne

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.