7900 XTX fails to train DisplayPort link on waking display
Brief summary of the problem:
On initial boot this monitor always works. This happens sometimes when the monitor is woken up via input after sleeping due to idle:
[ 4763.315577] [drm] perform_link_training_with_retries: Link(0) training attempt 1 of 4 failed @ rate(30) x lane(4) : fail reason:(8)
[ 4763.539267] [drm:dp_set_fec_ready [amdgpu]] *ERROR* dpcd write failed to set fec_ready
[ 4763.834332] [drm] perform_link_training_with_retries: Link(0) training attempt 2 of 4 failed @ rate(30) x lane(4) : fail reason:(1)
[ 4764.110830] [drm:dp_set_fec_ready [amdgpu]] *ERROR* dpcd write failed to set fec_ready
[ 4764.405786] [drm] perform_link_training_with_retries: Link(0) training attempt 3 of 4 failed @ rate(30) x lane(4) : fail reason:(1)
[ 4764.730994] [drm:dp_set_fec_ready [amdgpu]] *ERROR* dpcd write failed to set fec_ready
[ 4765.025669] [drm] enabling link 0 failed: 15
Sometimes the monitor will wake and display properly after this error, sometimes it does not. This setup doesn't seem to hit this issue with a Radeon 6900 XT but I no longer have the 6900 XT to confirm on recent kernels.
The monitor also has a 160Hz overclocking mode which always fails to display properly (either black screen or corrupted display). I'm running it at the stock 144Hz speed because of that.
Hardware description:
- CPU: Ryzen 7950x
- GPU: Radeon RX 7900 XTX - 03:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Device [1002:744c] (rev c8)
- System Memory: DDR5 6000 64GB
- Display(s): LG 32GQ950
- Type of Display Connection: DisplayPort 1.4 - 4k@144Hz
System information:
- Distro name and Version: Ubuntu 22.10
- Kernel version: Linux 6.2.0-060200rc4-generic #202301151633 SMP PREEMPT_DYNAMIC Sun Jan 15 16:40:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
How to reproduce the issue:
Waking and sleeping the monitor multiple times will trigger this after several attempts. I tested this with amdgpu.ppfeaturemask=0xfffdffff
to potentially work around other issues with this GPU.