External Monitor Not Working at Full Resolution on Fedora 41 with Kernel 6.11.5-300

Description:
I am experiencing issues with my external monitor after updating to Fedora 41 with kernel 6.11.5-300.fc41.x86_64. The monitor is detected correctly, but I am unable to set it to its full resolution and refresh rate without encountering display problems. This issue was not present when using Fedora 40 or older kernel versions.

System Details:

  • Laptop Model: MSI Modern Intel 7
  • External Monitor: Acer Technologies 24"
  • Connections Tried:
    • USB-C to DisplayPort
    • HDMI

Issue Description:
When attempting to set the monitor to its native resolution (1440p at 144 Hz), either the display turns off or the output appears grainy, especially in gray areas. The issue is present in both GNOME Xorg and Wayland sessions. Booting from a Fedora 40 live USB, the monitor functions correctly at the intended resolution and refresh rate, so it seems specific to Fedora 41 and the current kernel.

Additional Information:
I have tested multiple settings and even reverted to an older kernel (6.10.10-200.fc40.x86_64), where the monitor can reach 120 Hz without issues but still shows grainy output at 144 Hz.

Actual Behavior:
Setting the refresh rate above 120 Hz either results in a grainy display or the monitor turning off.

Questions/Comments:

  • Is this a known issue with the current kernel version?
  • Are there any workarounds or patches available to address this?

Thank you for your assistance!

Hello,

I have the same problem with 4k@120Hz via HDMI on a Lenovo Thinkpad P14s Gen2 AMD in Fedora 41 and Bluefin (gts, latest and stable tested with f-sync kernel 6.11.3 and 6.11.6). I think it started around kernel 6.10. Haven’t used that device much in the past months.
Fedora 40 does work via iso, but haven’t checked the kernel there.

Have you found a solution/workaround?

Regards,
Prankst3r

edit:
I changed the sclk and mclk of the amdgpu to profile_peak and high/low. doesn’t work. neither does setting amdgpu.dcdebugmask=0x10 as karg. dis/enabling vrr doesn’t work too.

Kernel 6.11.7 didn’t fix it …

Still haven’t found out what exactly is the issue. Most amd apu/gpu problems since kernel 6.11 are related to powersaving and too low frequencies for memory from what I’ve read.
Skimmed through some kernel changelogs (mostly 6.11.3-6.11.7) and haven’t found anything related too.

Similar problem with 4K on a NVIDIA Quadro M2000.

I could check that the root cause appears to be in the way modes are enumerated by the kernel:

# cat /sys/class/drm/card0/card0-DP-4/modes
1920x1080
1920x1080
1920x1080
1920x1080
1920x1080

This is despite the EDID being correctly read by the kernel and showing the 4K display resolution:

# cat /sys/class/drm/card0/card0-DP-4/edid | edid-decode  
[snip]
lock 1, CTA-861 Extension Block:
  Revision: 3
  Underscans IT Video Formats by default
  Basic audio support
  Supports YCbCr 4:4:4
  Supports YCbCr 4:2:2
  Native detailed modes: 0
  Video Data Block:
    VIC  97:  3840x2160   60.000000 Hz  16:9    135.000 kHz    594.000000 MHz
    VIC  18:   720x576    50.000000 Hz  16:9     31.250 kHz     27.000000 MHz
    VIC   3:   720x480    59.940060 Hz  16:9     31.469 kHz     27.000000 MHz
    VIC  19:  1280x720    50.000000 Hz  16:9     37.500 kHz     74.250000 MHz

EDID hex output:

00 ff ff ff ff ff ff 00 4c 2d 4c 0c 46 58 4d 30
26 1b 01 03 80 3d 23 78 2a 5f b1 a2 57 4f a2 28
0f 50 54 bf ef 80 71 4f 81 00 81 c0 81 80 95 00
a9 c0 b3 00 01 01 08 e8 00 30 f2 70 5a 80 b0 58
8a 00 60 59 21 00 00 1e 00 00 00 fd 00 18 4b 1e
87 3c 00 0a 20 20 20 20 20 20 00 00 00 fc 00 55
32 38 45 35 39 30 0a 20 20 20 20 20 00 00 00 ff
00 48 54 50 4a 39 30 35 39 31 36 0a 20 20 01 23

02 03 34 f0 4d 61 12 03 13 04 20 22 1f 10 5f 60
5d 5e 23 09 07 07 83 01 00 00 6d 03 0c 00 20 00
80 3c 20 10 60 01 02 03 67 d8 5d c4 01 78 80 03
e3 0f 01 04 02 3a 80 18 71 38 2d 40 58 2c 45 00
60 59 21 00 00 1e 02 3a 80 d0 72 38 2d 40 10 2c
45 80 60 59 21 00 00 1e 01 1d 00 72 51 d0 1e 20
6e 28 55 00 60 59 21 00 00 1e 56 5e 00 a0 a0 a0
29 50 30 20 35 00 60 59 21 00 00 1a 00 00 00 74