summaryrefslogtreecommitdiffstats
path: root/docs/specs
Commit message (Collapse)AuthorAgeFilesLines
* egl: finalize EGL_MESA_query_driverEric Engestrom2019-01-241-6/+11
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* Add extension doc for MESA_query_driverVeluri Mithun2019-01-231-0/+90
| | | | | | | | | Signed-off-by: Veluri Mithun <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Acked-by: Eric Engestrom <[email protected]>
* specs: Bump GLX_MESA_query_renderer to version 9Adam Jackson2018-12-181-3/+9
| | | | | | | | Note that we have an official GL extension number, pick the appropriate section of the GLX spec to modify, and add changelog. Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Adam Jackson <[email protected]>
* specs: Remove GLX_RENDERER_ID_MESA from GLX_MESA_query_rendererAdam Jackson2018-12-181-19/+0
| | | | | | | | | | | | | | | | | | | | | | This has not even had an attempt at implementation. If you asked for renderer 0 - which, the spec implies, should always work - then dri2_convert_glx_attribs would fail, we'd silently fall back to creating an indirect context, and xserver would also not recognize the attribute and would throw BadValue at you. The API would be difficult to use in any case, since there's no way to enumerate how many renderers the screen has. I'd be tempted to add that by defining: glXQueryRendererIntegerMESA(dpy, screen, /* renderer = */ -1, 0, &value); to return the number of renderers, but a new entrypoint might be cleaner. Still, better to not specify it at all than to lie about it. Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Adam Jackson <[email protected]>
* specs: Remove GLES profile interaction text from GLX_MESA_query_rendererAdam Jackson2018-12-181-12/+0
| | | | | | | | | | | | | | | | In one place we say, if GLES isn't supported then the profile version will be 0.0. Then later we say, if the GLES profile extension isn't supported then GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA is not mentioned in the spec. A strict reading of the latter would mean that GLX_RENDERER_OPENGL_ES_PROFILE_VERSION_MESA is not a recognized token, and the query should instead return False. The implementation does not check for the GLES profile extensions, and the additional complexity doesn't seem worth it. Removing the interaction text makes the spec match the implementation. Reviewed-by: Emil Velikov <[email protected]> Signed-off-by: Adam Jackson <[email protected]>
* specs: Add EGL_MESA_device_softwareAdam Jackson2018-11-011-0/+82
| | | | | | | | | | | | | | The device extension string is expected to contain the name of the extension defining what kind of device it is, so the caller can know what kinds of operations it can perform with it. So that string had better be non-empty, hence this trivial extension. v2: - drop "fallback", update history and update contributor list Signed-off-by: Adam Jackson <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Mathias Fröhlich <[email protected]>
* docs: Initial version of INTEL_shader_atomic_float_minmax specIan Romanick2018-08-221-0/+200
| | | | | | | | | | | | | | | v2: Describe interactions with the capabilities added by SPV_INTEL_shader_atomic_float_minmax v3: Remove 64-bit float support. v4: Explain NaN issues. Explain issues with atomicMin(-0, +0) and atomicMax(-0, +0). v5: Fix whitespace issues noticed by Caio. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
* mesa: GL_MESA_framebuffer_flip_y extension [v4]Fritz Koenig2018-07-272-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | Adds an extension to glFramebufferParameteri that will specify if the framebuffer is vertically flipped. Historically system framebuffers are vertically flipped and user framebuffers are not. Checking to see the state was done by looking at the name field. This adds an explicit field. v2: * updated spec language [for chadv] * correctly specifying ES 3.1 [for chadv] * refactor access to rb->Name [for jason] * handle GetFramebufferParameteriv [for chadv] v3: * correct _mesa_GetMultisamplefv [for kusmabite] v4: * update spec language [for chadv] * s/GLboolean/bool/g [for chadv] * s/InvertedY/FlipY/g [for chadv] * s/inverted_y/flip_y/g [for chadv] * assert changes [for chadv] Reviewed-by: Chad Versace <[email protected]>
* mesa: add GL_PROGRAM_BINARY_FORMAT_MESA enumJordan Justen2017-12-081-0/+3
| | | | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]> Reviewed-by: Timothy Arceri <[email protected]>
* docs: annotate MESA_program_debug as obsoleteEmil Velikov2017-12-061-1/+1
| | | | | | | It has been obsolete for years - state it explicitly. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* docs/specs: annotate MESA_set_3dfx_mode as obsoleteEmil Velikov2017-12-011-1/+1
| | | | | | | | | | | | Aimed to work with Glide, which hasn't been a thing in over 10 years. There are no drivers that implement it, so annotate it as obsolete v2: Move the extension to OLD/ Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]> (v1) Reviewed-by: Adam Jackson <[email protected]> (v1) Reviewed-by: Ian Romanick <[email protected]>
* docs/specs: annotate MESA_agp_offset as obsoleteEmil Velikov2017-12-011-2/+1
| | | | | | | | | | | | | | | No Mesa driver has implemented the extension in ages. Seemingly non Mesa drivers don't implement it either. As mentioned by Ian, the extension is effectively superseded by ARB_vertex_buffer_object. v2: Move the extension to OLD/ Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]> (v1) Reviewed-by: Adam Jackson <[email protected]> (v1) Reviewed-by: Ian Romanick <[email protected]>
* docs: Fix GL_MESA_program_debug enumsRoland Scheidegger2017-11-091-18/+8
| | | | | | | | | | 13b303ff9265b89bdd9100e32f905e9cdadfad81 added the actual enums but didn't remove the already existing XXXX ones. (And also duplicated the "fragment" names instead of using the "vertex" names.) Fixes: 13b303ff9265b89bdd91 "docs: Update the list of used MESA GL enums." Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Implement a new GL_MESA_tile_raster_order extension.Eric Anholt2017-10-101-0/+5
| | | | | | | | | | | | | | The intent is to use this extension on vc4 to allow X11 to do overlapping CopyArea() within a pixmap without first blitting the pixmap to a temporary. With associated glamor patches, improves x11perf -copywinwin100 performance on a Raspberry Pi 3 from ~4700/sec to ~5130/sec, and is an even larger boost to uncomposited window movement performance (most copywinwin100 copies don't overlap). v2: Fix glIsEnabled() on the new enums. v3: Drop the local spec since I'm upstreaming the spec. Reviewed-by: Nicolai Hähnle <[email protected]>
* docs: Update the list of used MESA GL enums.Eric Anholt2017-10-101-0/+10
| | | | Acked-by: Nicolai Hähnle <[email protected]>
* docs: Fix a typo in the old MESA_program_debug spec.Eric Anholt2017-10-101-1/+1
| | | | | | | Noticed that we had two 0x8bb4 in the spec while grepping to find an open slot in the MESA enums set. gl.xml had the right value. Acked-by: Nicolai Hähnle <[email protected]>
* docs: Update MESA_shader_integer_functions spec to version 3.Kenneth Graunke2017-04-131-6/+8
| | | | | | | | | | | | | When publishing this spec on the OpenGL ES registry, Jon Leech noticed that it didn't actually mention what the ES dependencies and interactions were. I looked at extensions_table.h and noted that we expose it in ES 3.0 contexts, and he added the obvious spec texts. The updated copy also contains our official extension number. https://github.com/KhronosGroup/OpenGL-Registry/issues/3 Acked-by: Matt Turner <[email protected]>
* docs/specs: update Khronos registries URLsEric Engestrom2017-03-161-4/+4
| | | | | | | | The registries were migrated to git and are now hosted on GitHub. The old svn is now read-only, and will not be updated anymore. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Plamena Manolova <[email protected]>
* docs: https all the links \o/Eric Engestrom2017-02-091-3/+3
| | | | | | | | | Most of them already redirected to https anyway, so we might as well avoid the redirection and the security implications by linking directly to the right protocol. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* docs: add EGL_MESA_drm_image_formats extension proposalNicolai Hähnle2017-02-062-0/+103
|
* add EGL_TEXTURE_EXTERNAL_WL to WL_bind_wayland_display specRob Clark2016-12-051-0/+5
| | | | | Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* docs/specs: Update allocated EGL enum valuesChad Versace2016-10-141-1/+26
| | | | | | | | | | | | Document the EGL enum ranges for Mesa and those values allocated by the following extensions: EGL_MESA_drm_image EGL_MESA_platform_gbm EGL_MESA_platform_surfaceless EGL_WL_bind_wayland_display Reviewed-by: Emil Velikov <[email protected]>
* doc/specs: Reference the Khronos registry XMLChad Versace2016-10-141-6/+10
| | | | | | | Years ago Khronos replaced the registry's spec files with newfangled XML files. Update the reference in doc/specs/enum.txt accordingly. Reviewed-by: Emil Velikov <[email protected]>
* egl: Move old EGL_MESA_screen_surface specChad Versace2016-10-141-0/+564
| | | | | | | It was the lone file in src/egl/docs. Move it to where the other specs live, in $MESA_TOP/docs/specs. Reviewed-by: Emil Velikov <[email protected]>
* docs: Add EGL_MESA_platform_surfaceless.txt (v2)Chad Versace2016-10-141-0/+120
| | | | | | | | v2: - Assign enum values. - Define interactions with EGL_EXT_platform_base and EGL 1.4. Reviewed-by: Emil Velikov <[email protected]>
* docs: Note MESA_configless_context as supersededAdam Jackson2016-09-121-2/+6
| | | | | | Reviewed-by: Kristian Høgsberg <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Signed-off-by: Adam Jackson <[email protected]>
* MESA_shader_integer_functions: Add extension specificationIan Romanick2016-07-191-0/+520
| | | | | | | | | v2: Fix typo in #extension line noticed by Ken. v3: Update spec status. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* Import current draft of EXT_shader_samples_identical specIan Romanick2015-11-191-0/+176
| | | | | | | | | | | v2: Add Neil to the list of contributors. I meant to do that before, but Matt reminded me. v3: Fix typos noticed by Nicolai. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Chris Forbes <[email protected]>
* egl: image_dma_buf_export - use KHR 64-bit typeDave Airlie2015-05-051-10/+15
| | | | | | | | 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/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | 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]>
* Add the EGL_MESA_configless_context extensionNeil Roberts2014-03-121-0/+125
| | | | | | | | | | | | | | | | | | | | 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]>
* specs: MESA_query_renderer.spec resolve a couple of typosEmil Velikov2014-02-211-3/+8
| | | | | | Cc: Ian Romanick <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* docs: Trivial updates to MESA_query_renderer.specIan Romanick2014-02-181-2/+2
| | | | | | | Fix the version and the status before sending to Khronos for listing in the registry. Signed-off-by: Ian Romanick <[email protected]>
* mesa: Remove support for GL_MESA_texture_arrayIan Romanick2013-12-041-1/+1
| | | | | | | | | | | | | | | | | | This extension enabled the use of texture array with fixed-function and assembly fragment shaders. No applications are known to use this extension. NOTE: This patch regresses GL_TEXTURE_1D_ARRAY and GL_TEXTURE_2D_ARRAY cases of the copyteximage piglit test. The test is incorrectly using texture arrays with fixed function while only requiring the GL_EXT_texture_array extension. A fix for the test has been posted to the piglit mailing list. http://lists.freedesktop.org/archives/piglit/2013-November/008639.html Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* wayland: Add an extension to create wl_buffers from EGLImagesNeil Roberts2013-12-041-0/+101
| | | | | | | | | | | | | | | | | | 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.
* docs: Import extension spec for GLX_MESA_query_rendererIan Romanick2013-11-071-0/+405
| | | | | | | | | | | | | | | | | The enumerated values are currently allocated from Intel's range. v2: Fix a typo. Update the list of functions to which the new enums can be passed. The "Current" versions were previously missing. Both things noticed by Marek. v3: Fix typo in return type of glXQueryRendererIntegerMESA in the spec body (noticed by Ken). Fix typo in issue #14 referencing itself instead of issue #13 (noticed by Dave). Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Marek Olšák <[email protected]> Acked-by: Dave Airlie <[email protected]>
* egl: Also add EGL_TEXTURE_FORMAT as a valid eglQueryWaylandBufferWL attributeKristian Høgsberg2013-09-161-0/+1
| | | | | Now that we have a table of accepted eglQueryWaylandBufferWL() attributes, we should also list EGL_TEXTURE_FORMAT.
* egl: add EGL_WAYLAND_Y_INVERTED_WL attributeStanislav Vorobiov2013-09-161-0/+17
| | | | This enables querying of wl_buffer's orientation
* mesa: Rename MESA_shader_integer_mix to EXT_shader_integer_mixIan Romanick2013-09-131-8/+11
| | | | | | | | | | | | | | Everyone at the Khronos meeting was as surprised that GLSL didn't already support this as we were. Several vendors said they'd ship it, but there didn't seem to be enough interest to put in the effort to make it ARB or KHR. v2: Fix a couple typos and rename the spec file to EXT_shader_integer_mix.spec. Suggested by Roland. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]>
* glsl: Implement MESA_shader_integer_mix extension.Matt Turner2013-09-091-0/+135
| | | | | | | Because why doesn't GLSL allow you to do this already? Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* egl: Update to Wayland 1.2 server APIAnder Conselvan de Oliveira2013-08-071-2/+6
| | | | | | | | | | 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]>
* mesa: Remove GL_MESA_resize_buffersIan Romanick2013-06-281-1/+1
| | | | | | | | | | | | Commit bab755a made the implementation a no-op, and it was only ever enabled by software rasterizers. v2: Move the spec into docs/specs/OLD since it's now obsolete (squashed patch from Andreas Boll) Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* docs: move specs to a separate folderEmil Velikov2013-04-1722-0/+4290
Handle legacy/obsolete specs as well List all specs in extensions.html Mark 'OLD' extensions as obsolete in extensions.html Update the spec location in old relnotes Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]>