aboutsummaryrefslogtreecommitdiffstats
path: root/include/EGL
Commit message (Collapse)AuthorAgeFilesLines
* EGL: sync headers with KhronosSimon Ser2020-05-253-45/+48
| | | | | | | | | | | | | | | | Taken from EGL-Registry commit 90b78b0662e2f0548cfd1926fb77bf628933541b. With this update EGL_WL_bind_wayland_display and EGL_WL_create_wayland_buffer_from_image are now in the registry, so we don't need to define them in eglmesaext.h anymore. The eglSwapBufferWithDamage* functions now take a const rects argument. The eglapi.c function signature is updated accordingly. Signed-off-by: Simon Ser <[email protected]> Acked-by: Marek Olšák <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4953>
* egl: use EGL_CAST() macro in eglmesaext.hEric Engestrom2019-11-191-1/+1
| | | | | | | | | Allows eglmesaext.h to be used in C++ code. This aligns this file with the rest of EGL. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-By: Tapani Pälli <[email protected]>
* egl: avoid local modifications for eglext.h Khronos standard header fileLaurent Carlier2019-11-112-11/+11
| | | | | | | | | | Move differences in eglextchromium.h header file, then provide the same header than libglvnd-1.2 So program that omit to include eglextchromium.h will fail to build with both mesa and libglvnd headers. Fixes: a0a8109f "include: add the definition of EGL_EXT_image_flush_external" Cc: [email protected] Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* egl: move #include of local headers out of Khronos headersEric Engestrom2019-11-111-3/+0
| | | | | | Cc: [email protected] Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* include: add the definition of EGL_EXT_image_flush_externalMarek Olšák2019-10-251-0/+11
| | | | | Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-By: Tapani Pälli <[email protected]>
* Revert "egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext."Hal Gentz2019-10-181-5/+0
| | | | This reverts commit 173bc9d6842efdec54ea3fd415a6946dcee7b02a.
* egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext.Hal Gentz2019-10-111-0/+5
| | | | | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=67676 Fixes: 049f343e8ac "egl: Allow 24-bit visuals for 32-bit RGBA8888 configs" Cc: [email protected] Reviewed-by: Adam Jackson <[email protected]> Signed-off-by: Hal Gentz <[email protected]>
* egl: replace MESA_EGL_NO_X11_HEADERS hack with upstream EGL_NO_X11Eric Engestrom2019-10-071-6/+14
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* EGL: sync headers with KhronosEric Engestrom2019-08-143-8/+107
| | | | Signed-off-by: Eric Engestrom <[email protected]>
* egl: update headers from KhronosEric Engestrom2019-01-242-8/+24
| | | | | | | | Cheating a tiny bit as these headers aren't in the Khronos repo yet, but I expect them to be within a couple days. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* include: sync eglext.h from KhronosEric Engestrom2018-10-021-5/+81
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Tapani Pälli <[email protected]>
* egl: pull update from Khronos and drop local defineEric Engestrom2018-03-212-7/+1
| | | | | | | | | | | Added in Khronos in 2b6bb4ee45cc46c89d4a "EGL_MESA_drm_image: add EGL_DRM_BUFFER_USE_CURSOR_MESA to egl.xml" [1] as part of PR #36 [2]. [1] https://github.com/KhronosGroup/EGL-Registry/commit/2b6bb4ee45cc46c89d4a4349f2ca94e80d77cd97 [2] https://github.com/KhronosGroup/EGL-Registry/pull/36 Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* egl: align the formatting of Haiku section of eglplatform.h with Khronos'Eric Engestrom2018-03-211-4/+6
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* egl: add Ozone section to eglplatform.hEric Engestrom2018-03-211-0/+6
| | | | | | | | | | | | This pulls in commit a93f559e9c11fa53fb5f1cc255b8f75433f85d2a "Add Ozone section to eglplatform.h" from Khronos [1] added by Brian Anderson [2] a few months ago. [1] https://github.com/KhronosGroup/EGL-Registry/commit/a93f559e9c11fa53fb5f1cc255b8f75433f85d2a [2] https://github.com/KhronosGroup/EGL-Registry/pull/26 Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* eglmesaext: add forward declaration for struct wl_buffersEmil Velikov2017-10-131-0/+1
| | | | | | | | | | | | | | | The user does not need to know the specifics of the struct, as only a pointer to it is used. Just forward declare the struct making the header self-contained. v2: Remove deprecation warning text/bugzilla - patch does no help there. Cc: Greg V <[email protected]> Fixes: 5cddb1ce3c9 ("wayland: Add an extension to create wl_buffers from EGLImages") Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> (v1)
* khronos/egl: remove dependency on Android NDK headerEric Engestrom2017-08-251-2/+1
| | | | | | | Khronos: https://github.com/KhronosGroup/EGL-Registry/pull/22 Suggested-by: Emil Velikov <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Eric Engestrom <[email protected]>
* egl: Update headers from KhronosDaniel Stone2017-08-112-6/+73
| | | | | | Taken from egl-registry 7d68647c4dab. Signed-off-by: Daniel Stone <[email protected]>
* eglmesaext: add new enums for EGL_MESA_drm_image_formatsNicolai Hähnle2017-02-061-0/+7
| | | | Reviewed-by: Eric Engestrom <[email protected]>
* egl: EGL_PLATFORM_SURFACELESS_MESA is now upstreamEric Engestrom2017-01-271-5/+0
| | | | | | | | EGL_PLATFORM_SURFACELESS_MESA is in eglext.h as of last commit. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: update headers from registryEric Engestrom2017-01-273-25/+206
| | | | | | | | | | Khronos introduced a new macro (suggested by Google) to avoid using C-style casts in C++ code, as those generate warnings. Khronos Bugzilla: https://cvs.khronos.org/bugzilla/show_bug.cgi?id=16113 Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* add EGL_TEXTURE_EXTERNAL_WL to WL_bind_wayland_display specRob Clark2016-12-051-0/+1
| | | | | Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* egl: Implement EGL_MESA_platform_surfacelessChad Versace2016-10-141-0/+5
| | | | Reviewed-by: Emil Velikov <[email protected]>
* egl: Update eglext.h (v2)Kyle Brenneman2016-09-141-3/+118
| | | | | | | | | | | Updated eglext.h to revision 33111 from the Khronos repository. v2: - Don't (re)move extension includes from eglext.h (Emil Velikov) - Bump to revision 33111 (Adam Jackson) Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Adam Jackson <[email protected]>
* egl: remove remnants of MESA_drm_displayEmil Velikov2016-03-091-11/+0
| | | | | | | Last set in st/egl, unused in mesa-demos and superseded by EGL_KHR_platform_gbm. Signed-off-by: Emil Velikov <[email protected]>
* egl: use unix defines on osx with clangJulien Isorce2015-07-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I also created an bug in Khronos 's bugzilla as you suggested: https://www.khronos.org/bugzilla/show_bug.cgi?id=1356 I'll let you know if I get feedback from this bug or else where. Patch with updated error messages: [PATCH] eglplatform: treat __APPLE__ the same way as __unix__ to handle X11 types CC eglapi.lo ./egldisplay.h:258:19: error: unknown type name 'Display' _eglGetX11Display(Display *native_display, const EGLint *attrib_list); eglapi.c:290:4: error: array size is negative STATIC_ASSERT(sizeof(void*) == sizeof(nativeDisplay)); eglapi.c:291:25: warning: cast to 'void *' from smaller integer type 'EGLNativeDisplayType' (aka 'int') [-Wint-to-void-pointer-cast] native_display_ptr = (void*) nativeDisplay; eglapi.c:307:32: error: use of undeclared identifier 'Display' dpy = _eglGetX11Display((Display*) native_display, attrib_list); eglapi.c:776:35: error: use of undeclared identifier 'Window' native_window = (void*) (* (Window*) native_window); eglapi.c:847:35: error: use of undeclared identifier 'Pixmap' native_pixmap = (void*) (* (Pixmap*) native_pixmap); Bugzilla Mesa: https://bugs.freedesktop.org/show_bug.cgi?id=90249 Bugzilla Khronos: https://www.khronos.org/bugzilla/show_bug.cgi?id=1356 Signed-off-by: Julien Isorce <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* egl: import platform headers from registry (v2)Marek Olšák2015-06-051-10/+9
| | | | | | | v2: don't remove local Mesa changes Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: import eglext.h from registry and cleanup eglmesaext.h (v2)Marek Olšák2015-06-052-44/+247
| | | | | | | | | v2: include mesa and chromium extensions in eglext.h so as not to break existing users v3: keep PFNEGLSWAPBUFFERSREGIONNOK because piglit uses it Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: import egl.h from registry (v2)Marek Olšák2015-06-051-294/+268
| | | | | | | v2: split the commit into 3 patches Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: remove remaining EGL_MESA_copy_context skeletonEmil Velikov2015-05-141-11/+0
| | | | | | | | | | With earlier commit (7a58262e58d egl: Remove skeleton implementation of EGL_MESA_screen_surface) we've removed the skeleton implementation of eglCopyContextMESA(). Just like EGL_MESA_screen_surface this extension was never implemented in mesa. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Adam Jackson <[email protected]>
* egl: fix the EGL_MESA_image_dma_buf_export header declarationsEmil Velikov2015-05-141-0/+6
| | | | | | | | | | | | | | | Similar to other EGL extensions - guard the function prototypes by EGL_EGLEXT_PROTOTYPES as the libEGL library does (should) not provide the symbols statically. Instead users should call eglGetProcAddress, which returns the function pointer. The latter of which was missing the type declaration (typedef). Cc: Dave Airlie <[email protected]> Cc: Marc-André Lureau <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: Remove skeleton implementation of EGL_MESA_screen_surfaceAdam Jackson2015-05-111-46/+0
| | | | | | | | No backend wires this up to anything, and the extension spec has been marked obsolete for 4+ years. Reviewed-by: Marek Olšák <[email protected]> Signed-off-by: Adam Jackson <[email protected]>
* egl: image_dma_buf_export - use KHR 64-bit typeDave Airlie2015-05-051-2/+1
| | | | | | | | After talking to Jon Leech he suggested this should be fine. update spec to the version in the registry. Signed-off-by: Dave Airlie <[email protected]>
* egl: add initial EGL_MESA_image_dma_buf_export v2.4Dave Airlie2015-04-011-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | At the moment to get an EGL image to a dma-buf file descriptor, you have to use EGL_MESA_drm_image, and then use libdrm to convert this to a file descriptor. This extension just provides an API modelled on EGL_MESA_drm_image, to return a dma-buf file descriptor. v2: update spec for new API proposal add internal queries to get the fourcc back from intel driver. v2.1: add gallium pieces. v2.2: add offsets to spec and API, rename fd->fds, stride->strides in API. rewrite spec a bit more, add some q/a v2.3: add modifiers to query interface and 64-bit type for that (Daniel Stone) specifiy what happens to num fds vs num planes differences. (Chad Versace) v2.4: fix grammar (Daniel Stone) Signed-off-by: Dave Airlie <[email protected]>
* egl: Add Haiku code and supportAlexander von Gluck IV2014-12-231-1/+9
| | | | | | | * This is the cleaned up work of the Haiku GCI student Adrián Arroyo Calle [email protected] * Several patches were consolidated to prevent unnecessary touching of non-related code
* Import eglextchromium.h from Chromium.Sarah Sharp2014-05-202-0/+61
| | | | | | | | | | | | | | | | | | | | | | | In order to support the (currently unregistered) Chromium-specific EGL extension eglGetSyncValuesCHROMIUM on Intel systems, we need to import the Chromium header that defines it. The file was downloaded from https://chromium.googlesource.com/chromium/chromium/+/trunk/ui/gl/EGL/eglextchromium.h It is subject to the license found at https://chromium.googlesource.com/chromium/chromium/+/trunk/LICENSE I have imported the header file and added the license text to the top. The only change was to fix the include guard on the Chromium header to change the last line from a #define to a #endif, which makes the header actually compile. Signed-off-by: Sarah Sharp <[email protected]> Reviewed-by: Chad Versace <[email protected]> Cc: Jamey Sharp <[email protected]> Cc: Ian Romanick <[email protected]> Cc: Stéphane Marchesin <[email protected]>
* egl: Update to revision 24567 of eglext.hChad Versace2014-03-171-443/+517
| | | | | | | | | | | This pulls in EGL_EXT_platform_base, EGL_EXT_platform_wayland, EGL_EXT_platform_x11, and EGL_MESA_platform_gbm. This patch has a lot of churn because Khronos recently changed its method of generating headers. Khronos now generates it headers from XML. Reviewed-by: Ian Romanick <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* Add the EGL_MESA_configless_context extensionNeil Roberts2014-03-121-0/+5
| | | | | | | | | | | | | | | | | | | | This extension provides a way for an application to render to multiple surfaces with different buffer formats without having to use multiple contexts. An EGLContext can be created without an EGLConfig by passing EGL_NO_CONFIG_MESA. In that case there are no restrictions on the surfaces that can be used with the context apart from that they must be using the same EGLDisplay. _mesa_initialze_context can now take a NULL gl_config which will mark the context as ‘configless’. It will memset the visual to zero in that case. Previously the i965 and i915 drivers were explicitly creating a zeroed visual whenever 0 is passed for the EGLConfig. Mesa needs to be aware that the context is configless because it affects the initial value to use for glDrawBuffer. The first time the context is bound it will set the initial value for configless contexts depending on whether the framebuffer used is double-buffered. Reviewed-by: Kristian Høgsberg <[email protected]>
* s/Tungsten Graphics/VMware/José Fonseca2014-01-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tungsten Graphics Inc. was acquired by VMware Inc. in 2008. Leaving the old copyright name is creating unnecessary confusion, hence this change. This was the sed script I used: $ cat tg2vmw.sed # Run as: # # git reset --hard HEAD && find include scons src -type f -not -name 'sed*' -print0 | xargs -0 sed -i -f tg2vmw.sed # # Rename copyrights s/Tungsten Gra\(ph\|hp\)ics,\? [iI]nc\.\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./g /Copyright/s/Tungsten Graphics\(,\? [iI]nc\.\)\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./ s/TUNGSTEN GRAPHICS/VMWARE/g # Rename emails s/[email protected]/[email protected]/ s/[email protected]/[email protected]/g s/jrfonseca-at-tungstengraphics-dot-com/jfonseca-at-vmware-dot-com/ s/jrfonseca\[email protected]/[email protected]/g s/keithw\[email protected]/[email protected]/g s/[email protected]/[email protected]/g s/thomas-at-tungstengraphics-dot-com/thellstom-at-vmware-dot-com/ s/[email protected]/[email protected]/ # Remove dead links s@Tungsten Graphics (http://www.tungstengraphics.com)@Tungsten Graphics@g # C string src/gallium/state_trackers/vega/api_misc.c s/"Tungsten Graphics, Inc"/"VMware, Inc"/ Reviewed-by: Brian Paul <[email protected]>
* wayland: Add an extension to create wl_buffers from EGLImagesNeil Roberts2013-12-041-0/+10
| | | | | | | | | | | | | | | | | | This adds an extension called EGL_WL_create_wayland_buffer_from_image which adds the following single function: struct wl_buffer * eglCreateWaylandBufferFromImageWL(EGLDisplay dpy, EGLImageKHR image); The function creates a wl_buffer which shares its contents with the given EGLImage. The expected use case for this is in a nested Wayland compositor which is using subsurfaces to present buffers from its clients. Using this extension it can attach the client buffers directly to the subsurface without having to blit the contents into an intermediate buffer. The compositing can then be done in the parent compositor. The extension is only implemented in the Wayland EGL platform because of course it wouldn't make sense anywhere else.
* egl: add EGL_WAYLAND_Y_INVERTED_WL attributeStanislav Vorobiov2013-09-161-0/+2
| | | | This enables querying of wl_buffer's orientation
* egl: Update to Wayland 1.2 server APIAnder Conselvan de Oliveira2013-08-071-3/+3
| | | | | | | | | | Since Wayland 1.2, struct wl_buffer and a few functions are deprecated. References to wl_buffer are replaced with wl_resource and some getter functions and calls to deprecated functions are replaced with the proper new API. The latter changes are related to resource versioning. Signed-off-by: Ander Conselvan de Oliveira <[email protected]>
* eglplatform: use unsigned long instead of 32-bit ints in generic platformRoss Burton2013-07-011-2/+2
| | | | | | | | | | In the generic Unix case use the "unsigned long" type instead of 32-bit integers so that the type sizes are consistant on 64-bit machines between X11 and not-X11. Signed-off-by: Ross Burton <[email protected]> Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* egl: Update to revision 21254 of eglext.hRobert Bragg2013-05-071-3/+42
| | | | | | | This pulls in EGL_EXT_swap_buffers_with_damage. Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kristian Høgsberg <[email protected]>
* egl: Update to revision 19987 of eglext.hKristian Høgsberg2013-01-041-5/+67
| | | | This pulls in EGL_EXT_buffer_age.
* egl: Update eglext.h to revision 19571Matt Turner2012-11-151-1/+9
| | | | Reviewed-by: Chad Versace <[email protected]>
* egl: Import eglext.h revision 19332Matt Turner2012-10-251-1/+7
| | | | | | The version number (14) wasn't updated. Reviewed-by: Brian Paul <[email protected]>
* egl: remove redundant PFNEGLQUERYSTREAMTIMEKHRPROC typedefBrian Paul2012-08-071-1/+0
| | | | | This typedef is present earlier in the header and isn't part of the EGL_KHR_stream_cross_process_fd extension. Looks like a Khronos glitch.
* egl: Import eglext.h version 14Ian Romanick2012-08-061-14/+143
| | | | | | | | | This is necessary for EGL_KHR_create_context work (including writing piglit tests). Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* wayland: Use existing EGL_TEXTURE_FORMAT for querying wl_buffer texture formatKristian Høgsberg2012-07-191-9/+5
| | | | | | | | We also reuse EGL_TEXTURE_RGBA and EGL_TEXTURE_RGB, adding only the new planar YUV texture formats: EGL_TEXTURE_Y_U_V_WL, EGL_TEXTURE_Y_UV_WL and EGL_TEXTURE_Y_XUXV_WL. Signed-off-by: Kristian Høgsberg <[email protected]>
* egl: Add EGL_WAYLAND_PLANE_WL attributeKristian Høgsberg2012-07-111-0/+14
| | | | | | | This lets us specify the plane to create the image for for multiplanar wl_buffers. Signed-off-by: Kristian Høgsberg <[email protected]>