Skip to content

MST refcounting/atomic helpers cleanup

Lyude Paul amd-gfx dri-devel intel-gfx nouveau 3 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v7 Latest15 of 20 patches 0 repliesNew
  2. v612 of 20 patches 0 repliesSuperseded
  3. v519 of 20 patches 7 repliesSuperseded

15 of 20 patches are in this archive. The cover letter announces 20.

Patches in v7 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/20drm/dp_mst: Fix some formatting in drm_dp_add_port()drivers/gpu/drm/drm_dp_mst_topology.c+12 -60 replies
2/20drm/dp_mst: Fix some formatting in drm_dp_payload_send_msg()drivers/gpu/drm/drm_dp_mst_topology.c+8 -60 replies
4/20drm/dp_mst: Fix some formatting in drm_dp_mst_deallocate_vcpi()drivers/gpu/drm/drm_dp_mst_topology.c+2 -10 replies
5/20drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and friendsdrivers/gpu/drm/drm_dp_mst_topology.c+62 -520 replies
6/20drm/dp_mst: Introduce new refcounting scheme for mstbs and portsDocumentation/gpu/dp-mst/topology-figure-1.dot Documentation/gpu/dp-mst/topology-figure-2.dot Documentation/gpu/dp-mst/topology-figure-3.dot +3 more+614 -690 replies
7/20drm/dp_mst: Restart last_connected_port_and_mstb() if topology ref failsdrivers/gpu/drm/drm_dp_mst_topology.c+34 -100 replies
8/20drm/dp_mst: Stop releasing VCPI when removing ports from topologydrivers/gpu/drm/drm_dp_mst_topology.c+0 -80 replies
10/20drm/i915: Keep malloc references to MST portsdrivers/gpu/drm/i915/intel_connector.c drivers/gpu/drm/i915/intel_dp_mst.c+5 -00 replies
11/20drm/amdgpu/display: Keep malloc ref to MST portdrivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c+7 -40 replies
13/20drm/nouveau: Remove unnecessary VCPI checks in nv50_msto_cleanup()drivers/gpu/drm/nouveau/dispnv50/disp.c+9 -60 replies
14/20drm/nouveau: Keep malloc references to MST portsdrivers/gpu/drm/nouveau/dispnv50/disp.c+6 -00 replies
15/20drm/nouveau: Stop unsetting mstc->port, use malloc refsdrivers/gpu/drm/nouveau/dispnv50/disp.c+5 -130 replies
16/20drm/nouveau: Grab payload lock in nv50_msto_payload()drivers/gpu/drm/nouveau/dispnv50/disp.c+6 -00 replies
17/20drm/dp_mst: Add some atomic state iterator macrosdrivers/gpu/drm/drm_dp_mst_topology.c include/drm/drm_dp_mst_helper.h+99 -20 replies
18/20drm/dp_mst: Start tracking per-port VCPI allocationsdrivers/gpu/drm/drm_dp_mst_topology.c drivers/gpu/drm/i915/intel_display.c drivers/gpu/drm/i915/intel_dp_mst.c +1 more+266 -620 replies

Reviews trailers per patch

All 15 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchHarry WentlandDaniel VetterBen Skeggs
SeriesR-b R-b R-b R-b R-b R-b R-b
1/20R-b R-b
2/20R-b R-b
4/20R-b R-b
5/20R-b R-b
6/20R-b R-b
7/20R-b R-b
8/20R-b R-b
10/20R-b
11/20R-b
13/20R-b
14/20R-b
15/20R-b
16/20R-b
17/20R-b
18/20R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v7 thread

Cover letter [PATCH v7 00/20] MST refcounting/atomic helpers cleanup

This is the series I've been working on for a while now to get all of the atomic DRM drivers in the tree to use the atomic MST helpers, and to make the atomic MST helpers actually idempotent. Turns out it's a lot more difficult to do that without also fixing how port and branch device refcounting works so that it actually makes sense, since the current upstream implementation requires a ton of magic in the atomic helpers to work around properly and in many situations just plain doesn't work as intended.

There's still more cleanup that can be done, but I think this is a good place to start off for now :).

Not available on gitlab, as this is the final version of the series before I push! hooray~

Lyude Paul (20):
drm/dp_mst: Fix some formatting in drm_dp_add_port() drm/dp_mst: Fix some formatting in drm_dp_payload_send_msg() drm/dp_mst: Fix some formatting in drm_dp_mst_allocate_vcpi() drm/dp_mst: Fix some formatting in drm_dp_mst_deallocate_vcpi() drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and
friends
drm/dp_mst: Introduce new refcounting scheme for mstbs and ports drm/dp_mst: Restart last_connected_port_and_mstb() if topology ref
fails
drm/dp_mst: Stop releasing VCPI when removing ports from topology drm/dp_mst: Fix payload deallocation on hotplugs using malloc refs drm/i915: Keep malloc references to MST ports drm/amdgpu/display: Keep malloc ref to MST port drm/nouveau: Remove bogus cleanup in nv50_mstm_add_connector() drm/nouveau: Remove unnecessary VCPI checks in nv50_msto_cleanup() drm/nouveau: Keep malloc references to MST ports drm/nouveau: Stop unsetting mstc->port, use malloc refs drm/nouveau: Grab payload lock in nv50_msto_payload() drm/dp_mst: Add some atomic state iterator macros drm/dp_mst: Start tracking per-port VCPI allocations drm/dp_mst: Check payload count in drm_dp_mst_atomic_check() drm/nouveau: Use atomic VCPI helpers for MST

 .../gpu/dp-mst/topology-figure-1.dot          |  52 +
 .../gpu/dp-mst/topology-figure-2.dot          |  56 ++
 .../gpu/dp-mst/topology-figure-3.dot          |  59 ++
 Documentation/gpu/drm-kms-helpers.rst         |  26 +-
 .../display/amdgpu_dm/amdgpu_dm_mst_types.c   |  11 +-
 drivers/gpu/drm/drm_dp_mst_topology.c         | 946 ++++++++++++++----
 drivers/gpu/drm/i915/intel_connector.c        |   4 +
 drivers/gpu/drm/i915/intel_display.c          |   4 +
 drivers/gpu/drm/i915/intel_dp_mst.c           |  55 +-
 drivers/gpu/drm/nouveau/dispnv50/disp.c       |  96 +-
 include/drm/drm_dp_mst_helper.h               | 151 ++-
 11 files changed, 1204 insertions(+), 256 deletions(-)
 create mode 100644 Documentation/gpu/dp-mst/topology-figure-1.dot
 create mode 100644 Documentation/gpu/dp-mst/topology-figure-2.dot
 create mode 100644 Documentation/gpu/dp-mst/topology-figure-3.dot
Signature · 6 lines
2.20.1

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx