[PATCH v4 0/5] MST DSC support in drm-mst

Francis, David David.Francis at amd.com
Fri Aug 23 20:24:12 UTC 2019


Adding DSC functionality to drm_dp_mst_atomic_check() is a good idea.
However, until amdgpu switches over to that system, I wouldn't be able
to test those changes. Making that switch is on our TODO list, and it would
fix a number of problems with our current MST implementation, but
it's going to be a major rewrite.

MST DSC hardware is already on the market. It would be expedient to
merge the patches we need for Navi support sooner and update
drm_dp_mst_atomic_check when we're able to test it.

David Francis

________________________________________
From: Lyude Paul <lyude at redhat.com>
Sent: August 22, 2019 8:03 PM
To: Francis, David; dri-devel at lists.freedesktop.org; Manasi Navare
Subject: Re: [PATCH v4 0/5] MST DSC support in drm-mst

OK-done reviewing, but there's some stuff missing here. The PBN bandwidth
checks in https://patchwork.freedesktop.org/patch/325604/?series=65423&rev=3
need to be moved into drm_dp_mst_atomic_check(), along with moving amdgpu over to using drm_dp_mst_atomic_check(). Doing so will also give us PBN bandwidth checks in both i915 and nouveau as well, and keeps the bandwidth calculation where it should be.

Additionally, you still need to move the code here into an MST atomic helper
or drm_dp_mst_atomic_check() as well:

https://patchwork.freedesktop.org/patch/325611/?series=65423&rev=3

Unless I'm mistaken, adding each CRTC which has a connector whose PBN requires
recalculation into the atomic state is something every DRM driver is going to
need to do. And, you can do this more easily by adding PBN information into
drm_dp_mst_topology_state. Yes-it's a lot of locks, but since every connector
in an MST topology is sharing the bandwidth on the same link it's kind of
expected. I already know I'm going to have to do basically the same thing with
every driver once I've got the time to actually implement fallback link rate
retraining with MST topologies.

If you need help figuring out how to structure this in a way that works for
all drivers, I'm willing to help and I'm sure Manasi is as well.

On Thu, 2019-08-22 at 09:57 -0400, David Francis wrote:
> Add necessary support for MST DSC.
> (Display Stream COmpression over Multi-Stream Transport)
>
> v4: Split patchset and rebase onto drm-tip
>
> David Francis (5):
>   drm/dp-mst: Add PBN calculation for DSC modes
>   drm/dp-mst: Parse FEC capability on MST ports
>   drm/dp-mst: Add MST support to DP DPCD R/W functions
>   drm/dp-mst: Fill branch->num_ports
>   drm/dp-mst: Add helpers for querying and enabling MST DSC
>
>  drivers/gpu/drm/drm_dp_aux_dev.c      |  12 +-
>  drivers/gpu/drm/drm_dp_helper.c       |  10 +-
>  drivers/gpu/drm/drm_dp_mst_topology.c | 243 ++++++++++++++++++++++++++
>  include/drm/drm_dp_mst_helper.h       |   8 +-
>  4 files changed, 260 insertions(+), 13 deletions(-)
>
--
Cheers,
        Lyude Paul



More information about the dri-devel mailing list