summaryrefslogtreecommitdiffstats
path: root/vc4-fix-vblank-cursor-update-issue.patch
diff options
context:
space:
mode:
Diffstat (limited to 'vc4-fix-vblank-cursor-update-issue.patch')
-rw-r--r--vc4-fix-vblank-cursor-update-issue.patch59
1 files changed, 0 insertions, 59 deletions
diff --git a/vc4-fix-vblank-cursor-update-issue.patch b/vc4-fix-vblank-cursor-update-issue.patch
deleted file mode 100644
index 8537d67ca..000000000
--- a/vc4-fix-vblank-cursor-update-issue.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 6d24c1c5918907ab78a5729b78c0d165deb3cc2b Mon Sep 17 00:00:00 2001
-From: Michael Zoran <mzoran@crowfest.net>
-Date: Thu, 23 Feb 2017 17:54:31 -0800
-Subject: drm/vc4: Don't wait for vblank when updating the cursor
-
-Commonly used desktop environments such as xfce4 and gnome
-on debian sid can flood the graphics drivers with cursor
-updates. Because the current implementation is waiting
-for a vblank between cursor updates, this will cause the
-display to hang for a long time since a typical refresh
-rate is only 60Hz.
-
-This is unnecessary and unexpected by user mode software,
-so simply swap out the cursor frame buffer without waiting.
-
-Signed-off-by: Michael Zoran <mzoran@crowfest.net>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Link: http://patchwork.freedesktop.org/patch/msgid/20170224015431.24583-1-mzoran@crowfest.net
-
-diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
-index f7a229d..110224c 100644
---- a/drivers/gpu/drm/vc4/vc4_plane.c
-+++ b/drivers/gpu/drm/vc4/vc4_plane.c
-@@ -20,6 +20,7 @@
-
- #include "vc4_drv.h"
- #include "vc4_regs.h"
-+#include "drm_atomic.h"
- #include "drm_atomic_helper.h"
- #include "drm_fb_cma_helper.h"
- #include "drm_plane_helper.h"
-@@ -769,12 +770,6 @@ vc4_update_plane(struct drm_plane *plane,
- if (!plane_state)
- goto out;
-
-- /* If we're changing the cursor contents, do that in the
-- * normal vblank-synced atomic path.
-- */
-- if (fb != plane_state->fb)
-- goto out;
--
- /* No configuring new scaling in the fast path. */
- if (crtc_w != plane_state->crtc_w ||
- crtc_h != plane_state->crtc_h ||
-@@ -783,6 +778,11 @@ vc4_update_plane(struct drm_plane *plane,
- goto out;
- }
-
-+ if (fb != plane_state->fb) {
-+ drm_atomic_set_fb_for_plane(plane->state, fb);
-+ vc4_plane_async_set_fb(plane, fb);
-+ }
-+
- /* Set the cursor's position on the screen. This is the
- * expected change from the drm_mode_cursor_universal()
- * helper.
---
-cgit v0.10.2
-