On Thu, Feb 26, 2026 at 05:29:48PM +0200, Ville Syrjälä wrote:
> 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.
Hmm. DP 2.1a does say
"When the plugged DP device has DPCD 02214h[0] = 1, a DP Source
device shall transmit an Adaptive-Sync SDP before enabling an
Adaptive-Sync video transmission."
So maybe we do need to transmit it whenever the DP device
supports it. In that case someone will probably need to figure
out the fastset stuff.
>
> 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
--
Ville Syrjälä
Intel