linux/drivers/gpu/drm/amd/display
Adrian Betschart 54c998c55f drm/amd/display: Don't replace a sink mode that shares the native totals
decide_crtc_timing_for_drm_display_mode() copies the native mode's CRTC
timing into the requested mode when clock, htotal and vtotal match.
That is meant for the modes amdgpu inserts itself:
amdgpu_dm_create_common_mode() duplicates the native mode and changes
only hdisplay and vdisplay, so those are sent with the native timing
and scaled.

A sink can also offer a real mode with the same clock and totals as
its native mode. CTA-861 VIC 102 (4096x2160@60) and VIC 97
(3840x2160@60) both use 594 MHz and 4400x2250. With 3840x2160@60 as
the preferred mode, a 4096x2160@60 request goes out with the 3840x2160
timing and the framebuffer scaled into it (dst 3840x2025 at y=67),
while the AVI InfoFrame still carries VIC 102. A JVC projector then
reports 3840x2160 and shows a corrupted right edge. 4096x2160@24,
whose totals differ, is sent and displayed correctly.

Inserted modes keep the native sync positions; a real mode with its
own active width does not. Compare those too, so only inserted modes
are patched.

Fixes: 4562236b3b ("drm/amd/dc: Add dc display driver (v2)")
Signed-off-by: Adrian Betschart <adrian.betschart@cinemaone.ch>
Assisted-by: Claude-Code:claude-opus-5-5
Tested-by: Dan Wheeler <daniel.wheeler@amd.com>
Reviewed-by: Roman Li <roman.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 22f9a2da10)
Cc: stable@vger.kernel.org
2026-10-07 13:13:32 -04:00
..
amdgpu_dm drm/amd/display: Don't replace a sink mode that shares the native totals 2026-10-07 13:13:32 -04:00
dc drm/amd/display: Fix sanitizer check for the DML frame size limit 2026-10-01 17:18:05 -04:00
dmub drm/amd/display: Add missing DMUB CACP and PR definitions 2026-08-06 12:43:44 -04:00
include drm/amd/display: Enable DCN6 sources compilation 2026-08-06 09:53:32 -04:00
modules drm/amd/display: Fix stale replay_events after mod_power stream removal 2026-10-01 17:18:05 -04:00
Kconfig drm/amd/display: Add KUnit tests for amdgpu_dm_colorop 2026-06-03 13:41:32 -04:00
Makefile