aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch')
-rw-r--r--target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch b/target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch
new file mode 100644
index 0000000000..32eba1c885
--- /dev/null
+++ b/target/linux/bcm27xx/patches-4.19/950-0514-drm-vc4-Make-sure-that-vblank-waits-work-without-v3d.patch
@@ -0,0 +1,27 @@
+From 561918ec5e668f9d940051737d861ee0592816f6 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Fri, 29 Mar 2019 12:04:36 -0700
+Subject: [PATCH] drm/vc4: Make sure that vblank waits work without v3d
+ loaded.
+
+This flag exists to protect legacy drivers, but when vc4's v3d doesn't
+probe, it doesn't get set up by vc4_v3d.c's call of drm_irq_install.
+This resulted in applications running as fast as possible, and laggy
+performance from compton as it had to wait for the latest rendering by
+the application for its presentation.
+
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ drivers/gpu/drm/vc4/vc4_kms.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/gpu/drm/vc4/vc4_kms.c
++++ b/drivers/gpu/drm/vc4/vc4_kms.c
+@@ -422,6 +422,7 @@ int vc4_kms_load(struct drm_device *dev)
+ /* Set support for vblank irq fast disable, before drm_vblank_init() */
+ dev->vblank_disable_immediate = true;
+
++ dev->irq_enabled = true;
+ ret = drm_vblank_init(dev, dev->mode_config.num_crtc);
+ if (ret < 0) {
+ dev_err(dev->dev, "failed to initialize vblank\n");