linux/drivers/gpu/drm/amd/display/modules
Fangzhi Zuo 1f47aaf3ff drm/amd/display: Add HDMI 2.1 FreeSync support for AMD VSDB
why:
HDMI FRL sinks were not parsed for the AMD VSDB and no VTEM info packet
was emitted for them, so 2.1 FreeSync over HDMI FRL did not work. It is
backward-compatible with 2.0 FreeSync.

how:
- Accept SIGNAL_TYPE_HDMI_FRL alongside SIGNAL_TYPE_HDMI_TYPE_A when
  parsing the AMD VSDB in amdgpu_dm_update_freesync_caps().
- Build and send the VTEM info packet via mod_build_infopacket_vtem()
  when the stream signal is HDMI FRL during the freesync state update.
- Set the VTEM Data_Set_Length to 0 when no VTEM feature is enabled.
  build_infopacket_header_vtem() hardcodes Data_Set_Length = 4, so a VTEM
  with Data_Set_Length = 4 would be transmitted even when no VTEM feature
  is enabled (VRR_EN = 0 and no FVA), e.g. when the sink advertises
  VRRMIN = 0 and vrr_capable is false. This fails HDMI GCTS HF1-58 step
  6.2.
  The VTEM must keep being transmitted every MTW while VRR is enabled
  (HF1-58 steps 8.1 and 8.3), so it cannot simply be suppressed per
  frame. Instead, follow the MLDS option in HDMI 2.1 10.10.2.4: keep
  transmitting the VTEM but set Data_Set_Length = 0 when no feature is
  enabled. When VRR becomes active the full Data_Set_Length = 4 payload
  with VRR_EN = 1 is sent as before.

Signed-off-by: Fangzhi Zuo <Jerry.Zuo@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2026-09-02 14:51:09 -04:00
..
color drm/amd/display: Fix multiple compiler warnings 2026-05-11 16:10:30 -04:00
freesync drm/amd/display: Update VRR info packet to support 12-bit refresh rates 2026-08-06 09:58:25 -04:00
hdcp drm/amd/display: guard against overflow in HDCP message dump 2026-07-01 11:35:35 -04:00
inc drm/amd/display: Add HDMI 2.1 FreeSync support for AMD VSDB 2026-09-02 14:51:09 -04:00
info_packet drm/amd/display: Add HDMI 2.1 FreeSync support for AMD VSDB 2026-09-02 14:51:09 -04:00
power drm/amd/display: Fix ABM over VABC 2026-08-06 12:43:32 -04:00
vmid drm/amd/display: Fix type mismatches in DC and DMUB modules 2026-05-05 09:56:52 -04:00