summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/ioctl_wrappers.c24
-rw-r--r--lib/ioctl_wrappers.h2
2 files changed, 26 insertions, 0 deletions
diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 7df53111..c47eaa42 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -1401,6 +1401,30 @@ void gem_require_ring(int fd, unsigned ring)
igt_require(gem_has_ring(fd, ring));
}
+/**
+ * gem_has_mocs_registers:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query whether the device has MOCS registers.
+ * These exist gen 9+.
+ */
+bool gem_has_mocs_registers(int fd)
+{
+ return intel_gen(intel_get_drm_devid(fd)) >= 9;
+}
+
+/**
+ * gem_require_mocs_registers:
+ * @fd: open i915 drm file descriptor
+ *
+ * Feature test macro to query whether the device has MOCS registers.
+ * These exist gen 9+.
+ */
+void gem_require_mocs_registers(int fd)
+{
+ igt_require(gem_has_mocs_registers(fd));
+}
+
/* prime */
/**
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index d986f61f..8fe35b0c 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -154,6 +154,8 @@ bool gem_has_softpin(int fd);
void gem_require_caching(int fd);
bool gem_has_ring(int fd, unsigned ring);
void gem_require_ring(int fd, unsigned ring);
+bool gem_has_mocs_registers(int fd);
+void gem_require_mocs_registers(int fd);
/* prime */
struct local_dma_buf_sync {