From c2aa7fd965cb7ee8bed24f4122b720aca8f0fc1e Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Thu, 28 Sep 2023 17:21:22 +0100 Subject: backend/drm: Add async page flip support to legacy Atomic doesn't support such flags yet. --- backend/drm/legacy.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'backend/drm/legacy.c') diff --git a/backend/drm/legacy.c b/backend/drm/legacy.c index a8f618cf..ee64f78c 100644 --- a/backend/drm/legacy.c +++ b/backend/drm/legacy.c @@ -175,8 +175,13 @@ static bool legacy_crtc_commit(struct wlr_drm_connector *conn, } if (flags & DRM_MODE_PAGE_FLIP_EVENT) { + uint32_t page_flags = DRM_MODE_PAGE_FLIP_EVENT; + if (flags & DRM_MODE_PAGE_FLIP_ASYNC) { + page_flags |= DRM_MODE_PAGE_FLIP_ASYNC; + } + if (drmModePageFlip(drm->fd, crtc->id, fb_id, - DRM_MODE_PAGE_FLIP_EVENT, drm)) { + page_flags, drm)) { wlr_drm_conn_log_errno(conn, WLR_ERROR, "drmModePageFlip failed"); return false; } -- cgit v1.2.3