On Mon, Feb 23, 2026 at 07:14:20PM +0530, Ankit Nautiyal wrote:
> Add a helper to check if AS SDP is needed. Currently AS SDP is only
> required when VRR is enabled. However, there are other use cases, along
> with the missing case of CMRR, dealt in subsequent changes.
>
> Signed-off-by: Ankit Nautiyal <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_dp.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index b999d8c085c7..65764ab0bb9b 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -3111,6 +3111,12 @@ static void intel_dp_compute_vsc_colorimetry(const
> struct intel_crtc_state *crtc
> vsc->content_type = DP_CONTENT_TYPE_NOT_DEFINED;
> }
>
> +static bool intel_dp_needs_as_sdp(struct intel_dp *intel_dp,
> + struct intel_crtc_state *crtc_state)
> +{
> + return crtc_state->vrr.enable;
Since we don't support VRR+PCON I don't think we actually
need the AS SDP for VRR.
And I don't think we even have a fastset path for this stuff
(or where is it?) so isn't this already causing fastset
failures for VRR enable/disable? Or maybe we don't have
displays with both VRR and AS SDP support anywhere?
> +}
> +
> static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp,
> struct intel_crtc_state *crtc_state)
> {
> @@ -3118,7 +3124,10 @@ static void intel_dp_compute_as_sdp(struct intel_dp
> *intel_dp,
> const struct drm_display_mode *adjusted_mode =
> &crtc_state->hw.adjusted_mode;
>
> - if (!crtc_state->vrr.enable || !intel_dp->as_sdp_supported)
> + if (!intel_dp->as_sdp_supported)
> + return;
> +
> + if (!intel_dp_needs_as_sdp(intel_dp, crtc_state))
> return;
>
> crtc_state->infoframes.enable |=
> intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC);
> --
> 2.45.2
--
Ville Syrjälä
Intel