On Fri, Nov 14, 2025 at 10:57:44AM +0530, Ankit Nautiyal wrote: > As per bspec the LOBF is allowed when running in fixed refresh rate mode > i.e. when flipline = vmin = vmax. Apparently this means we can allow > LOBF only when VRR timing generator is running in fixed refresh rate > mode.
The VRR TG requirement rather comes from the fact that we need a non-zero window1, and that is only possible when using the VRR TG. > > Use the check intel_vrr_always_use_vrr_tg() to avoid LOBF with legacy > timing generator. Also use intel_vrr_is_fixed_rr() to check for fixed > refresh rate mode. > > Signed-off-by: Ankit Nautiyal <[email protected]> > --- > drivers/gpu/drm/i915/display/intel_alpm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_alpm.c > b/drivers/gpu/drm/i915/display/intel_alpm.c > index 686e4d13f864..5cfb9345776a 100644 > --- a/drivers/gpu/drm/i915/display/intel_alpm.c > +++ b/drivers/gpu/drm/i915/display/intel_alpm.c > @@ -344,8 +344,8 @@ void intel_alpm_lobf_compute_config(struct intel_dp > *intel_dp, > if (crtc_state->has_psr) > return; > > - if (crtc_state->vrr.vmin != crtc_state->vrr.vmax || > - crtc_state->vrr.vmin != crtc_state->vrr.flipline) > + if (!intel_vrr_always_use_vrr_tg(display) || > + !intel_vrr_is_fixed_rr(crtc_state)) > return; > > if (!(intel_alpm_aux_wake_supported(intel_dp) || > -- > 2.45.2 -- Ville Syrjälä Intel
