mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-05-05 08:48:00 +02:00
backend-drm: Make DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP inert
Until kernel mainline does merge the aysnc page flip ioctl, make the whole bit look like it's unsupported. We can further switch it back when it lands into the kernel. Fixes:9203d98fSigned-off-by: Marius Vlad <marius.vlad@collabora.com> Reported-by: Simon Ser <contact@emersion.fr> (cherry picked from commit3e4aff6af4)
This commit is contained in:
parent
2fb140918e
commit
bfc7ce3b88
1 changed files with 10 additions and 5 deletions
|
|
@ -42,10 +42,6 @@
|
|||
#include "pixel-formats.h"
|
||||
#include "presentation-time-server-protocol.h"
|
||||
|
||||
#ifndef DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP
|
||||
#define DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP 0x15
|
||||
#endif
|
||||
|
||||
struct drm_property_enum_info plane_type_enums[] = {
|
||||
[WDRM_PLANE_TYPE_PRIMARY] = {
|
||||
.name = "Primary",
|
||||
|
|
@ -1851,10 +1847,19 @@ init_kms_caps(struct drm_device *device)
|
|||
|
||||
drmSetClientCap(device->drm.fd, DRM_CLIENT_CAP_WRITEBACK_CONNECTORS, 1);
|
||||
|
||||
#if 0
|
||||
/* FIXME: DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP isn't merged into mainline so
|
||||
* we can't really use it at this point. Until then, make it so we
|
||||
* don't support it. After it gets merged, we can flip this back such
|
||||
* that we don't need to revert the entire tearing work, and we can
|
||||
* still get it all back, when the capability is actually available in
|
||||
* the kernel. */
|
||||
ret = drmGetCap(device->drm.fd, DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP, &cap);
|
||||
if (ret != 0)
|
||||
cap = 0;
|
||||
device->tearing_supported = cap;
|
||||
#endif
|
||||
device->tearing_supported = 0;
|
||||
weston_log("DRM: does not support async page flipping\n");
|
||||
|
||||
/*
|
||||
* KMS support for hardware planes cannot properly synchronize
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue