External monitor not working at full resolution after installing fedora 41 beta

Hi, after installing the fedora 41 beta my external monitor did not seem to work at all but was detected. After some time I found out that I could get it to work if I lowered the resolution and/or refresh rate of the monitor from 1440p@144hz to 1080p@100hz. The options for higher resolutions and refresh rates are shown in both gnome settings and xrandr but selecting them does nothing or makes the monitor turn off (tried both gnome xorg and wayland sessions, even other desktop environments). Booting the fedora 40 live USB the problem is not there anymore.

Also not related to the problem above, but why does VRR not show up in the settings for my external monitor? In the OSD it says it is enabled and active but gnome settings does not give me the option to enable it. (This is not new, happened also on f40)

My current setup:
Thinkpad T14 gen3 AMD (Ryzen 6850u)
Thinkpad 40AY USB dock
LG 27GL850 monitor connected with a displayport cable to the docking station

Thanks.

We need more details of your system.

Can you please post the output of inxi -Fzxx (you will need to install inxi package) as pre-formatted text, that is the </> button.

Hi, here’s the output from my terminal:

System:
  Kernel: 6.11.0-63.fc41.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 2.43-3.fc41
  Desktop: GNOME v: 47.0 tk: GTK v: 3.24.43 wm: gnome-shell dm: GDM
    Distro: Fedora Linux 41 (Workstation Edition Prerelease)
Machine:
  Type: Laptop System: LENOVO product: 21CF002YMH v: ThinkPad T14 Gen 3
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: LENOVO model: 21CF002YMH v: SDK0T76538 WIN
    serial: <superuser required> part-nu: LENOVO_MT_21CF_BU_Think_FM_ThinkPad
    T14 Gen 3 UEFI: LENOVO v: R23ET78W (1.54 ) date: 08/05/2024
Battery:
  ID-1: BAT0 charge: 49.6 Wh (95.4%) condition: 52.0/52.5 Wh (99.0%)
    volts: 17.2 min: 15.5 model: SMP LNV-5B10W51864�� serial: <filter>
    status: not charging
CPU:
  Info: 8-core model: AMD Ryzen 7 PRO 6850U with Radeon Graphics bits: 64
    type: MT MCP arch: Zen 3+ rev: 1 cache: L1: 512 KiB L2: 4 MiB L3: 16 MiB
  Speed (MHz): avg: 917 high: 2171 min/max: 400/4768 boost: enabled cores:
    1: 1396 2: 400 3: 2171 4: 400 5: 400 6: 1397 7: 1931 8: 1397 9: 1397 10: 400
    11: 400 12: 400 13: 1387 14: 400 15: 400 16: 400 bogomips: 86237
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD Rembrandt [Radeon 680M] vendor: Lenovo driver: amdgpu
    v: kernel arch: RDNA-2 pcie: speed: 16 GT/s lanes: 16 ports:
    active: DP-9,eDP-1 empty: DP-1, DP-2, DP-3, DP-4, DP-5, DP-6, DP-7, DP-8,
    HDMI-A-1, Writeback-1 bus-ID: 04:00.0 chip-ID: 1002:1681 temp: 42.0 C
  Device-2: Bison Integrated RGB Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 bus-ID: 5-1:2 chip-ID: 5986:2142
  Display: wayland server: X.org v: 1.21.1.13 with: Xwayland v: 24.1.2
    compositor: gnome-shell driver: X: loaded: amdgpu
    unloaded: fbdev,modesetting,vesa dri: radeonsi gpu: amdgpu display-ID: 0
  Monitor-1: DP-9 model: LG (GoldStar) ULTRAGEAR res: 2560x1440 dpi: 109
    diag: 685mm (27")
  Monitor-2: eDP-1 model-id: CSO 0x1404 res: 1920x1200 dpi: 161
    diag: 356mm (14")
  API: OpenGL v: 4.6 vendor: amd mesa v: 24.2.3 glx-v: 1.4 es-v: 3.2
    direct-render: yes renderer: AMD Radeon Graphics (radeonsi rembrandt LLVM
    19.1.0 DRM 3.58 6.11.0-63.fc41.x86_64) device-ID: 1002:1681
    display-ID: :0.0
  API: Vulkan v: 1.3.290 surfaces: xcb,xlib,wayland device: 0
    type: integrated-gpu driver: N/A device-ID: 1002:1681 device: 1 type: cpu
    driver: N/A device-ID: 10005:0000
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
Audio:
  Device-1: AMD Rembrandt Radeon High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 16
    bus-ID: 04:00.1 chip-ID: 1002:1640
  Device-2: AMD ACP/ACP3X/ACP6x Audio Coprocessor vendor: Lenovo
    driver: snd_pci_acp6x v: kernel pcie: speed: 16 GT/s lanes: 16
    bus-ID: 04:00.5 chip-ID: 1022:15e2
  Device-3: AMD Family 17h/19h HD Audio vendor: Lenovo driver: snd_hda_intel
    v: kernel pcie: speed: 16 GT/s lanes: 16 bus-ID: 04:00.6 chip-ID: 1022:15e3
  Device-4: Lenovo ThinkPad USB-C Dock Audio
    driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 2.0 speed: 12 Mb/s
    lanes: 1 bus-ID: 9-1.2:4 chip-ID: 17ef:30b0
  API: ALSA v: k6.11.0-63.fc41.x86_64 status: kernel-api
  Server-1: PipeWire v: 1.2.5 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: Lenovo driver: r8169 v: kernel pcie: speed: 2.5 GT/s lanes: 1
    port: 2000 bus-ID: 01:00.0 chip-ID: 10ec:8168
  IF: enp1s0f0 state: down mac: <filter>
  Device-2: Qualcomm QCNFA765 Wireless Network Adapter vendor: Lenovo
    driver: ath11k_pci v: kernel pcie: speed: 5 GT/s lanes: 1 bus-ID: 02:00.0
    chip-ID: 17cb:1103
  IF: wlp2s0 state: up mac: <filter>
  Device-3: Realtek RTL8153 Gigabit Ethernet Adapter driver: r8152 type: USB
    rev: 3.2 speed: 5 Gb/s lanes: 1 bus-ID: 10-1.1:3 chip-ID: 0bda:8153
  IF: enp5s0f4u1u1 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
  Local Storage: total: 476.94 GiB used: 424.51 GiB (89.0%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: MZVL4512HBLU-00BL7
    size: 476.94 GiB speed: 63.2 Gb/s lanes: 4 serial: <filter> temp: 26.9 C
Partition:
  ID-1: / size: 475.34 GiB used: 424.11 GiB (89.2%) fs: btrfs dev: /dev/dm-0
    mapped: luks-c24ce4e6-e998-43fd-be32-abe140faf686
  ID-2: /boot size: 973.4 MiB used: 390.6 MiB (40.1%) fs: ext4
    dev: /dev/nvme0n1p2
  ID-3: /boot/efi size: 598.8 MiB used: 19.4 MiB (3.2%) fs: vfat
    dev: /dev/nvme0n1p1
  ID-4: /home size: 475.34 GiB used: 424.11 GiB (89.2%) fs: btrfs
    dev: /dev/dm-0 mapped: luks-c24ce4e6-e998-43fd-be32-abe140faf686
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 52.0 C mobo: N/A gpu: amdgpu temp: 43.0 C
  Fan Speeds (rpm): fan-1: 1949
Info:
  Memory: total: 16 GiB note: est. available: 14.39 GiB used: 5.14 GiB (35.7%)
  Processes: 456 Power: uptime: 2m wakeups: 0 Init: systemd v: 256
    target: graphical (5) default: graphical
  Packages: pm: flatpak pkgs: 112 Compilers: clang: 19.1.0 alt: 17/18
    gcc: 14.2.1 Shell: Zsh v: 5.9 running-in: kgx inxi: 3.3.34


The DP-9 monitor resolution here is 1440p since somehow 1440p@100hz works in the wayland session. Still not a solution as the monitor doesn’t work at full refresh rate, is unavailable during boot and in gdm and also behaves weird at shutdown (for eg. if the night light is enabled and I click the shutdown button the laptop screen shows plymouth but the external screen disables the night light and is stuck at the last frame before shutting down the laptop)

Did the higher refresh rate work with under f40?

Yes, I even flashed a live USB with f40 to check it and it had zero issues with the full refresh rate or the bugs during boot, plymouth etc

Try booting on the oldest kernel that you see in grub.
Does the monitor work as you expect then?

Tried it out just now, using kernel 6.10.10-200.fc40.x86_64 both 144hz and 120hz are able to be set. I still wouldn’t call it working as expected as there is a weird bug happening when I set the refresh rate to 144hz: the monitor output becomes really grainy in gray areas. Just to confirm, I once again booted a F40 live usb and the grain is no there. 120hz works as intended on the older kernel with zero grain.
Here’s a photo taken with my phone of the grain (couldn’t get a better photo wihtout moire), it is a bit hard to take a photo of that shows it comparable to real life.

Is the VRR NVIDIA G-Sync related? I don’t think an AMD GPU supports that.

So the newer kernel does not work, which means that the AMD GPU driver in the kernel is changed I think.

I have been trying yo find the specs for the 680M and cannot find them.
Does this chip actually support 140Hz?

Does 60Hz work?

I have used this setup since fedora 39 and have had zero issues. The software says it supports 144hz and the monitor OSD also shows it as being 144hz. I looked at the lenovo specsheet and it specifically says the USB port has support for DisplayPort™ 1.4a

Yes, on all kernels and os versions all framerates <= 100hz function as intended.

The monitor is actually just Gsync certified, so technically freesync, i believe it should work. With further research i found out on the Framework forums that the amd gpu driver has a whitelist for docks that are allowed to have VRR on monitors. (currently only the official steamdeck dock)

Update: I just updated my system to kernel 6.11.2-300.fc41.x86_64 x86_64 and the the refresh rate and grain problems are gone.

2 Likes

Hi, after installing Fedora 41 distro upgrade, I started observing the following behaviour that might be related with the above problem:

My setup:

  • KDE
  • laptop connected to external monitor via USB-C (both PD and data)
  • laptop lid closed, external monitor is the only screen
  • external USB keyboard connected via the monitor
  • brightness set on external monitor to e.g. 50%

Scenario:

  • put laptop to sleep
  • resume from by pressing Wake up on an external keyboard

Expected outcome (this was the behaviour prior the distro upgrade):

  • laptop is resumed
  • external monitor is on, with brightness set to the last configured value

New outcome (after distro upgrade):

  • laptop is not resumed
  • I am forced to open the lid, hit some button on the laptop keyboard which brings laptop from sleep
  • no image appears on external display (the display shows message there’s no data), neither on laptop display (it’s switched off)
  • after I unplugged and replugged the external display (via USB-C), the external screen starts working
  • however, the brightness is set to 100% regardless the original setting

It is reproducible every time.

This is very annoying. I would like to bring the original behaviour back.
I.e.

  • be able to wake laptop via external keyboard, without the need to open the laptop lid
  • external display should kick in immediately, moreover with the original brightness setting

Update: the problem seems to be related with kernel 6.11 that is shipped with Fedora 41.

Downgrading to 6.6 LTS solved the issue.