summaryrefslogtreecommitdiffstats
path: root/include/EGL
Commit message (Collapse)AuthorAgeFilesLines
* 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]>
* egl: remove EGL_ANDROID_swap_rectangleChia-I Wu2011-12-201-8/+0
| | | | | We never support this unofficial extension, and it has been removed from Android recently. There is no point in keeping it.
* egl: update headersChia-I Wu2011-12-203-24/+73
| | | | | | | | | | | | | | | | | Update to revision 15052. EGL_MESA_drm_image is now official. But apparently we have our own extension to it and we need this in eglmesaext.h: #ifdef EGL_MESA_drm_image /* Mesa's extension to EGL_MESA_drm_image... */ #ifndef EGL_DRM_BUFFER_USE_CURSOR_MESA #define EGL_DRM_BUFFER_USE_CURSOR_MESA 0x0004 #endif #endif Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* egl: move unofficial extensions to eglmesaext.hChia-I Wu2011-12-202-136/+176
| | | | | | | | | | | | | As suggested by Ian in http://lists.freedesktop.org/archives/mesa-dev/2011-December/016035.html Note that eglext.h has to include eglmesaext.h at the end instead of the beginning because some extensions in eglmesaext.h depend on the official extensions. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* android: add support for ICSChia-I Wu2011-11-251-1/+0
| | | | | | | | With ICS (Android 4.0), several headers and structs are renamed. Define ANDROID_VERSION so that we can choose a different path depending on the platform version. I've tested only softpipe and llvmpipe. r600g is also reported to work.
* egl: add Android-specific extensionsChia-I Wu2011-08-211-0/+14
| | | | | | | | Add EGL_ANDROID_image_native_buffer and EGL_ANDROID_swap_rectangle. There is no spec for them though. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* egl: add _EGL_PLATFORM_ANDROIDChia-I Wu2011-08-211-0/+9
| | | | | | | This is Android Gingerbread platform. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* Add gbm (generic/graphics buffer manager)Benjamin Franzke2011-06-231-0/+6
|
* egl: Add a cursor use bit to MESA_drm_imageKristian Høgsberg2011-05-061-0/+1
|
* wayland: Fix prototypes for EGL_WL_bind_wayland_display extensionKristian Høgsberg2011-04-251-3/+2
|
* wayland-egl: Update to wayland-egl.h changes, drop struct wl_egl_displayKristian Høgsberg2011-04-201-1/+1
|
* egl: Add EGL_WL_bind_wayland_displayBenjamin Franzke2011-03-011-0/+14
|
* eglplatform.h: Define Wayland native platform typesKristian Høgsberg2011-02-091-0/+6
| | | | | This is conditional on WL_EGL_PLATFORM being #defined, so application must make sure to include wayland-egl.h before including any egl header.
* egl: Add EGL_MESA_drm_image extensionKristian Høgsberg2010-08-251-0/+23
| | | | Create EGLImages from DRM buffer handles.
* egl: Update eglext.h.Chia-I Wu2010-08-171-3/+100
| | | | Update to version 7 for EGL_KHR_fence_sync.
* egl: Add a test for MESA_EGL_NO_X11_HEADERS.Chia-I Wu2010-06-231-0/+10
| | | | When the macro is defined, X11 headers will not be included.
* egl: Add support for EGL_MESA_drm_display.Chia-I Wu2010-06-231-0/+11
| | | | | | | The extension defines eglGetDRMDisplay that creates an EGLDisplay from a DRM fd. Calling eglCreateWindowSurace or eglCreatePixmapSurface with such displays will generate EGL_BAD_NATIVE_WINDOW or EGL_BAD_NATIVE_PIXMAP.
* egl: Use khronos types for EGL_MESA_screen_surface.Chia-I Wu2010-05-311-2/+2
| | | | That is, use khronos_uint32_t instead of uint32_t.
* egl: Implement EGL_NOK_texture_from_pixmapKristian Høgsberg2010-05-141-0/+7
| | | | | | | This extension allows a color buffer to be used for both rendering and texturing. EGL allows the use of color buffers of pbuffer drawables for texturing, this extension extends this to allow the use of color buffers of pixmaps too.
* egl: Implement EGL_NOK_swap_regionKristian Høgsberg2010-05-131-0/+12
| | | | | | | | | This extension adds a new function which provides an alternative to eglSwapBuffers. eglSwapBuffersRegionNOK accepts two new parameters in addition to those in eglSwapBuffers. The new parameters consist of a pointer to a list of 4-integer blocks defining rectangles (x, y, width, height) and an integer specifying the number of rectangles in the list.
* eglplatform.h: recognize __unix as well for Solaris & other SVR4 platformsAlan Coopersmith2010-02-051-1/+1
| | | | Signed-off-by: Alan Coopersmith <[email protected]>
* egl: Update headers.Chia-I Wu2010-01-253-74/+163
| | | | | | Update to the current versions found at http://www.khronos.org/registry/egl/. There is one modification in khrplatform.h for GCC visibility.
* egl: Fix breakage from -fvisibility=hidden.Chia-I Wu2010-01-051-0/+5
| | | | | | Mark EGL API and driver functions as PUBLIC. Signed-off-by: Chia-I Wu <[email protected]>
* egl: also use X types for building on Apple/MacOS XBrian Paul2009-09-081-1/+2
| | | | See bug 20413.
* egl: include stdint.h to get the c99 integer typedefsBrian Paul2009-03-251-0/+1
| | | | Fixes breakage from commit 6dd9c221012d5e091b2ede90d9b2a6f0383abd58