On 8/25/26 4:18 PM, Mauricio Bellon wrote:
From: Mauricio Bellon <[email protected]>
Two related direct DisplayPort failures occur on DCN35 with a
high-refresh DSC stream using two-way ODM. A normal transition from
4K120 to 4K144 can commit successfully but produce no visible output.
After 4K144 is working, a long-pulse hotplug can reconstruct the same
stream but leave the monitor black.
The first patch stabilizes the DCN35 ODM update. It exposes the missing
ODM double-buffer pending-clear callback, keeps the horizontal timing
divider under manual control while programming the ODM topology, waits
for the update to complete, and restores the timing-derived target
manual mode.
The second patch enables sink DSC before source DSC in the DPMS-on
pre-enable path and removes the later redundant sink DSC enablement.
The complete series was built and booted as
7.1.0-bellon18-amd-final+ on a Lenovo ThinkPad X13 Gen 6 AMD with a
Krackan Point Radeon 840M and Corsair Xeneon 32UHD144 connected directly
through USB-C DP Alt Mode SST.
The following scenarios all produced stable visible output:
- 4K144 initial modeset
- 4K120 to 4K144
- 4K144 to 4K120 to 4K144
- 4K144 long-pulse unplug/replug
- repeated 4K144 unplug/replug cycles
This series covers the direct-SST modeset and hotplug reconstruction
failures. It does not claim to address the separate DPIA/MST warning
observed through the USB4 dock.
The commits retain my Lenovo author and Signed-off-by address. This
submission is sent through my personal Gmail account because Lenovo
email is not compatible with git send-email.
Bug report:
https://gitlab.freedesktop.org/drm/amd/-/issues/5033
Thanks for the submission. If there ends up being any changes to it, I
would suggest adding to both the code commits:
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/5033
No need to spin for now, whoever reviews and accepts this can add that
when committing.
Mauricio Bellon (2):
drm/amd/display: stabilize DCN35 ODM update sequencing
drm/amd/display: enable sink DSC before source DSC
.../amd/display/dc/hwss/dcn35/dcn35_hwseq.c | 20 +++++++++++++++++--
.../gpu/drm/amd/display/dc/link/link_dpms.c | 5 +++--
.../amd/display/dc/optc/dcn35/dcn35_optc.c | 2 ++
3 files changed, 23 insertions(+), 4 deletions(-)
base-commit: 232bf7d5453df6cc0d877a1003f9aa172e9750de