[Nouveau] [PATCH v6 00/20] MST refcounting/atomic helpers cleanup

Ben Skeggs skeggsb at gmail.com
Fri Jan 11 00:43:12 UTC 2019


For the nouveau patches in the series:

Reviewed-By: Ben Skeggs <bskeggs at redhat.com>

On Fri, 11 Jan 2019 at 05:59, Lyude Paul <lyude at redhat.com> wrote:
>
> 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 :).
>
> Also available on gitlab:
>
> https://gitlab.freedesktop.org/lyudess/linux/commits/wip/mst-dual-kref-start-v6
>
> 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
>
> --
> 2.20.1
>
> _______________________________________________
> Nouveau mailing list
> Nouveau at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nouveau


More information about the Nouveau mailing list