summaryrefslogtreecommitdiffstats
path: root/src/egl/drivers
Commit message (Collapse)AuthorAgeFilesLines
* automake: src/egl/waylandBenjamin Franzke2012-01-261-1/+1
| | | | | | | So we can use the wayland scanner makro, which is way better than our previous runtime-pkgconfig hack. Reviewed-by: Matt Turner <[email protected]>
* Revert "Always build shared glapi"Matt Turner2012-01-243-0/+13
| | | | | | | | | | | This reverts commit adefee50d954151f76150af80207081ae3c247d9. Shared glapi was never tested with --enable-xlib-glx and turns out to cause a lot of problems. Conflicts: configure.ac
* Always build shared glapiMatt Turner2012-01-203-13/+0
| | | | | | | | libglapi.so, libGL.so, libGLESv2.so, libGLESv1_CM.so must all come from the same version of Mesa or bad things may happen. Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Matt Turner <[email protected]>
* wayland-drm: Drop the non-premul formats, use format codes from drm_fourcc.hKristian Høgsberg2012-01-112-26/+15
|
* egl_dri2: Put the _eglError call in the case switch caseKristian Høgsberg2012-01-111-2/+2
| | | | | Log an error in case we get an unknown format, not in case for XRGB32. I botched the edit of Roberts patch.
* egl_dri2/wayland: handle creating xrgb8888 imagesRobert Bragg2012-01-111-56/+69
| | | | | | | | | | | | | | | | | | | | When creating an EGLImage from a struct wl_buffer * this ensures that we create an XRGB8888 image if the wayland buffer doesn't have an alpha channel. To determine if a wl_buffer has a valid alpha channel this patch adds an internal wayland_drm_buffer_has_alpha() function. It's important to get the internal format for an EGLImage right so that if a GL texture is later created from the image then the GL driver will know if it should sample the alpha from the texture or flatten it to a constant of 1.0. This avoids needing fragment program workarounds in wayland compositors to manually ignore the alpha component of textures created from wayland buffers. krh: Edited to use wl_buffer_get_format() instead of wl_buffer_has_alpha(). Reviewed-by: Kristian Høgsberg <[email protected]>
* egl/x11: Merge the right version of Frederiks changeKristian Høgsberg2011-12-211-21/+8
| | | | | Argh, I merged an older broken version of the swapbuffer change instead of Frederiks fixed version. This diffs gets us back to the right version.
* egl_dri2/x11: Add support for the DRI2 SwapBuffers requestFredrik Höglund2011-12-202-21/+81
|
* egl_dri2/x11: Add support for eglSwapIntervalFredrik Höglund2011-12-203-1/+36
|
* egl_dri2/x11: error check coordinates in eglPostSubBufferNVChia-I Wu2011-12-201-5/+5
| | | | EGL_BAD_PARAMETER should be returned when any of the coordinates is negative.
* egl_dri2/x11: Add support for EGL_NV_post_sub_bufferFredrik Höglund2011-12-201-0/+17
| | | | Signed-off-by: Fredrik Höglund <[email protected]>
* egl_dri2: Fix some valgrind reported leaksBenjamin Franzke2011-12-134-8/+10
| | | | | | | Free the device_name, reported by Pekka Paalanen. Destroy wayland display and drm resources, if created by dri2_initialize_wayland.
* egl_glx: fix eglDestroyContextChia-I Wu2011-12-031-1/+2
| | | | | | Wrong pointers are passed to glXDestroyContext. Spotted by Brian Paul.
* egl_glx: Try first a default lookup for glXGetProcAddress before loading ↵Beren Minor2011-11-271-9/+14
| | | | | | | | | | | | | | | | | | | | dynamic lib. GLX functions are sometimes directly available in the current binary. In such cases, we do not need any alternate library loaded using dlopen. Otherwise, dlopen may find the wrong libGL library and get functions that conflicts with the current loaded ones. For example, on Debian Sid with nvidia binary drivers, using mesa's libEGL with GLX driver leads to wrong glXGetFBConfigs symbol loaded (or loaded twice?), which leads to "GLX: failed to create any config" error message as the glXGetFBConfigs symbol seems to return garbage. If the binary is linked with nvidia's libGL, the GLX symbols are already available. Without this patch, convert_fbconfig (src/egl/drivers/glx/egl_glx.c:233) fails for every config found, after glXGetFBConfigAttrib(... GLX_RENDER_TYPE, ...) call, as the value returned has GLX_COLOR_INDEX_BIT and not GLX_RGBA_BIT. [olv: initialize handle, prepend egl_glx to the commit log]
* android: add support for ICSChia-I Wu2011-11-252-9/+18
| | | | | | | | 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_glx.c: use unsigned instead of uintMatt Turner2011-09-191-3/+3
| | | | | | | We've had a hack to fix this in Gentoo on Solaris for a while. Signed-off-by: Matt Turner <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* wayland: Flush before blocking in swapbuffers.Jørgen Lind2011-09-151-2/+5
| | | | Make sure that we've sent the frame request that we're going to block on.
* egl_dri2: add support for RGBA_8888 android native bufferChia-I Wu2011-09-091-0/+2
| | | | HAL_PIXEL_FORMAT_RGBA_8888 maps to __DRI_IMAGE_FORMAT_ABGR8888.
* egl_dri2: Destroy callback in release_pending_bufferBenjamin Franzke2011-09-011-0/+2
|
* wayland: Track changes to drop wl_visualKristian Høgsberg2011-08-313-15/+71
|
* egl_dri2: Only clear EGL_PIXMAP_BIT if DRI config is double bufferedKristian Høgsberg2011-08-311-2/+4
| | | | | | | We don't want to set the pixmap bit in the EGL config if the DRI config we're adding is a double buffered config. However, don't clear any other bits the platform might pass in in the surface_type argument.
* wayland: Track server side wayland changesKristian Høgsberg2011-08-311-1/+1
|
* wayland: Use new wl_callback mechanismKristian Høgsberg2011-08-311-31/+24
|
* egl_dri2: Drop dri2_surface_type enumBenjamin Franzke2011-08-312-18/+9
| | | | | Was only used in platform_wayland, and the remaining egl stack uses _EGLSurface::Type with one of EGL_{WINDOW,PIXMAP,PBUFFER}_BIT.
* egl_dri2: add pbuffer support to platform_androidChia-I Wu2011-08-311-5/+16
| | | | | | This is a simple change thanks to allocateBuffer. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: check the surface type in platform_androidChia-I Wu2011-08-311-45/+56
| | | | | | | Check the surface type is EGL_WINDOW_BIT before doing anything, in preparation for pbuffer support. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: refactor droid_get_buffers_with_formatChia-I Wu2011-08-311-27/+39
| | | | | | Move the loop to parse attachments to its own function. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: set ctx->WindowRenderBufferChia-I Wu2011-08-311-0/+6
| | | | | | | | | Set ctx->WindowRenderBuffer to EGL_BACK_BUFFER. As EGL_WINDOW_BIT of a config is set only when there is dri_double_buffer, that makes sure window surfaces are always double-buffered and contexts will render to the back buffer. Reviewed-by: Chad Versace <[email protected]>
* android: add support for egl_dri2Chia-I Wu2011-08-281-0/+50
| | | | | | | Add rules to build egl_dri2 and make it a built-in EGL driver of libGLES_mesa. Reviewed-by: Chad Versace <[email protected]>
* egl_dri2: add support for AndroidChia-I Wu2011-08-283-0/+749
| | | | | | | | | | | | | | | | | | | | | | Add platform_android.c that supports _EGL_PLAFORM_ANDROID. It works with drm_gralloc, where back buffers of windows are backed by GEM objects. In Android a native window has a queue of back buffers allocated by the server, through drm_gralloc. For each frame, EGL needs to dequeue the next back buffer render to the buffer enqueue the buffer After enqueuing, the buffer is no longer valid to EGL. A window has no depth buffer or other aux buffers. They need to be allocated locally by EGL. Reviewed-by: Benjamin Franzke <[email protected]> Reviewed-by: Chad Versace <[email protected]> [olv: with assorted minor changes, mostly suggested during the review]
* egl_dri2: allow RGBA masks to be specified for matchingChia-I Wu2011-08-285-5/+27
| | | | | | | | Add rgba_masks to dri2_add_config. When it is non-NULL, the DRI config is accepted only when the offsets and sizes of the its channels match rgba_mask. Reviewed-by: Chad Versace <[email protected]>
* dri2: Add __DRI_BUFFER_COUNT tokenBenjamin Franzke2011-08-161-2/+0
| | | | | | | Remove definition from egl_dri2. Defining this is egl_dri2.h breaks as soon as a new dri2 buffer token is added like with commit 4501a5d6e8d00fd0d87625352ed5ba1a8861f72e.
* Destroy context in dri2/glx driver when apps call eglDestroyContextCooper Yuan2011-08-142-2/+38
|
* egl/gbm: Fix EGL_DEFAULT_DISPLAYBenjamin Franzke2011-08-043-2/+31
|
* Rename swrastg_dri to swrast_driMarek Olšák2011-07-141-5/+0
| | | | | I prefer it this way and it has been suggested earlier by others too. Opinions?
* Fixes for leaks reported by cppcheck.Völgyes Dávid2011-07-062-2/+7
|
* egl_dri2: Fix compilation if udev devel files are not installedBenjamin Franzke2011-07-021-0/+4
| | | | NOTE: This is a candidate for the 7.11 branch.
* egl: add copyright noticesChia-I Wu2011-07-021-12/+14
| | | | | The list of copyright holders could be incomplete. Please update directly or notify me if your name is missing.
* egl: Fix Terminate with shared gbm screensBenjamin Franzke2011-06-272-2/+7
| | | | NOTE: This is a candidate for the 7.11 branch.
* egl_dri2: Build drm platform only if enabledBenjamin Franzke2011-06-242-1/+8
|
* egl_dri2: Hookup gbm as drm platformBenjamin Franzke2011-06-234-61/+127
|
* egl_dri2/wayland: Hook up new buffer.release eventBenjamin Franzke2011-06-212-16/+127
|
* wayland: Pass use_invalidate extension to driverKristian Høgsberg2011-06-202-2/+3
|
* egl_dri2/x11: Check availability of the dri2 extensionBenjamin Franzke2011-06-201-0/+9
| | | | | Do this before query versions, or xcb will shutdown and the connection can not be used for swrast.
* egl_dri2: try swrastg_dri if swrast_dri failsChia-I Wu2011-06-131-0/+6
| | | | Per libGL.
* egl_dri2: add dri2_load_driver_swrastChia-I Wu2011-06-133-19/+44
| | | | | Refactor dri2_load_driver and add dri2_load_driver_swrast for loading swrast DRI driver.
* egl_dri2: Compare configs before matching themBenjamin Franzke2011-06-121-1/+13
| | | | | This compares attribs like buffer size, and will prevent merging unequal configs because of match criterion is e.g. ATLEAST.
* egl_dri2/wayland: Add support for EGL_DEFAULT_DISPLAYBenjamin Franzke2011-06-122-3/+23
|
* egl_dri2: Add missing headerBenjamin Franzke2011-06-071-0/+1
|
* egl_dri2: Add missing licenseBenjamin Franzke2011-06-071-0/+28
|