[Mesa-dev] [PATCH 4/5] egl: Replace KHR_surfaceless_* extensions with KHR_surfaceless_context
Ian Romanick
idr at freedesktop.org
Wed Aug 1 17:21:37 PDT 2012
From: Ian Romanick <ian.d.romanick at intel.com>
KHR extension name is reserved for Khronos ratified extensions, and there is
no such thing as EGL_KHR_surfaceless_{gles1,gles2,opengl}. Replace these
three extensions with EGL_KHR_surfaceless_context since that extension
actually exists.
Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Cc: Kristian Høgsberg <krh at bitplanet.net>
Cc: Matt Turner <mattst88 at gmail.com>
---
src/egl/drivers/dri2/egl_dri2.c | 8 ++------
src/egl/main/eglapi.c | 8 ++------
src/egl/main/eglcontext.c | 19 ++-----------------
src/egl/main/egldisplay.h | 4 +---
src/egl/main/eglmisc.c | 5 ++---
src/gallium/state_trackers/egl/common/egl_g3d.c | 4 +---
6 files changed, 10 insertions(+), 38 deletions(-)
diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
index 90956a1..453a1d6 100644
--- a/src/egl/drivers/dri2/egl_dri2.c
+++ b/src/egl/drivers/dri2/egl_dri2.c
@@ -483,15 +483,11 @@ dri2_setup_screen(_EGLDisplay *disp)
if (dri2_dpy->dri2) {
if (dri2_dpy->dri2->base.version >= 2) {
- disp->Extensions.KHR_surfaceless_gles1 = EGL_TRUE;
- disp->Extensions.KHR_surfaceless_gles2 = EGL_TRUE;
- disp->Extensions.KHR_surfaceless_opengl = EGL_TRUE;
+ disp->Extensions.KHR_surfaceless_context = EGL_TRUE;
}
} else {
assert(dri2_dpy->swrast);
- disp->Extensions.KHR_surfaceless_gles1 = EGL_TRUE;
- disp->Extensions.KHR_surfaceless_gles2 = EGL_TRUE;
- disp->Extensions.KHR_surfaceless_opengl = EGL_TRUE;
+ disp->Extensions.KHR_surfaceless_context = EGL_TRUE;
}
if (dri2_dpy->image) {
diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c
index ffc404c..bcc5465 100644
--- a/src/egl/main/eglapi.c
+++ b/src/egl/main/eglapi.c
@@ -427,9 +427,7 @@ eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_list,
if (!config) {
/* config may be NULL if surfaceless */
- if (!disp->Extensions.KHR_surfaceless_gles1 &&
- !disp->Extensions.KHR_surfaceless_gles2 &&
- !disp->Extensions.KHR_surfaceless_opengl)
+ if (!disp->Extensions.KHR_surfaceless_context)
RETURN_EGL_ERROR(disp, EGL_BAD_CONFIG, EGL_NO_CONTEXT);
}
@@ -487,9 +485,7 @@ eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read,
RETURN_EGL_ERROR(disp, EGL_BAD_CONTEXT, EGL_FALSE);
if (!draw_surf || !read_surf) {
/* surfaces may be NULL if surfaceless */
- if (!disp->Extensions.KHR_surfaceless_gles1 &&
- !disp->Extensions.KHR_surfaceless_gles2 &&
- !disp->Extensions.KHR_surfaceless_opengl)
+ if (!disp->Extensions.KHR_surfaceless_context)
RETURN_EGL_ERROR(disp, EGL_BAD_SURFACE, EGL_FALSE);
if ((!draw_surf && draw != EGL_NO_SURFACE) ||
diff --git a/src/egl/main/eglcontext.c b/src/egl/main/eglcontext.c
index 17cb037..fa60749 100644
--- a/src/egl/main/eglcontext.c
+++ b/src/egl/main/eglcontext.c
@@ -244,7 +244,6 @@ _eglCheckMakeCurrent(_EGLContext *ctx, _EGLSurface *draw, _EGLSurface *read)
_EGLThreadInfo *t = _eglGetCurrentThread();
_EGLDisplay *dpy;
EGLint conflict_api;
- EGLBoolean surfaceless;
if (_eglIsCurrentThreadDummy())
return _eglError(EGL_BAD_ALLOC, "eglMakeCurrent");
@@ -257,22 +256,8 @@ _eglCheckMakeCurrent(_EGLContext *ctx, _EGLSurface *draw, _EGLSurface *read)
}
dpy = ctx->Resource.Display;
- switch (_eglGetContextAPIBit(ctx)) {
- case EGL_OPENGL_ES_BIT:
- surfaceless = dpy->Extensions.KHR_surfaceless_gles1;
- break;
- case EGL_OPENGL_ES2_BIT:
- surfaceless = dpy->Extensions.KHR_surfaceless_gles2;
- break;
- case EGL_OPENGL_BIT:
- surfaceless = dpy->Extensions.KHR_surfaceless_opengl;
- break;
- default:
- surfaceless = EGL_FALSE;
- break;
- }
-
- if (!surfaceless && (draw == NULL || read == NULL))
+ if (!dpy->Extensions.KHR_surfaceless_context
+ && (draw == NULL || read == NULL))
return _eglError(EGL_BAD_MATCH, "eglMakeCurrent");
/*
diff --git a/src/egl/main/egldisplay.h b/src/egl/main/egldisplay.h
index 905c7a4..a1dd279 100644
--- a/src/egl/main/egldisplay.h
+++ b/src/egl/main/egldisplay.h
@@ -103,9 +103,7 @@ struct _egl_extensions
EGLBoolean KHR_reusable_sync;
EGLBoolean KHR_fence_sync;
- EGLBoolean KHR_surfaceless_gles1;
- EGLBoolean KHR_surfaceless_gles2;
- EGLBoolean KHR_surfaceless_opengl;
+ EGLBoolean KHR_surfaceless_context;
EGLBoolean NOK_swap_region;
EGLBoolean NOK_texture_from_pixmap;
diff --git a/src/egl/main/eglmisc.c b/src/egl/main/eglmisc.c
index 9d534f0..54e5727 100644
--- a/src/egl/main/eglmisc.c
+++ b/src/egl/main/eglmisc.c
@@ -107,9 +107,8 @@ _eglUpdateExtensionsString(_EGLDisplay *dpy)
_EGL_CHECK_EXTENSION(KHR_reusable_sync);
_EGL_CHECK_EXTENSION(KHR_fence_sync);
- _EGL_CHECK_EXTENSION(KHR_surfaceless_gles1);
- _EGL_CHECK_EXTENSION(KHR_surfaceless_gles2);
- _EGL_CHECK_EXTENSION(KHR_surfaceless_opengl);
+
+ _EGL_CHECK_EXTENSION(KHR_surfaceless_context);
_EGL_CHECK_EXTENSION(NOK_swap_region);
_EGL_CHECK_EXTENSION(NOK_texture_from_pixmap);
diff --git a/src/gallium/state_trackers/egl/common/egl_g3d.c b/src/gallium/state_trackers/egl/common/egl_g3d.c
index d147ad0..239be61 100644
--- a/src/gallium/state_trackers/egl/common/egl_g3d.c
+++ b/src/gallium/state_trackers/egl/common/egl_g3d.c
@@ -583,9 +583,7 @@ egl_g3d_initialize(_EGLDriver *drv, _EGLDisplay *dpy)
dpy->Extensions.KHR_reusable_sync = EGL_TRUE;
dpy->Extensions.KHR_fence_sync = EGL_TRUE;
- dpy->Extensions.KHR_surfaceless_gles1 = EGL_TRUE;
- dpy->Extensions.KHR_surfaceless_gles2 = EGL_TRUE;
- dpy->Extensions.KHR_surfaceless_opengl = EGL_TRUE;
+ dpy->Extensions.KHR_surfaceless_context = EGL_TRUE;
if (dpy->Platform == _EGL_PLATFORM_DRM) {
dpy->Extensions.MESA_drm_display = EGL_TRUE;
--
1.7.6.5
More information about the mesa-dev
mailing list