[igt-dev] [PATCH i-g-t v11 1/2] lib/igt_ioctl_wrappers: Add igt_has_drm_cap ioctl wrapper
Karthik B S
karthik.b.s at intel.com
Fri Sep 25 04:26:12 UTC 2020
Add a generic helper for DRM_IOCTL_GET_CAP ioctl.
v10: -No changes.
v11: -Pass cap ID instead of the whole structure. (Ville)
-Fix the patch ordering. (Ville)
Signed-off-by: Karthik B S <karthik.b.s at intel.com>
---
lib/ioctl_wrappers.c | 17 +++++++++++++++++
lib/ioctl_wrappers.h | 1 +
2 files changed, 18 insertions(+)
diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 3781286d..3f35609a 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -1318,3 +1318,20 @@ int __kms_addfb(int fd, uint32_t handle,
return ret < 0 ? -errno : ret;
}
+
+/**
+ * igt_has_drm_cap:
+ * @fd: Open DRM file descriptor.
+ * @cap: drm_get_cap structure.
+ *
+ * This helper verifies if the passed cap is supported by the kernel
+ *
+ * Returns: Whether the cap is supported or not.
+ */
+bool igt_has_drm_cap(int fd, uint64_t flag)
+{
+ struct drm_get_cap cap = { .capability = flag };
+
+ igt_assert(drmIoctl(fd, DRM_IOCTL_GET_CAP, &cap) == 0);
+ return cap.value;
+}
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index 870ac8b7..e0ec203d 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -196,6 +196,7 @@ struct local_drm_mode_fb_cmd2 {
bool igt_has_fb_modifiers(int fd);
void igt_require_fb_modifiers(int fd);
+bool igt_has_drm_cap(int fd, uint64_t flag);
/**
* __kms_addfb:
--
2.22.0
More information about the igt-dev
mailing list