From 9165b5973cb57507718e959e597a36277978e688 Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Sat, 6 Aug 2022 21:53:50 +0300 Subject: cam: drm: Add support for test-only commits Test-only commits are used to test a commit without applying any modification to the device. This will be used by the KMS sink to test feature support. Signed-off-by: Laurent Pinchart Reviewed-by: Kieran Bingham Reviewed-by: Eric Curtin Tested-by: Kieran Bingham --- src/cam/drm.cpp | 2 ++ src/cam/drm.h | 1 + 2 files changed, 3 insertions(+) (limited to 'src/cam') diff --git a/src/cam/drm.cpp b/src/cam/drm.cpp index fbfc0a59..b0602c94 100644 --- a/src/cam/drm.cpp +++ b/src/cam/drm.cpp @@ -377,6 +377,8 @@ int AtomicRequest::commit(unsigned int flags) drmFlags |= DRM_MODE_ATOMIC_ALLOW_MODESET; if (flags & FlagAsync) drmFlags |= DRM_MODE_PAGE_FLIP_EVENT | DRM_MODE_ATOMIC_NONBLOCK; + if (flags & FlagTestOnly) + drmFlags |= DRM_MODE_ATOMIC_TEST_ONLY; return drmModeAtomicCommit(dev_->fd(), request_, drmFlags, this); } diff --git a/src/cam/drm.h b/src/cam/drm.h index 655a7509..ebaea04d 100644 --- a/src/cam/drm.h +++ b/src/cam/drm.h @@ -251,6 +251,7 @@ public: enum Flags { FlagAllowModeset = (1 << 0), FlagAsync = (1 << 1), + FlagTestOnly = (1 << 2), }; AtomicRequest(Device *dev); -- cgit v1.2.1