summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2013-08-19 10:55:28 +0200
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-08-19 10:55:28 +0200
commit9ad062d0b30f307cd5045ba03eeb7d2fa90487b0 (patch)
treee215be7c844065804d2ef8ca4c18c4c7499b5639 /lib
parent23eee394893541fa531543e8fb4b12610599817c (diff)
lib/drmtest: extract gem_create_context
libdrm requirements are now up to it. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'lib')
-rw-r--r--lib/drmtest.c12
-rw-r--r--lib/drmtest.h2
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/drmtest.c b/lib/drmtest.c
index 2755ebeb..38d215db 100644
--- a/lib/drmtest.c
+++ b/lib/drmtest.c
@@ -526,6 +526,18 @@ int gem_madvise(int fd, uint32_t handle, int state)
return madv.retained;
}
+uint32_t gem_context_create(int fd)
+{
+ struct drm_i915_gem_context_create create;
+ int ret;
+
+ ret = drmIoctl(fd, DRM_IOCTL_I915_GEM_CONTEXT_CREATE, &create);
+ igt_require(ret == 0 || (errno == ENODEV || errno == EINVAL));
+ igt_assert(ret == 0);
+
+ return create.ctx_id;
+}
+
/* prime */
int prime_handle_to_fd(int fd, uint32_t handle)
{
diff --git a/lib/drmtest.h b/lib/drmtest.h
index d2fe2429..3ba3f4f8 100644
--- a/lib/drmtest.h
+++ b/lib/drmtest.h
@@ -77,6 +77,8 @@ uint64_t gem_aperture_size(int fd);
uint64_t gem_mappable_aperture_size(void);
int gem_madvise(int fd, uint32_t handle, int state);
+uint32_t gem_context_create(int fd);
+
/* feature test helpers */
bool gem_uses_aliasing_ppgtt(int fd);
int gem_available_fences(int fd);