summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/drmtest.c9
-rw-r--r--lib/drmtest.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/lib/drmtest.c b/lib/drmtest.c
index 42581035..a0454092 100644
--- a/lib/drmtest.c
+++ b/lib/drmtest.c
@@ -115,6 +115,11 @@ static bool is_vgem_device(int fd)
return __is_device(fd, "vgem");
}
+static bool is_virtio_device(int fd)
+{
+ return __is_device(fd, "virt");
+}
+
static bool has_known_intel_chipset(int fd)
{
struct drm_i915_getparam gp;
@@ -260,6 +265,10 @@ int __drm_open_driver(int chipset)
is_vgem_device(fd))
return fd;
+ if (chipset & DRIVER_VIRTIO &&
+ is_virtio_device(fd))
+ return fd;
+
close(fd);
}
diff --git a/lib/drmtest.h b/lib/drmtest.h
index 8ce32a65..19d4bd19 100644
--- a/lib/drmtest.h
+++ b/lib/drmtest.h
@@ -41,6 +41,7 @@
#define DRIVER_INTEL (1 << 0)
#define DRIVER_VC4 (1 << 1)
#define DRIVER_VGEM (1 << 2)
+#define DRIVER_VIRTIO (1 << 3)
#define DRIVER_ANY ~(DRIVER_VGEM)
#ifdef ANDROID