compositor-drm: Enable planes for atomic
Now that we can sensibly test proposed plane configurations with atomic, sprites are not broken. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
+11
-11
@@ -3834,6 +3834,17 @@ init_kms_caps(struct drm_backend *b)
|
|||||||
weston_log("DRM: %s atomic modesetting\n",
|
weston_log("DRM: %s atomic modesetting\n",
|
||||||
b->atomic_modeset ? "supports" : "does not support");
|
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;
|
||||||
|
|
||||||
ret = drmSetClientCap(b->drm.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
|
ret = drmSetClientCap(b->drm.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
|
||||||
b->aspect_ratio_supported = (ret == 0);
|
b->aspect_ratio_supported = (ret == 0);
|
||||||
weston_log("DRM: %s picture aspect ratio\n",
|
weston_log("DRM: %s picture aspect ratio\n",
|
||||||
@@ -6714,17 +6725,6 @@ drm_backend_create(struct weston_compositor *compositor,
|
|||||||
b->drm.fd = -1;
|
b->drm.fd = -1;
|
||||||
wl_array_init(&b->unused_crtcs);
|
wl_array_init(&b->unused_crtcs);
|
||||||
|
|
||||||
/*
|
|
||||||
* 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->compositor = compositor;
|
||||||
b->use_pixman = config->use_pixman;
|
b->use_pixman = config->use_pixman;
|
||||||
b->pageflip_timeout = config->pageflip_timeout;
|
b->pageflip_timeout = config->pageflip_timeout;
|
||||||
|
|||||||
Reference in New Issue
Block a user