From: Ville Syrjälä <ville.syrj...@linux.intel.com>

With vrr enabled the hardware no longer latches the registers
automagically at vblank start. The point at which it will do the
latching even when no push has been sent is the vmax decision
boundary. That is the thing we need to evade to avoid our
register latching to get split between two frames.

Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com>
Signed-off-by: Manasi Navare <manasi.d.nav...@intel.com>
Reviewed-by: Manasi Navare <manasi.d.nav...@intel.com>
---
 drivers/gpu/drm/i915/display/intel_sprite.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c 
b/drivers/gpu/drm/i915/display/intel_sprite.c
index 63526c0ebd4c..52120f56dc54 100644
--- a/drivers/gpu/drm/i915/display/intel_sprite.c
+++ b/drivers/gpu/drm/i915/display/intel_sprite.c
@@ -101,7 +101,10 @@ void intel_pipe_update_start(const struct intel_crtc_state 
*new_crtc_state)
        if (new_crtc_state->uapi.async_flip)
                return;
 
-       vblank_start = intel_mode_vblank_start(adjusted_mode);
+       if (new_crtc_state->vrr.enable)
+               vblank_start = intel_vrr_vmax_vblank_start(new_crtc_state);
+       else
+               vblank_start = intel_mode_vblank_start(adjusted_mode);
 
        /* FIXME needs to be calibrated sensibly */
        min = vblank_start - intel_usecs_to_scanlines(adjusted_mode,
-- 
2.19.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to