aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch')
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch b/target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch
new file mode 100644
index 0000000000..cee57a57ce
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.14/950-0190-drm-vc4-Don-t-wait-for-vblank-on-fkms-cursor-updates.patch
@@ -0,0 +1,28 @@
+From 2c77eedbc7d668d128af3bec2633d55e01c9e67c Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Mon, 5 Feb 2018 18:53:18 +0000
+Subject: [PATCH 190/454] drm/vc4: Don't wait for vblank on fkms cursor
+ updates.
+
+We don't use the same async update path between fkms and normal kms,
+and the normal kms workaround ended up making us wait. This became a
+larger problem in rpi-4.14.y, as the USB HID update rate throttling
+got (accidentally?) dropped.
+
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ drivers/gpu/drm/vc4/vc4_kms.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/vc4/vc4_kms.c
++++ b/drivers/gpu/drm/vc4/vc4_kms.c
+@@ -53,7 +53,8 @@ vc4_atomic_complete_commit(struct drm_at
+ * display lists before we free it and potentially reallocate
+ * and overwrite the dlist memory with a new modeset.
+ */
+- state->legacy_cursor_update = false;
++ if (!vc4->firmware_kms)
++ state->legacy_cursor_update = false;
+
+ drm_atomic_helper_commit_hw_done(state);
+