]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/vrr: Don't send push for legacy cursor updates
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Fri, 7 Feb 2025 22:31:53 +0000 (00:31 +0200)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Wed, 12 Feb 2025 17:21:00 +0000 (19:21 +0200)
We don't really want legacy cursor updates to trigger
VRR pushes because these can happen willy nilly and we
generally want more precise control over the pushes.
The fastpath in intel_legacy_cursor_update() doesn't
send pushes, but if we punt to the full commit path
(with the flip completion short circuited) we are currently
sending pushes. Skip those as well so that they don't
interfere with the push handling from normal commits.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250207223159.14132-3-ville.syrjala@linux.intel.com
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
drivers/gpu/drm/i915/display/intel_crtc.c

index 89785da93603960479beb907415dc9d9a6b2dd73..a1694e54a6f1fbc2d76d40b7f0b6bbafc83b47cc 100644 (file)
@@ -717,7 +717,8 @@ void intel_pipe_update_end(struct intel_atomic_state *state,
         * which would cause the next frame to terminate already at vmin
         * vblank start instead of vmax vblank start.
         */
-       intel_vrr_send_push(NULL, new_crtc_state);
+       if (!state->base.legacy_cursor_update)
+               intel_vrr_send_push(NULL, new_crtc_state);
 
        local_irq_enable();