NVIDIA / NVIDIA/open-gpu-kernel-modules

RTX 4090 [nvidia-open 610.43.02]: HDMI 2.1 FRL rate mis-selected on sink power-cycle — 4K@143.86/120/100 pruned to TMDS until reboot (KDE Wayland)

Open
#1,204 0 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
17.4k
Forks
1.9k
PR merge metrics
No merged PRs in 30d

Description

RTX 4090 [nvidia-open 610.43.02]: HDMI 2.1 FRL rate mis-selected on sink power-cycle — 4K@143.86/120/100 pruned to TMDS until reboot (KDE Wayland)

System

  • GPU: RTX 4090 (AD102) · driver 610.43.02 open · kernel 7.0.12 (CachyOS)
  • KWin 6.6.5 / Plasma 6.6.5, Wayland
  • Display: Samsung QN90B 43" (HDMI 2.1 FRL, VRRmax 144, DSC 1.2a) on HDMI-A-1
  • Connector NOT force-enabled (no video=HDMI-A-1:e) — so this is not #1084.

Summary

Cold boot trains FRL and 3840x2160@143.86 (VRR-derived) works. After the TV is
physically powered OFF and back ON during a running session, FRL is mis-selected
on re-detect: link drops to TMDS and every >594 MHz mode (4K@100/120/143.86) is
pruned — only 4K@60 remains. Full reboot restores it. Windows 11 on the same
hardware recovers without reboot.

Proof it is driver-side

  • Raw EDID byte-identical good vs bad (cmp clean, product code unchanged) → not the EDID.
  • With the helper daemon stopped, kscreen-doctor -o itself drops 4K>60 → mode list is from the driver, not KWin. HDR on/off does not change the list.
  • nvidia-bug-report in the bad state reports protocol : TMDS.
  • No userspace recovery: KMS re-modeset (rejected — single output) and DPMS off/on do not re-train; only reboot / another physical power-cycle does.

force_frl_rate gradient (the bug is in FRL rate selection)

/sys/module/nvidia_modeset/parameters/force_frl_rate, retested per value (reboot + power-cycle):

value hotplug result
0 (default) TMDS, 4K@60 (143.86 only on cold boot)
1 (max FRL, no DSC) FRL, 4K@120 — 143.86 never returns
2 (max FRL + DSC) TMDS, 4K@60 (DSC negotiation fails)

Forcing the rate deterministically changes the outcome, and none restore the
VRR-derived 4K@143.86 on hotplug → points at the FRL rate / VRR-mode selection
on the hotplug re-detect path.

Repro

  1. Boot → 4K@143.86 works.
  2. Power off TV, wait ~10s, power on.
  3. 4K@100/120/143.86 gone, stuck at 4K@60 until reboot (non-deterministic).

Evidence

GOOD/BAD display-state dumps + both raw EDIDs (byte-identical):
https://gist.github.com/filipemendespi/dd6c1db5ec179b606667638a6a927567
(EDIDs are base64; base64 -d FILE.b64 > FILE)
Full nvidia-bug-report.log.gz (captured in the BAD state, shows protocol : TMDS)
available privately on request — withheld here as it contains host/network identifiers.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the HDMI-A-1 power-cycle sequence and compare the supplied good and bad state dumps and raw EDIDs. Inspect the nvidia_modeset force_frl_rate results and the bad-state nvidia-bug-report showing TMDS; done means hotplug reselects FRL and restores the 4K@100/120/143.86 modes without reboot.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
computer-graphics, operating-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.