summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libweston/compositor-drm.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c
index ff1c736e..091ac8d7 100644
--- a/libweston/compositor-drm.c
+++ b/libweston/compositor-drm.c
@@ -3086,6 +3086,17 @@ init_kms_caps(struct drm_backend *b)
weston_log("DRM: %s atomic modesetting\n",
b->atomic_modeset ? "supports" : "does not support");
+ /*
+ * KMS support for hardware planes cannot properly synchronize
+ * without nuclear page flip. Without nuclear/atomic, hw plane
+ * and cursor plane updates would either tear or cause extra
+ * waits for vblanks which means dropping the compositor framerate
+ * to a fraction. For cursors, it's not so bad, so they are
+ * enabled.
+ */
+ if (!b->atomic_modeset)
+ b->sprites_are_broken = 1;
+
return 0;
}
@@ -5020,17 +5031,6 @@ drm_backend_create(struct weston_compositor *compositor,
if (b == NULL)
return NULL;
- /*
- * KMS support for hardware planes cannot properly synchronize
- * without nuclear page flip. Without nuclear/atomic, hw plane
- * and cursor plane updates would either tear or cause extra
- * waits for vblanks which means dropping the compositor framerate
- * to a fraction. For cursors, it's not so bad, so they are
- * enabled.
- *
- * These can be enabled again when nuclear/atomic support lands.
- */
- b->sprites_are_broken = 1;
b->compositor = compositor;
b->use_pixman = config->use_pixman;