On Wed, Mar 11, 2026 at 05:06:08PM +0530, Ankit Nautiyal wrote:
> 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 <[email protected]>
> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 74a8af3cf18c..2b0318e0ceb0 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -3161,9 +3161,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) {

Due to the lack of fastset for this we pretty much need a
s/crtc_state->vrr.enable/vrr_possible()/ pass over everything.

But for now this is at least more correct than the current thing, so
Reviewed-by: Ville Syrjälä <[email protected]>

>               as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL;
> -             as_sdp->target_rr = 0;
> +     } else {
> +             as_sdp->mode = DP_AS_SDP_AVT_FIXED_VTOTAL;
>       }
>  }
>  
> -- 
> 2.45.2

-- 
Ville Syrjälä
Intel

Reply via email to