Passive VRR keeps a sink in its variable-refresh state during fixed-refresh
(desktop) use, avoiding the blanking/brightness flicker that HDMI sinks
without seamless VRR transitions show on VRR entry/exit. It is opt-out
(enabled by default where the connector advertises passive_vrr_capable) and
is not useful for DP/eDP, where seamless VRR transitions are mandated by the
standard.

Patch 1 adds the DRM core plumbing: the PASSIVE_VRR_DISABLED atomic CRTC
property and the immutable passive_vrr_capable connector property, with the
attach/set helpers.

Patch 2 wires these into amdgpu via the existing DC
stream->freesync_on_desktop path.

Patch 3 fixes the MCCS FreeSync fallback so that HDMI-Forum VRR (HF-VSDB)
sinks keep freesync_capable; without it passive VRR never engages on the
very TMDS HF-VSDB sinks it targets.


Fangzhi Zuo (1):
  drm/amd/display: Keep FreeSync for HF-VSDB VRR sinks in MCCS fallback

Tomasz Pakuła (2):
  drm: Add passive_vrr properties for passive/desktop VRR
  drm/amd/display: Use passive_vrr properties in amdgpu

 .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h |  1 +
 .../display/amdgpu_dm/amdgpu_dm_connector.c   | 13 +++-
 .../display/amdgpu_dm/amdgpu_dm_freesync.c    |  7 ++
 drivers/gpu/drm/drm_atomic_uapi.c             |  4 +
 drivers/gpu/drm/drm_connector.c               | 73 +++++++++++++++++++
 drivers/gpu/drm/drm_crtc.c                    |  2 +
 drivers/gpu/drm/drm_mode_config.c             |  6 ++
 include/drm/drm_connector.h                   | 15 ++++
 include/drm/drm_crtc.h                        |  9 +++
 include/drm/drm_mode_config.h                 |  6 ++
 10 files changed, 134 insertions(+), 2 deletions(-)


base-commit: 8c77d618886a143de5cd87a35963b4993075802a
-- 
2.53.0

Reply via email to