[Mesa-dev] [PATCH 4/5] egl: Replace KHR_surfaceless_* extensions with KHR_surfaceless_context
Kristian Høgsberg
krh at bitplanet.net
Thu Aug 2 06:08:24 PDT 2012
On Wed, Aug 1, 2012 at 8:21 PM, Ian Romanick <idr at freedesktop.org> wrote:
> 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.
Looks good to me, thanks Ian.
Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
> 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