diff options
Diffstat (limited to 'include/wlr/render')
-rw-r--r-- | include/wlr/render/egl.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/wlr/render/egl.h b/include/wlr/render/egl.h index 82aa9505..3facd87d 100644 --- a/include/wlr/render/egl.h +++ b/include/wlr/render/egl.h @@ -53,6 +53,9 @@ struct wlr_egl { // Device extensions bool device_drm_ext; + + // Client extensions + bool device_query_ext; } exts; struct { @@ -70,6 +73,7 @@ struct wlr_egl { PFNEGLDEBUGMESSAGECONTROLKHRPROC eglDebugMessageControlKHR; PFNEGLQUERYDISPLAYATTRIBEXTPROC eglQueryDisplayAttribEXT; PFNEGLQUERYDEVICESTRINGEXTPROC eglQueryDeviceStringEXT; + PFNEGLQUERYDEVICESEXTPROC eglQueryDevicesEXT; } procs; struct wl_display *wl_display; @@ -88,6 +92,15 @@ struct wlr_egl *wlr_egl_create(EGLenum platform, void *remote_display, const EGLint *config_attribs); /** + * Creates and EGL context from a given drm fd. This function uses the + * following extensions: + * - EXT_device_enumeration to get the list of available EGLDeviceEXT + * - EXT_device_drm to get the name of the EGLDeviceEXT + * - EXT_platform_device to create an EGLDisplay from an EGLDeviceEXT + */ +struct wlr_egl *wlr_egl_create_from_drm_fd(int drm_fd); + +/** * Frees all related EGL resources, makes the context not-current and * unbinds a bound wayland display. */ |