History log of /external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
65476169f344115462a652da39972d16aadee86f 09-Nov-2012 Chad Versace <chad.versace@linux.intel.com> egl/dri2: Set error code when dri2CreateContextAttribs fails

When dri2CreateContextContextAttribs failed, eglCreateContext returned
NULL yet set the error code to EGL_SUCCESS! The problem was that
eglCreateContext ignored the error code returned by
driCreateContextAttribs.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56706
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
(cherry picked from commit 5cf8536690226b3bd19d19197fcec501a278703c)
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
00978098794f723230a33cab1c1152686f1c4fa5 31-Aug-2012 Jakob Bornecrantz <jakob@vmware.com> dri: Rework planar image interface

As discussed with Kristian on #wayland. Pushes the decision of components into
the dri driver giving it greater freedom to allow t to implement YUV samplers
in hardware, and which mode to use.

This interface will also allow drivers like SVGA to implement YUV surfaces
without the need to sub-allocate and instead send 3 seperate buffers for each
channel, currently not implemented.

I have tested these changes on Gallium Svga. Scott tested them on both intel
and Gallium Radeon. Kristan and Pekka tested them on intel.

v2: Fix typo in dri2_from_planar.
v3: Merge in intel changes.

(cherry picked from commit 6a7dea93fa70d670a5954e47a47075a2703209d4)

Tested-by: Scott Moreau <oreaus@gmail.com>
Tested-by: Pekka Paalanen <ppaalanen@gmail.com>
Tested-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
b41f36bde778e6b11129f51de423b7c3aece26b4 17-Aug-2012 Paulo Alcantara <pcacjr@profusion.mobi> egl_dri2: Fix segmentation fault

The segmentation fault occurs when DRI2 is not loaded up and
dri2_setup_screen() function deferences dri2_dpy->dri2 (since it's NULL
at this point).

This patch fixes the segmentation fault by checking if dri2 pointer is
not NULL before deferencing it.

Signed-off-by: Paulo Alcantara <pcacjr@profusion.mobi>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
dbecb413008c19e1864de93d9a8a9123bfee46e7 20-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl: Allow OpenGL ES 3.0 as a version

In the DRI2 back-end this will get the same API as GLES 2.0.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
7b4b4f8e68ba7a6109cc508de10314e966e56f5f 20-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Add support for EGL_KHR_create_context and EGL_EXT_create_context_robustness

Just like in GLX, EGL_KHR_create_context requires DRI2 version >= 3, and
EGL_EXT_create_context_robustness requires both DRI2 version >= 3 and the
__DRI2_ROBUSTNESS extension.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9d76ad2fac5b6558d63656e9a29cda394bb4ec80 19-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Silence warnings about missing initializers

egl_dri2.c: At top level:
egl_dri2.c:325:4: warning: missing initializer [-Wmissing-field-initializers]
egl_dri2.c:325:4: warning: (near initialization for 'swrast_driver_extensions[2].version') [-Wmissing-field-initializers]
egl_dri2.c:330:4: warning: missing initializer [-Wmissing-field-initializers]
egl_dri2.c:330:4: warning: (near initialization for 'swrast_core_extensions[1].version') [-Wmissing-field-initializers]

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
3fd79dd9886f05f45f3dc94c028a38dd75b8ee1b 19-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl: Rename ClientVersion to ClientMajorVersion, add ClientMinorVersion

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
ce55741cbc0837338b73f9112ab4d84363ebaee1 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Use createContextAttribs if DRI2 version >= 3

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
38f91f2b08e2457fa637c631490fe713e8ee5429 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Require DRI2 version 2

The extra block in dri2_create_context is to prevent extra white space noise
in the next patch.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
b50703aea55450e04bcd8154335774786e0f253b 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl: Replace KHR_surfaceless_* extensions with KHR_surfaceless_context

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.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
cb77f5dd1f6658fca671454c9b5be9a23c3bf3e4 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Refactor dereference of dri2_ctx_shared

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
05413ddb1da5d4f17b6da891fd2d76cff4947979 18-Jul-2012 Ian Romanick <ian.d.romanick@intel.com> egl_dri2: Remove swrast version >= 2 checks

Since support for swrast version 2 was added (f55d027a), it has also been
required. In swrast_driver_extensions, version 2 is set for __DRI_SWRAST
extension. Remove the spurious version checks sprinked through the code.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: Kristian Høgsberg <krh@bitplanet.net>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
d7522ed13052a3d30bc4faedce04685263f57933 19-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> wayland: Support EGL_WIDTH and EGL_HEIGHT queries for wl_buffer

We're going to make the public wl_buffer struct as small as possible.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e23bfdb3298ec43ef895121527fb4d79474d7b1b 19-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> wayland: Use existing EGL_TEXTURE_FORMAT for querying wl_buffer texture format

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 <krh@bitplanet.net>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e6a33570b73aa56c87818d7f67a122d4427b7841 05-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> egl: Add EGL_WAYLAND_PLANE_WL attribute

This lets us specify the plane to create the image for for multiplanar
wl_buffers.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
1aaec8c60985ffe03af265bf8f659ee0319926ca 05-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> wayland-drm: Add protocol to create planar buffers
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
379eb47ea61c87c9ac071fa6d93e49ae3f02ac2c 05-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> wayland-drm: Pass struct wl_drm_buffer to the driver

We're going to extend this to support multi-plane buffers, so pass this
to the driver so it can access the details.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5f5746a692e8f279dcba9e25ad0bb2c41a546f6e 05-Jul-2012 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Reorganize the EGLImage constructors to share more code

We factor out all the EGL book-keeping into dri2_create_image() and
simplify the wayland case by using dupImage.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9f0f00c319a18ec2e9f022482fa11990e682c1d7 05-Feb-2012 Eric Anholt <eric@anholt.net> egl: Drop _EGL_MAIN entrypoint obfuscation.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
027ce0c493a85c863df88b43f61aea34bcd4cd58 24-Jan-2012 Matt Turner <mattst88@gmail.com> Revert "Always build shared glapi"

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
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
adefee50d954151f76150af80207081ae3c247d9 12-Jan-2012 Matt Turner <mattst88@gmail.com> Always build shared glapi

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 <kenneth@whitecape.org>
Signed-off-by: Matt Turner <mattst88@gmail.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
58dc1b28d1ef4d1931c52b079d304f2e1546329d 11-Jan-2012 Kristian Høgsberg <krh@bitplanet.net> wayland-drm: Drop the non-premul formats, use format codes from drm_fourcc.h
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
513d1feee46d05b71094c60ee09fa263867f25b7 11-Jan-2012 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Put the _eglError call in the case switch case

Log an error in case we get an unknown format, not in case for XRGB32.
I botched the edit of Roberts patch.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
670f182a1f0401f34b1fb7ead50644589737f0d2 10-Jan-2012 Robert Bragg <robert@linux.intel.com> egl_dri2/wayland: handle creating xrgb8888 images

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 <krh@bitplanet.net>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
655f2c1d6593064b83f64a527798f48cd300fa16 20-Dec-2011 Fredrik Höglund <fredrik@kde.org> egl_dri2/x11: Add support for eglSwapInterval
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
2a58453e25899e726f02db005de0e1296c326845 13-Dec-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Fix some valgrind reported leaks

Free the device_name, reported by Pekka Paalanen.

Destroy wayland display and drm resources,
if created by dri2_initialize_wayland.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
7b1d94e5d1f53ac5f59000176aea1d02fc9a1181 31-Aug-2011 Kristian Høgsberg <krh@bitplanet.net> wayland: Track changes to drop wl_visual
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
447bb454d848d98134ff916ab8a3b316fb136c59 01-Sep-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Only clear EGL_PIXMAP_BIT if DRI config is double buffered

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.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
357d3f30f36878a3010547b669f055a2043cbbaa 26-Aug-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: set ctx->WindowRenderBuffer

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 <chad@chad-versace.us>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9779f6f5c143506d71420d78bb51b2fa7c995378 05-Aug-2011 Chia-I Wu <olvaffe@gmail.com> egl_dri2: add support for Android

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 <benjaminfranzke@googlemail.com>
Reviewed-by: Chad Versace <chad@chad-versace.us>

[olv: with assorted minor changes, mostly suggested during the review]
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
58911b86a15676f116c693e84ea6b9ebabb906ed 05-Aug-2011 Chia-I Wu <olvaffe@gmail.com> egl_dri2: allow RGBA masks to be specified for matching

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 <chad@chad-versace.us>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f5e757ea60d9abb848d98af01e1986be3e35e236 14-Aug-2011 Cooper Yuan <cooperyuan@gmail.com> Destroy context in dri2/glx driver when apps call eglDestroyContext
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
32f4cf38085e4056b8e4a9fc78fea28897a1d05f 29-Jun-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl/gbm: Fix EGL_DEFAULT_DISPLAY
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5fe54df58f31e5d321f7cbd5b095eb8c2417deb1 27-Jun-2011 Marek Olšák <maraeo@gmail.com> Rename swrastg_dri to swrast_dri

I prefer it this way and it has been suggested earlier by others too.
Opinions?
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f747d03b1d3aa4e63417bd8486909f63b4a33be4 06-Jul-2011 Völgyes Dávid <david.volgyes@gmail.com> Fixes for leaks reported by cppcheck.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
992680c8b46d72cbc61888b8439d815bff42986c 27-Jun-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl: Fix Terminate with shared gbm screens

NOTE: This is a candidate for the 7.11 branch.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
629c15aaacb69a8f2060e366fba679601738b22d 24-Jun-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Build drm platform only if enabled
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e5fc4c81ce5aa261e330977f1a672838cd186cdb 30-May-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Hookup gbm as drm platform
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
77e031a1c423affde99934f0fd059d49852e2729 08-Jun-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: try swrastg_dri if swrast_dri fails

Per libGL.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
cf69eeacc6931e833e7894a379af4fae085881e9 08-Jun-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: add dri2_load_driver_swrast

Refactor dri2_load_driver and add dri2_load_driver_swrast for loading
swrast DRI driver.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
16e30276e843b6f788aee75547136ea24e4a4248 11-Jun-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Compare configs before matching them

This compares attribs like buffer size, and will prevent merging
unequal configs because of match criterion is e.g. ATLEAST.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
b8325fd2554aafde3d0b784b7944b1473af7d144 11-Jun-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2/wayland: Add support for EGL_DEFAULT_DISPLAY
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
83c68758be3589edeab4d20346388241dc2ebaac 12-May-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Discard similar configs
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
93aea63a33c575bbce80acad391e810acc2f3e94 11-May-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Make it possible to not compile in the X11 platform
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5de2c67ba7d62882fe2c5e2a307e58f4f637fadd 12-May-2011 José Fonseca <jfonseca@vmware.com> egl/dri2: Avoid unused static functions.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
4a47d6d46b397bf31a1fd22d35bd40ef03bd9357 12-May-2011 José Fonseca <jfonseca@vmware.com> egl/dri2: Prevent uninitialized variable dereference.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
6a661895e946f38b21775bf9cb45ef6b22fab85a 12-May-2011 José Fonseca <jfonseca@vmware.com> egl: Fix int <-> ptr casts.

Based on zhigang gong <zhigang.gong@gmail.com>'s patch.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e5169e9615e8391ea369415b356168717b8f7be0 06-May-2011 Kristian Høgsberg <krh@bitplanet.net> egl: Add a cursor use bit to MESA_drm_image
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
834b84149d99526e4e7a3cfa6ba9fe81e5fb9eda 30-Apr-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl/wayland-drm: Generalize interface

Do not depend on _EGLDisplay and _EGLImage.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
a1bd01247320d73cc296cce53f2408c0aa4af05a 08-Mar-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: We don't actually support KHR_gl_texture_2D_image
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
981e338611699ed965966a161b7ba0aaa3e87ee0 08-Mar-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Enable image extensions in one place

We know what we can support in egl_dri2.c so just enable the extensions
there.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
4f6fbfa0ed45dcd4be236a286725077c8f005647 07-Mar-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Add attribute map for __DRI_ATTRIB_FRAMEBUFFER_SRGB_CAPABLE

Broken since 6538b5824e298eaebede2d9686c7607c44ab446a.
Thanks to iskren on #wayland for helping on finding this.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
6b369c4c7cd8a52f99bbff2a57fb316b33a87495 21-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl: Add EGL_WL_bind_wayland_display
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f55d027ac2e0423eba5d0664cc36668520597703 17-Feb-2011 Haitao Feng <haitao.feng@intel.com> egl_dri2: add swrast

This enables the egl_dri2 driver to load swrast driver
for software rendering. It could be used when hardware
dri2 drivers are not available, such as in VM.

Signed-off-by: Haitao Feng <haitao.feng@intel.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
4e8f95f64d004aa1278609c5bbac9a53c0c6e4c9 09-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Always unbind old contexts

This fixes __DRIdrawable refcounting.
Binding a context increases their refcount,
so we need to decrease it.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
87dde5b1cd596c4008695ff2db9469f88c09f925 09-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Use double buffering for window surfaces
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
93aea84f472f5f9ff588f7b2d4f7320ec43bc216 04-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Add wayland platform
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
a8128d7d4b7b89d483ead0003140af68a1c95ebf 04-Feb-2011 Benjamin Franzke <benjaminfranzke@googlemail.com> egl_dri2: Enable pixmap bind_to_texture according to the extension
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9dc5de5bb13bfcd960f178c8e0eac265c3496fa8 03-Feb-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Split out drm platform implementation to a separate file
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
2889d9640fa98b690c6a89593572bbc9ea5640e3 03-Feb-2011 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Split out x11 platform code
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
218381d92755fa080bbb5635c0c4ed6d5296b79c 29-Jan-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: Export glapi symbols for DRI drivers.

When an app loads libEGL.so dynamically with RTLD_LOCAL, loading DRI
drivers would fail because of missing glapi symbols. This commit makes
egl_dri2 load libglapi.so with RTLD_GLOBAL to export glapi symbols for
future symbol resolutions.

The same trick can be found in GLX. However, egl_dri2 can only do so
when --enable-shared-glapi is given. Because, otherwise, both libGL.so
and libglapi.so define glapi symbols and egl_dri2 cannot tell which
library to load.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
a22a332fc7cc54d4d0973dcd21a90159cc51de1a 12-Jan-2011 Chia-I Wu <olv@lunarg.com> egl: Improve driver selection.

The idea is to be able to match a driver using the following order

try egl_gallium with hw renderer
try egl_dri2
try egl_gallium with sw renderer
try egl_glx

given the module list

egl_gallium
egl_dri2
egl_glx

For that, UseFallback initialization option is added. The module list
is matched twice: with the option unset and with the option set. In the
first pass, egl_gallium skips its sw renderer and egl_glx rejects to
initialize since UseFallback is not set. In the second pass,
egl_gallium skips its hw renderer and egl_dri2 rejects to initialize
since UseFallback is set. The process stops at the first driver that
initializes the display.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
655e4598927728a663f4cfcd6babdf7e5ad83f77 12-Jan-2011 Chia-I Wu <olv@lunarg.com> egl: Simplify driver matching.

Add initialization options that drv->API.Initialize should support.
Replace drv->Probe by TestOnly initialization option and simplify
_eglMatchDriver.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
a4a38dcf61f141297a083ccac217200947d57b0d 13-Jan-2011 Chia-I Wu <olv@lunarg.com> egl: Cleanup _EGLDisplay initialization.

Reorder/rename and document the fields that should be set by the driver during
initialization. Drop the major/minor arguments from drv->API.Initialize.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
39812c48dfb18e6c3b896db8a8395eeebef8cc1b 12-Jan-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: Fix eglGetProcAddress.

The driver struct is zeroed after dri2_load. Oops.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c98ea26e16b6458b4385d6558936696e4d099455 07-Jan-2011 Chia-I Wu <olv@lunarg.com> egl: Make egl_dri2 and egl_glx built-in drivers.

These two drivers are small in size. Making them built-in should
simplify packaging.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
fef5d14494ff19ea302e247ba593e189a8ab62bd 07-Jan-2011 Chia-I Wu <olv@lunarg.com> egl_dri2: Look up _glapi_get_proc_address dynamically.

In preparation for making egl_dri2 built-in. It also handles

symbol lookup error: /usr/local/lib/egl/egl_dri2.so: undefined symbol:
_glapi_get_proc_address

more gracefully.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e59fa4c46c8857f2e04447777dd197464c95b2cb 09-Jan-2011 Juan Zhao <juan.j.zhao@intel.com> dri2: release texture image.

Add release function for texture_from_pixmap extension.
Some platform need to release texture image for texture_from_pixmap
extension, add this interface for those platforms.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
1f4c55128b7e4a2aa08600ae9338071a97cee8fa 24-Nov-2010 Chia-I Wu <olv@lunarg.com> egl_dri2: Fix one context, multiple surfaces.

When a context was made current to another surface, the old code did
this

dri2_dpy->core->bindContext(cctx, ddraw, rdraw);
dri2_dpy->core->unbindContext(old_cctx);

and there will be no current context due to the second line.

unbindContext should be called only when bindContext is not. This fixes
a regression since d19afc57. Thanks to Neil Roberts for noticing the
issue and creating a test case.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
778917069c34971d12c6704a53bcbd6416ddf9ab 16-Nov-2010 Robert Hooker <sarvatt@ubuntu.com> egl_dri2: Add missing intel chip ids.

Signed-off-by: Robert Hooker <robert.hooker@canonical.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
aa139a14ba7279f908da523522cb9ec0578b1ea0 10-Nov-2010 Chia-I Wu <olv@lunarg.com> egl_dri2: Fix __DRI_DRI2 version 1 support.

Correctly set __DRI_API_OPENGL flag.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
4990b771dec7d81f70f3867ba0a002894205d42b 08-Nov-2010 Alex Deucher <alexdeucher@gmail.com> egl_dri2: Add radeon chip ids
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
547e7619aac74ae13bdaa7fdf403a4ceb5212467 26-Oct-2010 Chia-I Wu <olv@lunarg.com> egl_dri2: Fix a typo that make glFlush be called at wrong time.

We want to call glFlush when there is a current context. That is,
old_ctx. This is a regression introduced by
d19afc57fe49816f3f3290410e0124d326577be2.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
d19afc57fe49816f3f3290410e0124d326577be2 22-Oct-2010 Chia-I Wu <olv@lunarg.com> egl: Use reference counting to replace IsLinked or IsBound.

Remove all _egl<Res>IsLinked and _egl<Res>IsBound. Update
_eglBindContext and drivers to do reference counting.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
8a6bdf3979c2dda0efc6771308bf9e5c32bbdab4 22-Oct-2010 Chia-I Wu <olv@lunarg.com> egl: Minor changes to the _EGLConfig interface.

Mainly to rename _eglAddConfig to _eglLinkConfig, along with a few clean
ups.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5664a983867038de48e71b65df89e0e254085af2 22-Oct-2010 Chia-I Wu <olv@lunarg.com> egl: Parse image attributes with _eglParseImageAttribList.

Avoid code duplications.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
713c8734f45b51b3758ecc95b96cf7b5aecacec8 22-Oct-2010 Chia-I Wu <olv@lunarg.com> egl: Move attributes in _EGLImage to _EGLImageAttribs.

The opaque nature of EGLImage implies that extensions almost always
define their own attributes. Move attributes in _EGLImage to
_EGLImageAttribs and add a helper function to parse attribute lists.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
b67f7295b77839a027502039e63213dce269034c 22-Oct-2010 Chia-I Wu <olv@lunarg.com> egl_dri2: Drop the use of _egl[SG]etConfigKey.

_EGLConfig can be directly dereferenced now.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e4bd50c232ed9d8c5a8a76a662a29a03d4237593 24-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> egl: Fix several 'comparison between signed and unsigned integer' warnings

I hate GCC for requiring the (int) cast on sizeof.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
137fce247f8f575f5ff38da65171bd26b4e38866 23-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> EGL DRI2: Silence 'missing initializer' warnings
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
eade946cbf787f48f773c8a4037af0ead425eb26 23-Sep-2010 Ian Romanick <ian.d.romanick@intel.com> EGL DRI2: Silence piles of 'unused variable' warnings
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
17eace581d25a626a7d75d9d1205d012cbb14a6e 23-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Pass the __DRIscreen and the __DRIscreen private back to image lookup

We will typically have a current context when we need to lookup the image,
but the lookup implementation don't need it so drop it.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9ec0b2a45e18c045fd3dbcdf846fad7faf97494c 22-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> dri2: Make createImageFromName() take a __DRIscreen instead of __DRIcontext

We can't expect to have a context when this is called, and we don't need one
so just require a __DRIscreen instead.

Reported by Yu Dai <yu.dai@intel.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e7eff0cfcef5c549678779e3c1def950feae4fb9 13-Sep-2010 Jesse Barnes <jbarnes@virtuousgeek.org> EGL DRI2: 0xa011 is Pineview not Ironlake

Point about needing a better way to do this validated.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c121608b6e409fe6c22cb8b05c52cc94d2dfb0af 13-Sep-2010 Jesse Barnes <jbarnes@virtuousgeek.org> EGL DRI2: add PCI ID for Ironlake mobile

Allows KMS EGL driver to load. We need a better way of doing this.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5aaa53e66cc49bf0d28ec53bdab4e3b7f714e5ba 04-Jun-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Add support for MESA_image_drm
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
e8a72460b799e3d5a065e4b00f9b4f24139dac52 29-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Set API version for DRM display
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
efd4a8cffd2f16b44bb8e47184262f35e780b38d 28-Jul-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Implement EGL_KHR_surfaceless_* extensions
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
2168b87b51e70e8ad914e547c6c922fc33af3a89 03-Jun-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Support _EGL_PLATFORM_DRM

This lets the egl_dri2 driver initialize on just a DRM fd.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
6717a313f26e42a7864f46f499637462a7cc3d57 30-Jun-2010 Chia-I Wu <olv@lunarg.com> egl: Store configs in a dynamic array.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f22665df95406567193dee0089f4830664ff4101 17-Jun-2010 Chia-I Wu <olv@lunarg.com> egl: Introduce platform displays internally.

This commit introduces type-safe platform displays internally. A
platform display consists of a generic pointer and an enum that
specifies the platform.

An EGLDisplay is created from a platform display. Native displays
become platform displays whose platform is determined by
_eglGetNativePlatform(). Platform windows and pixmaps may also be
introduced if needed.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
0defc2597717162e2ba7ddeee10b4bf64ed3e9a6 28-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Split driver loading out into its own function
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c5ddaa2cd71c100fe4aa6da36b6ac1a59e6665e3 28-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Check for xcb_connect() failure the right way

It always returns a valid xcb_connection_t, but if connection failed, it's in the
error state.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
6f77b751b6577c72fdbf7cb6c8eef4bc87c360cc 20-May-2010 Eric Anholt <eric@anholt.net> Make TLS EGL dri2 driver search path behavior match TLS GLX dri2 behavior.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
5dc0f49084f322dd8ff6eb585212eea8b50e3377 07-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl: Implement EGL_NOK_texture_from_pixmap

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.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
52c554a79d3ed3104a9f7d112faa9129073b5a25 07-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl: Implement EGL_NOK_swap_region

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.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
7413d9ae9ff3e21f517aea97d7a1a211867bdc68 13-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Downgrade initialization errors to warnings

Don't want to shutdown everything if egl_dri2 fails to initialize.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
880acbe177c81c13fdb4b4f96c7e37d8a89939e2 12-May-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Zero out driver struct

Otherwise testing ->Probe for non-NULL and calling it goes boom.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
0870e4a2022cff79805613ae7cd4b9237a2f564c 02-May-2010 Kristian Høgsberg <krh@bitplanet.net> Merge branch 'gles2-2'

Conflicts:
src/mesa/drivers/dri/common/dri_util.h
e2fd98d794947464aa97d85fbbcbd2b833e96939 27-Apr-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Use new DRI API to create a GLES1/2 context when asked to
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
6fc532ae05352a5540c658580cde08b1e0e9f84c 28-Apr-2010 Jakob Bornecrantz <jakob@vmware.com> Merge branch '7.8'
9cfaaa291f9c69cfc24e8a9c0d7de47319e479ed 28-Apr-2010 Micah Fedke <M.Fedke@Astronautics.com> egl: dri2 driver error output

This patch amends the error output string for the case where the
dri2 egl driver could not open the dri dev node.

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
3a82c8c5625217599f31cd5080b4d7ff7a1dc0aa 14-Apr-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Enable KHR_gl_texture_2D_image

Forgot to set the enabled bit when I implemented the extension.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
d18d0fdcd8daa0d9979b72978795f0305d2db7c8 06-Apr-2010 Chia-I Wu <olv@lunarg.com> egl_dri2: Flush before context switch and swap buffers.

DRI does not define any callback to flush the current context. GLX
loader simply calls glFlush. Follow the GLX loader here.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
400734258453fb8cb22a467d18779ad3acf4e53f 02-Mar-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Factor out DRI2 protocol bits from initialize.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
557c20b3091843fdec59069b2b85969a49943305 26-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Implement EGL_KHR_gl_renderbuffer_image
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f4e7d1b1e5477a28e9a6364e742a79f95fb9b10e 12-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Implement EGL_KHR_image and EGL_KHR_image_pixmap
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c19dab7c5929bc70633002111bbb2b496a90899e 10-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Only allocate config if we're going to keep it

Small optimization.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c3c1a7e1d9357a6ba5b8092b3b0b9c873737e53d 10-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Initialize config attributes with visual id and class from X
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
360faf80ca763e195425ee7cadfee64002c8cd98 09-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Allow pbuffer and pixmap surfaces for all configs
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
bba5a98dfde705d898ada1c8eac41cc7c6275fe2 09-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Implement eglBindTexImage()
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
8c593d3ea9fa137290480e73aeebcf807c920f50 09-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Use a helper function for looking up and binding extensions
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
538539d8791e5b3b1ea2e95473b589934d94497e 09-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Fix initialization with EGL_DEFAULT_DISPLAY
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
832f2d3c392b0f222415eb1f1907b7790a1d2bdd 05-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Log both driver and core extensions
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
9c94faeff18c942417daaed87a16909790c72a60 05-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Audit and fix errors paths
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
f27b4fadca814f21a0c0b3335d8862640aeb2344 05-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl_dri2: Just cast the pointer difference to an int
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
a35e63382e5a8b5ee81bf8c8d2cafb2da937f71c 05-Feb-2010 Chia-I Wu <olvaffe@gmail.com> egl_dri2: Use _EGL_DRIVER_STANDARD_TYPECASTS.

It saves the driver from defining the boring typecasts itself.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
fc5ca85a63c6d252a9e8c450f12d2f11057ea2c6 05-Feb-2010 Chia-I Wu <olvaffe@gmail.com> egl_dri2: Do not destroy linked resources.

A linked resource is stil owned by the display.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
7e7c1ba40b6e10b7d38490e7f3252dbebb3a3a72 05-Feb-2010 Chia-I Wu <olvaffe@gmail.com> egl_dri2: Fix a snprintf warning.

The subtraction between two pointers has type unsigned int (only on
x86-64?), while the format string expects an int.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
8d411c9a127beb75b2af8b9135b971afa53202c7 05-Feb-2010 Chia-I Wu <olvaffe@gmail.com> egl_dri2: Add a debug print for DRI2 extensions.
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
c6e830c393a12e7273a2a3d57688492cb69794d7 05-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl: Implement eglCopyBuffers for DRI2, make pixmap and pbuffers actually work
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c
42fa009e641c35a6543f2fb63b229c0adc8a30dc 03-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> egl: Add driver for EGL on X with DRI2
/external/mesa3d/src/egl/drivers/dri2/egl_dri2.c