From: Ankit Nautiyal Date: Wed, 27 May 2026 04:10:46 +0000 (+0530) Subject: drm/i915/dp: Program AS SDP DB[1:0] for PR with Link off X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1f41dd467333e5d6e8ee1163dd35f7086624b200;p=thirdparty%2Fkernel%2Flinux.git drm/i915/dp: Program AS SDP DB[1:0] for PR with Link off For Panel Replay with AUX-less ALPM (link-off PR), the source must send Adaptive-Sync SDP v2. Program DB[1:0] per DP spec v2.1: - VRR AVT: 00b (variable VTotal) - VRR FAVT: 10b/11b (TRR not reached/reached) - Fixed timing with PR link-off (VRR off): 01b (AS disabled; VTotal fixed) Also, drop the redundant target_rr assignment. v2: Fix the else case. (Ville) Signed-off-by: Ankit Nautiyal Reviewed-by: Ville Syrjälä Link: https://patch.msgid.link/20260527041050.601735-9-ankit.k.nautiyal@intel.com --- diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index 53ba99f179c38..959e1575dffb7 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -3249,9 +3249,10 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp, as_sdp->mode = DP_AS_SDP_FAVT_TRR_REACHED; as_sdp->target_rr = drm_mode_vrefresh(adjusted_mode); as_sdp->target_rr_divider = true; - } else { + } else if (crtc_state->vrr.enable) { as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL; - as_sdp->target_rr = 0; + } else { + as_sdp->mode = DP_AS_SDP_AVT_FIXED_VTOTAL; } }