summaryrefslogtreecommitdiff
path: root/lib/i915/gem_context.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/i915/gem_context.c')
-rw-r--r--lib/i915/gem_context.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/lib/i915/gem_context.c b/lib/i915/gem_context.c
index fe989a8d..2d06b419 100644
--- a/lib/i915/gem_context.c
+++ b/lib/i915/gem_context.c
@@ -517,3 +517,27 @@ uint32_t gem_context_create_for_class(int i915,
*count = i;
return p.ctx_id;
}
+
+uint32_t gem_context_get_vm(int fd, uint32_t ctx_id)
+{
+ struct drm_i915_gem_context_param p = {
+ .param = I915_CONTEXT_PARAM_VM,
+ .ctx_id = ctx_id,
+ };
+
+ gem_context_get_param(fd, &p);
+ igt_assert(p.value);
+
+ return p.value;
+}
+
+void gem_context_set_vm(int fd, uint32_t ctx_id, uint32_t vm_id)
+{
+ struct drm_i915_gem_context_param p = {
+ .param = I915_CONTEXT_PARAM_VM,
+ .ctx_id = ctx_id,
+ .value = vm_id,
+ };
+
+ gem_context_set_param(fd, &p);
+}