summaryrefslogtreecommitdiff
path: root/glamor
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2019-11-21 23:01:28 -0800
committerKenneth Graunke <kenneth@whitecape.org>2019-11-26 01:13:45 -0800
commit195c2ef8f9f07b9bdabc0f554a9033b7857b99c7 (patch)
tree5bbf6b02f4d071aa78cf58461115396f2c043088 /glamor
parent60003023fa5b301dd621da4797f8a93035ebeeca (diff)
glamor: Add a function to get the driver name via EGL_MESA_query_driver
This maps to eglGetDisplayDriverName if EGL_MESA_query_render is supported, otherwise it returns NULL.
Diffstat (limited to 'glamor')
-rw-r--r--glamor/glamor.h2
-rw-r--r--glamor/glamor_egl.c16
2 files changed, 18 insertions, 0 deletions
diff --git a/glamor/glamor.h b/glamor/glamor.h
index 038d4d80d..76ad84ed9 100644
--- a/glamor/glamor.h
+++ b/glamor/glamor.h
@@ -399,6 +399,8 @@ extern _X_EXPORT Bool
struct gbm_bo *bo,
Bool used_modifiers);
+extern _X_EXPORT const char *glamor_egl_get_driver_name(ScreenPtr screen);
+
#endif
extern _X_EXPORT void glamor_egl_screen_init(ScreenPtr screen,
diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c
index 693bee6cf..ea3450152 100644
--- a/glamor/glamor_egl.c
+++ b/glamor/glamor_egl.c
@@ -700,6 +700,22 @@ glamor_get_modifiers(ScreenPtr screen, uint32_t format,
#endif
}
+_X_EXPORT const char *
+glamor_egl_get_driver_name(ScreenPtr screen)
+{
+#ifdef GLAMOR_HAS_EGL_QUERY_DRIVER
+ struct glamor_egl_screen_private *glamor_egl;
+
+ glamor_egl = glamor_egl_get_screen_private(xf86ScreenToScrn(screen));
+
+ if (epoxy_has_egl_extension(glamor_egl->display, "EGL_MESA_query_driver"))
+ return eglGetDisplayDriverName(glamor_egl->display);
+#endif
+
+ return NULL;
+}
+
+
static Bool
glamor_egl_destroy_pixmap(PixmapPtr pixmap)
{