Implement EGL API for MESA_query_driver
Signed-off-by: Veluri Mithun <velurimithun38@gmail.com> Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Eric Engestrom <eric.engestrom@intel.com>
This commit is contained in:
@@ -528,6 +528,7 @@ _eglCreateExtensionsString(_EGLDisplay *dpy)
|
|||||||
_eglAppendExtension(&exts, "EGL_MESA_configless_context");
|
_eglAppendExtension(&exts, "EGL_MESA_configless_context");
|
||||||
_EGL_CHECK_EXTENSION(MESA_drm_image);
|
_EGL_CHECK_EXTENSION(MESA_drm_image);
|
||||||
_EGL_CHECK_EXTENSION(MESA_image_dma_buf_export);
|
_EGL_CHECK_EXTENSION(MESA_image_dma_buf_export);
|
||||||
|
_EGL_CHECK_EXTENSION(MESA_query_driver);
|
||||||
|
|
||||||
_EGL_CHECK_EXTENSION(NOK_swap_region);
|
_EGL_CHECK_EXTENSION(NOK_swap_region);
|
||||||
_EGL_CHECK_EXTENSION(NOK_texture_from_pixmap);
|
_EGL_CHECK_EXTENSION(NOK_texture_from_pixmap);
|
||||||
@@ -2649,6 +2650,38 @@ eglQueryDisplayAttribEXT(EGLDisplay dpy,
|
|||||||
RETURN_EGL_SUCCESS(disp, EGL_TRUE);
|
RETURN_EGL_SUCCESS(disp, EGL_TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char * EGLAPIENTRY
|
||||||
|
eglGetDisplayDriverConfig(EGLDisplay dpy)
|
||||||
|
{
|
||||||
|
_EGLDisplay *disp = _eglLockDisplay(dpy);
|
||||||
|
_EGLDriver *drv;
|
||||||
|
char *ret;
|
||||||
|
|
||||||
|
_EGL_FUNC_START(disp, EGL_NONE, NULL, NULL);
|
||||||
|
_EGL_CHECK_DISPLAY(disp, NULL, drv);
|
||||||
|
|
||||||
|
assert(disp->Extensions.MESA_query_driver);
|
||||||
|
|
||||||
|
ret = drv->API.QueryDriverConfig(disp);
|
||||||
|
RETURN_EGL_EVAL(disp, ret);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char * EGLAPIENTRY
|
||||||
|
eglGetDisplayDriverName(EGLDisplay dpy)
|
||||||
|
{
|
||||||
|
_EGLDisplay *disp = _eglLockDisplay(dpy);
|
||||||
|
_EGLDriver *drv;
|
||||||
|
const char *ret;
|
||||||
|
|
||||||
|
_EGL_FUNC_START(disp, EGL_NONE, NULL, NULL);
|
||||||
|
_EGL_CHECK_DISPLAY(disp, NULL, drv);
|
||||||
|
|
||||||
|
assert(disp->Extensions.MESA_query_driver);
|
||||||
|
|
||||||
|
ret = drv->API.QueryDriverName(disp);
|
||||||
|
RETURN_EGL_EVAL(disp, ret);
|
||||||
|
}
|
||||||
|
|
||||||
__eglMustCastToProperFunctionPointerType EGLAPIENTRY
|
__eglMustCastToProperFunctionPointerType EGLAPIENTRY
|
||||||
eglGetProcAddress(const char *procname)
|
eglGetProcAddress(const char *procname)
|
||||||
{
|
{
|
||||||
|
@@ -55,6 +55,8 @@ struct _egl_api
|
|||||||
/* driver funcs */
|
/* driver funcs */
|
||||||
EGLBoolean (*Initialize)(_EGLDriver *, _EGLDisplay *dpy);
|
EGLBoolean (*Initialize)(_EGLDriver *, _EGLDisplay *dpy);
|
||||||
EGLBoolean (*Terminate)(_EGLDriver *, _EGLDisplay *dpy);
|
EGLBoolean (*Terminate)(_EGLDriver *, _EGLDisplay *dpy);
|
||||||
|
const char *(*QueryDriverName)(_EGLDisplay *dpy);
|
||||||
|
char *(*QueryDriverConfig)(_EGLDisplay *dpy);
|
||||||
|
|
||||||
/* config funcs */
|
/* config funcs */
|
||||||
EGLBoolean (*GetConfigs)(_EGLDriver *drv, _EGLDisplay *dpy,
|
EGLBoolean (*GetConfigs)(_EGLDriver *drv, _EGLDisplay *dpy,
|
||||||
|
@@ -138,6 +138,7 @@ struct _egl_extensions
|
|||||||
|
|
||||||
EGLBoolean MESA_drm_image;
|
EGLBoolean MESA_drm_image;
|
||||||
EGLBoolean MESA_image_dma_buf_export;
|
EGLBoolean MESA_image_dma_buf_export;
|
||||||
|
EGLBoolean MESA_query_driver;
|
||||||
|
|
||||||
EGLBoolean NOK_swap_region;
|
EGLBoolean NOK_swap_region;
|
||||||
EGLBoolean NOK_texture_from_pixmap;
|
EGLBoolean NOK_texture_from_pixmap;
|
||||||
|
@@ -42,6 +42,8 @@ EGL_ENTRYPOINT(eglGetCurrentContext)
|
|||||||
EGL_ENTRYPOINT(eglGetCurrentDisplay)
|
EGL_ENTRYPOINT(eglGetCurrentDisplay)
|
||||||
EGL_ENTRYPOINT(eglGetCurrentSurface)
|
EGL_ENTRYPOINT(eglGetCurrentSurface)
|
||||||
EGL_ENTRYPOINT(eglGetDisplay)
|
EGL_ENTRYPOINT(eglGetDisplay)
|
||||||
|
EGL_ENTRYPOINT(eglGetDisplayDriverConfig)
|
||||||
|
EGL_ENTRYPOINT(eglGetDisplayDriverName)
|
||||||
EGL_ENTRYPOINT(eglGetError)
|
EGL_ENTRYPOINT(eglGetError)
|
||||||
EGL_ENTRYPOINT(eglGetPlatformDisplay)
|
EGL_ENTRYPOINT(eglGetPlatformDisplay)
|
||||||
EGL_ENTRYPOINT(eglGetPlatformDisplayEXT)
|
EGL_ENTRYPOINT(eglGetPlatformDisplayEXT)
|
||||||
|
Reference in New Issue
Block a user