summaryrefslogtreecommitdiffstats
path: root/opengl/libs/EGL/eglApi.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Modify EGL to disconnect the window when the surface gets destroyed."Michael Lentine2014-08-081-9/+0
| | | | This reverts commit 843cbb241da60ada234918a30cfe9a01a1e04187.
* Modify EGL to disconnect the window when the surface gets destroyed.Michael Lentine2014-07-291-0/+9
| | | | | | Bug: 14445579 Change-Id: I1d263ff6cffcb6e448761fca7ca4b06466ad65aa
* am 43b3e600: am 3f0d5669: Merge "Expose core EGL entry points to ↵Jesse Hall2014-04-211-2/+5
|\ | | | | | | | | | | | | eglGetProcAddress" * commit '43b3e600c1a477697408b1cac4cbd40b0ad97d56': Expose core EGL entry points to eglGetProcAddress
| * Expose core EGL entry points to eglGetProcAddressMichael Chock2014-03-271-2/+5
| | | | | | | | | | | | Required behavior for EGL_KHR_get_all_proc_addresses. Change-Id: I1e6209ef3cb9f2fa6f22808b077c35139d4cb814
| * Make libEGL build cleanly under 64-bitDan Stoza2014-01-271-1/+1
| | | | | | | | Change-Id: I255dfb70b166b7469d59352b1acfc7aececa07de
* | Make libEGL build cleanly under 64-bitDan Stoza2014-01-171-1/+1
| | | | | | | | Change-Id: I255dfb70b166b7469d59352b1acfc7aececa07de
* | Improve error messageAndy McFadden2014-01-071-3/+5
|/ | | | | | | | | The previous message indicated that the fault was due to an already- connected window, which was misleading at times. Bug 12439318 Change-Id: I1e0a042673dd245d1b0d237af963c52946803eb6
* GLConsumer: start using EGL_ANDROID_image_cropJamie Gennis2013-10-021-2/+2
| | | | | | | | | | This change makes GLConsumer use the EGL_ANDROID_image_crop extension when available on a device. The crop rectangle is passed to the EGL driver when creating EGLImages, allowing the crop to be performed by the driver rather than using the texture transform matrix. Bug: 10897141 Change-Id: I63e9a5d5c85067376abc420e3639154468346311
* Disable the egl_khr_gl_colorspace extensionJesse Hall2013-09-161-3/+29
| | | | | Bug: 10777398 Change-Id: Ib50ea8b9d5d960537701b85929d6312304993a0f
* fix a possible null dereference when eglMakeCurrent() failsMathias Agopian2013-09-061-1/+2
| | | | | Bug: 10648797 Change-Id: Iee0be47f2646feb25de4ea199bbb9b707452916e
* try to keep omap4 aliveMathias Agopian2013-08-281-1/+20
| | | | | Bug: 10527646 Change-Id: Iec572a910e932115cf4f2e1215142b10cd91bd6f
* only use format compatible with CPU consumersMathias Agopian2013-08-211-15/+28
| | | | | | | | | EGL now picks the buffer format out of a small set of formats compatible with CPU consumers instead of using the EGL_NATIVE_VISUAL_ID. Bug: 10194508 Change-Id: If423cd29601b7a3ace8670f4c73004132cfc4b31
* Replace sRGB_888 with sRGB_X_8888Jesse Hall2013-08-161-3/+3
| | | | | Bug: 10357459 Change-Id: I3a1d92cce2c9d3e930408129fb20887276fffddc
* Add support for EGL_KHR_gl_colorspaceJesse Hall2013-08-131-11/+55
| | | | Change-Id: I684d0b8556cd6c84ee4b4d67e1bb95c3b96fccfb
* Don't swallow eglCreateContext errorsJesse Hall2013-08-121-6/+0
| | | | | | | | | | If the implementation eglCreateContext failed, we called eglGetError(), so we could check that it set the EGL error properly. But since we'd already called this, when the app called eglGetError() it would get EGL_SUCCESS! Bug: 10181333 Change-Id: Ic45d3a8fcb8c4421e04844c6d2f52761790b5948
* Add EGL_KHR_get_all_proc_addresses to extension stringJesse Hall2013-08-061-8/+15
| | | | | | | | | We've had the extended behavior since Android 4.3, but the extension hadn't been ratified by Khronos yet so we couldn't add it to the extension string. Bug: 9681677 Change-Id: I78842316a3ab7a3f66a0ac1a4742d837de664c4c
* Drop frames based on presentation timestampAndy McFadden2013-08-011-5/+0
| | | | | | | | | | | | | If there are two or more buffers pending that are ready for immediate presentation, drop all but the last one. Any code that didn't explicitly specify timestamps for buffers was using the default value (auto-generated "now"). As a result, surfaceflinger would drop frames whenever more than one buffer was queued. We now use zero as the auto-generated timestamp, and we don't set the timestamp in eglBeginFrame(). Change-Id: I187f42d33de227cd3411ff0dcd3b9ce1961457eb
* am 082fc1ca: am ae961022: Merge "EGL: Fix error for eglCreateWindowSurface"Jesse Hall2013-07-171-1/+1
|\ | | | | | | | | * commit '082fc1cae6a0c283de3ad0d848e0757de3154d0b': EGL: Fix error for eglCreateWindowSurface
| * am ae961022: Merge "EGL: Fix error for eglCreateWindowSurface"Jesse Hall2013-07-171-1/+1
| |\ | | | | | | | | | | | | * commit 'ae9610220b5f509687b840532f95f3638ee0146b': EGL: Fix error for eglCreateWindowSurface
| | * EGL: Fix error for eglCreateWindowSurfaceJonathan Hamilton2013-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The EGL 1.4 spec section 3.5.1 states that EGL_BAD_ALLOC should be set if the supplied window already has an associated EGLSurface, not EGL_BAD_NATIVE_WINDOW as is currently set. Change-Id: If1598617f4e31904f2045560ae1cdf49d8a697dc
* | | resolved conflicts for merge of 5477d0e4 to masterJesse Hall2013-07-111-0/+17
|\ \ \ | |/ / | | | | | | Change-Id: I7ca75a44018a68bf3a7ac1de17a3ef568a48d2ac
| * | am c07b5206: Find non-extension GLES wrappers in eglGetProcAddressJesse Hall2013-07-091-0/+17
| |\ \ | | | | | | | | | | | | | | | | * commit 'c07b52060acd627c8510c1a9151e0753fce76330': Find non-extension GLES wrappers in eglGetProcAddress
| | * | Find non-extension GLES wrappers in eglGetProcAddressJesse Hall2013-07-041-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows apps to find OpenGL ES 3.0 functions using eglGetProcAddress() instead of dlopen/dlsym. Bug: 9681677 Change-Id: I7ce6e1636bc47d6b0bf20a4e46bd67235714d129
* | | | improve GLES jumptablesMathias Agopian2013-07-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the common case this saves one instructions per jump (which will help with the i-cache). this change also gets rid of the "use slow tls" option, which was useless. So at least now architectures that don't have assembly bindings will perform much better. Change-Id: I31be6c06ad2136b50ef3a1ac14682d7812ad40d2
* | | | am db8c267e: am 3c0425cd: am 0ecf0b8d: Merge "Additional parameter ↵Jean-Baptiste Queru2013-06-251-6/+11
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | validation for EGL functions" * commit 'db8c267ec26997771eb718c29d3dacd4e738051b': Additional parameter validation for EGL functions
| * | | am 0ecf0b8d: Merge "Additional parameter validation for EGL functions"Jean-Baptiste Queru2013-06-251-6/+11
| |\ \ \ | | |/ / | |/| / | | |/ | | | * commit '0ecf0b8db74682222bf095a235e28edefff871a5': Additional parameter validation for EGL functions
| | * Merge "Additional parameter validation for EGL functions"Jean-Baptiste Queru2013-06-251-6/+11
| | |\
| | | * Additional parameter validation for EGL functionsMichael Chock2012-09-121-6/+11
| | | | | | | | | | | | | | | | Change-Id: I841d005647559799edbc2c4824c61ea5791cf893
* | | | free EGL resources associated to a thread when it terminatesMathias Agopian2013-05-301-5/+5
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | destroyed but current-to-a-thread resources are only destroyed when they're made not-current; however, we were not destroying those when the thread itself terminated, causing these resources to be leaked forever. we now install a tls-key destructor that takes care of this by calling eglReleaseThread upon thread termination. Bug: 9209776 Change-Id: I88298a34e3a27488eb81eab76717715569c7d57c
* | | EGL: expose the EGL_KHR_create_context extensionJamie Gennis2013-04-251-0/+1
| | | | | | | | | | | | | | | Bug: 8616866 Change-Id: Ic60f9f21397a1760c552b6f141d5177d1cbaf1f8
* | | fix "traceGpuCompletion" debug featureMathias Agopian2013-04-161-13/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | eglCreateSyncKHR requires a call to glFlush which we were not doing. fixed by moving the code above eglSwapBuffers(), which both fixes the problem and gives us a slightly better idea of when the GPU is done drawing. Change-Id: Ic826ef1fe25a6247742c3d49d0cb69f4031e3593
* | | fix local include pathsMathias Agopian2013-04-041-5/+3
| | | | | | | | | | | | Change-Id: Icb921fa796ec08612dbb2feb7e7161bcb0cf4a99
* | | don't use compile-time configuration of libgui as much as possibleMathias Agopian2013-03-291-4/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now detect at runtime which sync features to use, which allows us to remove a lot of the compile-time configuration options. There is still one option though, to disable KHR_fence_sync on some devices (which are more efficient without it). - added a backdoor to get the vendor's EGL strings the new logic is: - use always ANDROID_native_fence_sync if available - fallback to KHR_fence_sync if available and not disabled by the compile-time option - use KHR_wait_sync if available and either of the above is enabled Change-Id: I9c4b49d9ff1151faf902cc93bd53ea5f205aaabf
* | | replace eglWaitSyncANDROID by eglWaitSyncKHRMathias Agopian2013-03-281-17/+18
| | | | | | | | | | | | Change-Id: I22f1b3588011c88389e249f738f1e6915cc97e72
* | | cleanup EGL extensions strings and entry-pointsMathias Agopian2013-03-281-10/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - move all the code related to EGL extensions in one place - add missing extension strings: EGL_KHR_lock_surface EGL_KHR_reusable_sync - add public extensions strings and entry-points EGL_ANDROID_wait_sync EGL_ANDROID_presentation_time - add missing entry-points for EGL_KHR_reusable_sync Change-Id: Ifd98966b549e8efd8ef5385eba0efde8c4cbc77b
* | | Add eglPresentationTimeANDROIDAndy McFadden2013-03-051-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added EGL extension to set a timestamp on a surface. Also, fix JNI encoding of "long" in glgen. Bug 8191230 Change-Id: I38b7334bade3f8ff02bffe600bb74469ef22c164
* | | Add ES3 support to libGLESv2 and tracing toolsJesse Hall2013-02-121-19/+17
| | | | | | | | | | | | | | | | | | | | | | | | Since ES3 is backwards compatible with ES2, a new wrapper isn't necessary, and the Khronos implementation guidelines recommend supporting both versions with the same library. Change-Id: If9bb02be60ce01cc5fe25d1f40c4e7f37244ebf6
* | | am 873ab60e: am 75b83e4d: Merge "Gfx-3d: fix GetProcAddress in egl extention"Jesse Hall2013-02-011-1/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | # By luliuhui # Via Android Git Automerger (1) and others * commit '873ab60e94811488caea1906eb98133329a3e28f': Gfx-3d: fix GetProcAddress in egl extention
| * | Gfx-3d: fix GetProcAddress in egl extentionluliuhui2013-01-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch can fix issue when Proc address return NULL. Glbench10, egl-ext and conformance test need this patch to run pass. Change-Id: I275c7cb6f77cb334c3ee7fa23cd696bba1c5a458 Author: Liuhui Lu <liuhui.lu@intel.com> Signed-off-by: Shuo Gao <shuo.gao@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Author-tracking-BZ: 52622
* | | gltrace: Add support for tracing running applications.Siva Velusamy2012-12-201-5/+29
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, to activate OpenGL tracing, an application has to be start with --opengl-trace option (or have a debug prop set). This CL adds support for tracing an application which may already be running. This is implemented as follows: - DDMS initiates a JDWP message to the VM indicating that opengl traces be enabled. - When that message is received, a flag is set that indicates that tracing should be enabled. - The trace flag is checked during every eglSwap() operation, and if it finds that tracing should be active and it isn't, then it starts the tracing component. Change-Id: I3347fe89fc06c7404d7aa9360f4b21e5bf36ebcb
* | am 825a9a2d: Merge "Update comments to reflect what the code actually does" ↵Romain Guy2012-10-161-2/+2
|\ \ | | | | | | | | | | | | | | | | | | into jb-mr1-dev * commit '825a9a2dcd1b3e139dd0677ff46f966fb23f963c': Update comments to reflect what the code actually does
| * | Update comments to reflect what the code actually doesRomain Guy2012-10-151-2/+2
| | | | | | | | | | | | Change-Id: I2613aa32c29eddc52a00090656c1bd11f9f5732b
* | | am b96fe085: Merge "Add new debug option to force 4x MSAA in OpenGL ES 2.0 ↵Romain Guy2012-10-151-0/+53
|\ \ \ | |/ / | | | | | | | | | | | | | | | apps" into jb-mr1-dev * commit 'b96fe08540dcf7e90be56919ea9863f687da779c': Add new debug option to force 4x MSAA in OpenGL ES 2.0 apps
| * | Add new debug option to force 4x MSAA in OpenGL ES 2.0 appsRomain Guy2012-10-151-0/+53
| | | | | | | | | | | | Change-Id: I53ac91a9ce07b5dd5f2ee0e3cc5b65b6402f9229
* | | am 500407a2: log an error when eglCreateContext() fails in an inconsistant wayMathias Agopian2012-09-241-0/+6
|\ \ \ | |/ / | | | | | | | | | * commit '500407a2c07ced40c36e7356574a47bcec9c2fd9': log an error when eglCreateContext() fails in an inconsistant way
| * | log an error when eglCreateContext() fails in an inconsistant wayMathias Agopian2012-09-241-0/+6
| | | | | | | | | | | | | | | | | | this will help debugging bug: 7216919 Change-Id: I54ac65f20c5ed55cc93a5cbc5350fadfb0fcb804
* | | am 98838aa0: am 77af25b6: Merge "Return back-end result from eglDestroyImageKHR"Mathias Agopian2012-09-241-2/+3
|\ \ \ | |/ / |/| | | | | | | | * commit '98838aa0836518b7397cbfe763f34305e3387a5f': Return back-end result from eglDestroyImageKHR
| * | Return back-end result from eglDestroyImageKHRSteven Holte2012-09-121-2/+3
| |/ | | | | | | Change-Id: I0e972b778f9802c28f52092bb9af087285833e0b
* | EGL: Add the EGL_ANDROID_wait_sync extensionJamie Gennis2012-09-091-0/+16
| | | | | | | | Change-Id: Ie9a78e07fcaf27c5c13797141ad3c692217607fb
* | EGL: add the native_fence_sync extensionJamie Gennis2012-09-061-1/+15
|/ | | | | | | This change adds support for the EGL_ANDROID_native_fence_sync extension to the Android EGL layer. It also fixes a couple minor issues with the extension spec. Change-Id: Ic8829d21f37b701f33aa9c72c3d25e88e03fa3cd