]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/dp: fix the Adaptive sync Operation mode for SDP
authorAnkit Nautiyal <ankit.k.nautiyal@intel.com>
Thu, 30 Jan 2025 05:16:06 +0000 (10:46 +0530)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 3 Feb 2025 14:27:02 +0000 (09:27 -0500)
Currently we support Adaptive sync operation mode with dynamic frame
rate, but instead the operation mode with fixed rate is set.
This was initially set correctly in the earlier version of changes but
later got changed, while defining a macro for the same.

Fixes: a5bd5991cb8a ("drm/i915/display: Compute AS SDP parameters")
Cc: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Reviewed-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250130051609.1796524-4-mitulkumar.ajitkumar.golani@intel.com
(cherry picked from commit c5806862543ff6c2ad242409fcdf0667eac26dae)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/display/intel_dp.c

index f1f3b1bb1e89b2c3c2f5ba75178d100131305331..bfc16fd25d22f5ae31ef9d4b5e9331171b3c76aa 100644 (file)
@@ -2829,7 +2829,6 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp,
 
        crtc_state->infoframes.enable |= intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC);
 
-       /* Currently only DP_AS_SDP_AVT_FIXED_VTOTAL mode supported */
        as_sdp->sdp_type = DP_SDP_ADAPTIVE_SYNC;
        as_sdp->length = 0x9;
        as_sdp->duration_incr_ms = 0;
@@ -2840,7 +2839,7 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp,
                as_sdp->target_rr = drm_mode_vrefresh(adjusted_mode);
                as_sdp->target_rr_divider = true;
        } else {
-               as_sdp->mode = DP_AS_SDP_AVT_FIXED_VTOTAL;
+               as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL;
                as_sdp->vtotal = adjusted_mode->vtotal;
                as_sdp->target_rr = 0;
        }