On Tue, 2019-01-08 at 19:57 +0000, Wentland, Harry wrote: > On 2019-01-04 7:14 p.m., Lyude Paul 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 :). > > > > This version just contains some changes that I forgot to make that had > > been requested much earlier, mainly in regards to the atomic checking > > code I added to i915 and nouveau (but not the helpers). > > > > Also, per-request I've made a gitlab branch available for this: > > > > https://gitlab.freedesktop.org/lyudess/linux/commits/wip/mst-dual-kref-start-v4 > > > > Lyude Paul (16): > > 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 > > > > Somehow I left my RB on v2 for a while. Either way patches 2-5, and 7 are > Reviewed-by: Harry Wentland <harry.wentland@xxxxxxx> > > Haven't had a chance to take a look at 13-15 but noticed the "Changes since > v" mention versions that either aren't on the mailing list or don't line up > with the patch versioning. That's intentional! Those were patches that were part of a different series that got replaced by this one, so the older versions are from the previous series > > Harry > > > .../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 | 938 ++++++++++++++---- > > 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, 1203 insertions(+), 249 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 > > -- Cheers, Lyude Paul _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel