45e2fc22261cb8ecac4901b4425bcb7352c71174 |
|
08-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Revert "Modify EGL to disconnect the window when the surface gets destroyed." This reverts commit 843cbb241da60ada234918a30cfe9a01a1e04187.
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
843cbb241da60ada234918a30cfe9a01a1e04187 |
|
23-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Modify EGL to disconnect the window when the surface gets destroyed. Bug: 14445579 Change-Id: I1d263ff6cffcb6e448761fca7ca4b06466ad65aa
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
1034cfc778e33e089422ae0212b1d116ec855a5a |
|
21-Apr-2014 |
Jesse Hall <jessehall@google.com> |
am 43b3e600: am 3f0d5669: Merge "Expose core EGL entry points to eglGetProcAddress" * commit '43b3e600c1a477697408b1cac4cbd40b0ad97d56': Expose core EGL entry points to eglGetProcAddress
|
c0ec5e2333b6350480851b8b48f000c78ea3f88a |
|
27-Jan-2014 |
Michael Chock <mchock@nvidia.com> |
Expose core EGL entry points to eglGetProcAddress Required behavior for EGL_KHR_get_all_proc_addresses. Change-Id: I1e6209ef3cb9f2fa6f22808b077c35139d4cb814
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
4864e85430d16cff00b6624d9de6c958d319c876 |
|
17-Jan-2014 |
Dan Stoza <stoza@google.com> |
Make libEGL build cleanly under 64-bit Change-Id: I255dfb70b166b7469d59352b1acfc7aececa07de
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
c3289c41e794117817895653300bd2cf7daa0a01 |
|
17-Jan-2014 |
Dan Stoza <stoza@google.com> |
Make libEGL build cleanly under 64-bit Change-Id: I255dfb70b166b7469d59352b1acfc7aececa07de
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
d566ce3a26ce781ecdbc479aaba0e172b7c807a9 |
|
08-Jan-2014 |
Andy McFadden <fadden@android.com> |
Improve error message The previous message indicated that the fault was due to an already- connected window, which was misleading at times. Bug 12439318 Change-Id: I1e0a042673dd245d1b0d237af963c52946803eb6
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
dbe9245e2e362b12e184cd33b9a27b0901f81244 |
|
24-Sep-2013 |
Jamie Gennis <jgennis@google.com> |
GLConsumer: start using EGL_ANDROID_image_crop 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
a2ba428a22125558a129c6ba4001dfc2169de2fe |
|
15-Sep-2013 |
Jesse Hall <jessehall@google.com> |
Disable the egl_khr_gl_colorspace extension Bug: 10777398 Change-Id: Ib50ea8b9d5d960537701b85929d6312304993a0f
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
63108c34ec181e923b68ee840bb7960f205466a7 |
|
06-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix a possible null dereference when eglMakeCurrent() fails Bug: 10648797 Change-Id: Iee0be47f2646feb25de4ea199bbb9b707452916e
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
f4486c6ea4bcb728ee0f38df7a8ec75c389d9d2e |
|
29-Aug-2013 |
Mathias Agopian <mathias@google.com> |
try to keep omap4 alive Bug: 10527646 Change-Id: Iec572a910e932115cf4f2e1215142b10cd91bd6f
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
0f288fcc9c1b2d23b1cff2f5c59689aef76b77ae |
|
22-Aug-2013 |
Mathias Agopian <mathias@google.com> |
only use format compatible with CPU consumers 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
bc2a90b024db82e3a277e5b366da17e00b21d98b |
|
16-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Replace sRGB_888 with sRGB_X_8888 Bug: 10357459 Change-Id: I3a1d92cce2c9d3e930408129fb20887276fffddc
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
c2e41222bf02a6579763974f82d65875cfa43481 |
|
08-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Add support for EGL_KHR_gl_colorspace Change-Id: I684d0b8556cd6c84ee4b4d67e1bb95c3b96fccfb
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
ea4fdd4beb83ab7019753a144d9afac6728dd3ee |
|
13-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Don't swallow eglCreateContext errors 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
21558daf691dbcdff4a41e659fd013273db4d0b7 |
|
07-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Add EGL_KHR_get_all_proc_addresses to extension string 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
14fab7dd794cd6bf29e6425340683c6221062b3c |
|
01-Aug-2013 |
Andy McFadden <fadden@android.com> |
Drop frames based on presentation timestamp 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
ba3ed90b095dfd397aa252fb0234647d7cc5c8f9 |
|
17-Jul-2013 |
Jesse Hall <jessehall@google.com> |
am 082fc1ca: am ae961022: Merge "EGL: Fix error for eglCreateWindowSurface" * commit '082fc1cae6a0c283de3ad0d848e0757de3154d0b': EGL: Fix error for eglCreateWindowSurface
|
082fc1cae6a0c283de3ad0d848e0757de3154d0b |
|
17-Jul-2013 |
Jesse Hall <jessehall@google.com> |
am ae961022: Merge "EGL: Fix error for eglCreateWindowSurface" * commit 'ae9610220b5f509687b840532f95f3638ee0146b': EGL: Fix error for eglCreateWindowSurface
|
77a9b4a6bd21188e2744ae9dcd8092c6837bff7c |
|
17-Jul-2013 |
Jonathan Hamilton <jonathan.hamilton@imgtec.com> |
EGL: Fix error for eglCreateWindowSurface 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
94cdba97ce1de140623d84c14fb15f12f7da89dd |
|
11-Jul-2013 |
Jesse Hall <jessehall@google.com> |
resolved conflicts for merge of 5477d0e4 to master Change-Id: I7ca75a44018a68bf3a7ac1de17a3ef568a48d2ac
|
5477d0e4e858df1ea9cb1b6965a160fb5fe23b57 |
|
09-Jul-2013 |
Jesse Hall <jessehall@google.com> |
am c07b5206: Find non-extension GLES wrappers in eglGetProcAddress * commit 'c07b52060acd627c8510c1a9151e0753fce76330': Find non-extension GLES wrappers in eglGetProcAddress
|
c07b52060acd627c8510c1a9151e0753fce76330 |
|
04-Jul-2013 |
Jesse Hall <jessehall@google.com> |
Find non-extension GLES wrappers in eglGetProcAddress This allows apps to find OpenGL ES 3.0 functions using eglGetProcAddress() instead of dlopen/dlsym. Bug: 9681677 Change-Id: I7ce6e1636bc47d6b0bf20a4e46bd67235714d129
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
e0ea89ceef3b0fc5f3efc5d709a8156f0628c6c8 |
|
15-Jun-2013 |
Mathias Agopian <mathias@google.com> |
improve GLES jumptables 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
da22e6bf36a2a83efef83bd723714ea6af30f540 |
|
26-Jun-2013 |
Jean-Baptiste Queru <jbq@google.com> |
am db8c267e: am 3c0425cd: am 0ecf0b8d: Merge "Additional parameter validation for EGL functions" * commit 'db8c267ec26997771eb718c29d3dacd4e738051b': Additional parameter validation for EGL functions
|
3c0425cd95a7918d1dbfecf32aef3b238bf236a5 |
|
26-Jun-2013 |
Jean-Baptiste Queru <jbq@google.com> |
am 0ecf0b8d: Merge "Additional parameter validation for EGL functions" * commit '0ecf0b8db74682222bf095a235e28edefff871a5': Additional parameter validation for EGL functions
|
0ecf0b8db74682222bf095a235e28edefff871a5 |
|
26-Jun-2013 |
Jean-Baptiste Queru <jbq@google.com> |
Merge "Additional parameter validation for EGL functions"
|
4e620ddce344e946ced992f61a69c367ff92fe24 |
|
31-May-2013 |
Mathias Agopian <mathias@google.com> |
free EGL resources associated to a thread when it terminates 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
f6d1c3930eeba6b089ba12fb82ecad1c6622e550 |
|
26-Apr-2013 |
Jamie Gennis <jgennis@google.com> |
EGL: expose the EGL_KHR_create_context extension Bug: 8616866 Change-Id: Ic60f9f21397a1760c552b6f141d5177d1cbaf1f8
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
ed6d08b70d775852f4827471814c83eba3606aaa |
|
17-Apr-2013 |
Mathias Agopian <mathias@google.com> |
fix "traceGpuCompletion" debug feature 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
39c24a20bbc697630d2b92c251b70c04d6f9d00c |
|
05-Apr-2013 |
Mathias Agopian <mathias@google.com> |
fix local include paths Change-Id: Icb921fa796ec08612dbb2feb7e7161bcb0cf4a99
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
ca08833d5ea99130797e10ad68a651b50e99da74 |
|
29-Mar-2013 |
Mathias Agopian <mathias@google.com> |
don't use compile-time configuration of libgui as much as possible 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
2bb716871cf8bfadfff1193ed798da3bffc1f8ec |
|
28-Mar-2013 |
Mathias Agopian <mathias@google.com> |
replace eglWaitSyncANDROID by eglWaitSyncKHR Change-Id: I22f1b3588011c88389e249f738f1e6915cc97e72
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
e9b3dfb7d5cc233747407381a51a081c335dc076 |
|
27-Mar-2013 |
Mathias Agopian <mathias@google.com> |
cleanup EGL extensions strings and entry-points - 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
7284145d564fa8a422a8e564a38c730fb4a2962b |
|
02-Mar-2013 |
Andy McFadden <fadden@android.com> |
Add eglPresentationTimeANDROID Added EGL extension to set a timestamp on a surface. Also, fix JNI encoding of "long" in glgen. Bug 8191230 Change-Id: I38b7334bade3f8ff02bffe600bb74469ef22c164
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
4774338bd0ad1ebe42c311fd0c72f13786b5c800 |
|
08-Feb-2013 |
Jesse Hall <jessehall@google.com> |
Add ES3 support to libGLESv2 and tracing tools 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
519191670e37bdfa7f686fb3d3ee84fafe9ad0cb |
|
01-Feb-2013 |
Jesse Hall <jessehall@google.com> |
am 873ab60e: am 75b83e4d: Merge "Gfx-3d: fix GetProcAddress in egl extention" # By luliuhui # Via Android Git Automerger (1) and others * commit '873ab60e94811488caea1906eb98133329a3e28f': Gfx-3d: fix GetProcAddress in egl extention
|
69d100762c7c26d8328f4bb61cfef026d3a69bbf |
|
30-Aug-2012 |
luliuhui <liuhui.lu@intel.com> |
Gfx-3d: fix GetProcAddress in egl extention 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
a73a97728befb5ba5ad647ab3b60058c4d536ba4 |
|
18-Dec-2012 |
Siva Velusamy <vsiva@google.com> |
gltrace: Add support for tracing running applications. 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
23bcd8d298597659622919027c9ea921d5eed513 |
|
16-Oct-2012 |
Romain Guy <romainguy@google.com> |
am 825a9a2d: Merge "Update comments to reflect what the code actually does" into jb-mr1-dev * commit '825a9a2dcd1b3e139dd0677ff46f966fb23f963c': Update comments to reflect what the code actually does
|
49fe8addbfe52bf9a3e69e6250e462a70332235c |
|
16-Oct-2012 |
Romain Guy <romainguy@google.com> |
am b96fe085: Merge "Add new debug option to force 4x MSAA in OpenGL ES 2.0 apps" into jb-mr1-dev * commit 'b96fe08540dcf7e90be56919ea9863f687da779c': Add new debug option to force 4x MSAA in OpenGL ES 2.0 apps
|
be3c3e4ecad501eecfe1f7a424a792f0f7f3f307 |
|
16-Oct-2012 |
Romain Guy <romainguy@google.com> |
Update comments to reflect what the code actually does Change-Id: I2613aa32c29eddc52a00090656c1bd11f9f5732b
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
1cffc80f978c55f09203d9d9a905775b951ba59a |
|
16-Oct-2012 |
Romain Guy <romainguy@google.com> |
Add new debug option to force 4x MSAA in OpenGL ES 2.0 apps Change-Id: I53ac91a9ce07b5dd5f2ee0e3cc5b65b6402f9229
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
0d45d711976bdca1165536b8948680680d38eb6a |
|
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
am 500407a2: log an error when eglCreateContext() fails in an inconsistant way * commit '500407a2c07ced40c36e7356574a47bcec9c2fd9': log an error when eglCreateContext() fails in an inconsistant way
|
500407a2c07ced40c36e7356574a47bcec9c2fd9 |
|
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
log an error when eglCreateContext() fails in an inconsistant way this will help debugging bug: 7216919 Change-Id: I54ac65f20c5ed55cc93a5cbc5350fadfb0fcb804
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
81b316aa5395b6318ad4a10e1ed27d0b9b0df07f |
|
25-Sep-2012 |
Mathias Agopian <pixelflinger@gmail.com> |
am 98838aa0: am 77af25b6: Merge "Return back-end result from eglDestroyImageKHR" * commit '98838aa0836518b7397cbfe763f34305e3387a5f': Return back-end result from eglDestroyImageKHR
|
646a5c593f9819dc5da6a1ec859bc70cb7ba096f |
|
05-Jun-2012 |
Steven Holte <sholte@nvidia.com> |
Return back-end result from eglDestroyImageKHR Change-Id: I0e972b778f9802c28f52092bb9af087285833e0b
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
0673e1e2d77c673c2e9bc57616a02c3188b55ad1 |
|
21-Jun-2012 |
Michael Chock <mchock@nvidia.com> |
Additional parameter validation for EGL functions Change-Id: I841d005647559799edbc2c4824c61ea5791cf893
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
010dd4fb892aecf71e4631c22148fe57ef5b3958 |
|
10-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
EGL: Add the EGL_ANDROID_wait_sync extension Change-Id: Ie9a78e07fcaf27c5c13797141ad3c692217607fb
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
331841b96b92646c93c87627c03f77b892f711cd |
|
06-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
EGL: add the native_fence_sync extension 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
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
258385978c517a47626161b1e644c48bcee28de1 |
|
06-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Hibernate the EGL implementation when idle If the EGL implementation supports the EGL_IMG_hibernate_process extension, use it to hibernate (and hopefully release memory or other resources) when the process isn't actively using EGL or OpenGL ES. The idleness heuristic used in this change is: (a) Wake up when entering any EGL API call, and remain awake for the duration of the call. (b) Do not hibernate when any window surface exists; this means the application is very likely in the foreground. (c) Do not hibernate while any context is made current to a thread. The app may be using a client API without the EGL layer knowing, so it is not safe to hibernate. (d) Only check these conditions and attempt to hibernate after a window surface is destroyed or a thread's context is detached. By not attempting to hibernate at the end of every EGL call, we avoid some transient wakeups/hibernate cycles when the app is mostly idle, or is starting to become active but hasn't created its window surface yet. On a Galaxy Nexus, hibernating frees 1567 VM pages from the process. Both hibernating and waking can take anywhere from 30ms to over 100ms -- measurements have been very inconsistent. Change-Id: Ib555f5d9d069aefccca06e8173a89625b5f32d7e
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
b29e5e8c2682ae145e8c56d9afb061f8da7f854c |
|
05-Apr-2012 |
Jesse Hall <jessehall@google.com> |
Increment/decrement a counter around EGL calls This is in preparation for a change that will hibernate the underlying EGL when idle. Instead of a bare egl_display_t*, get_display() now returns a egl_display_ptr, which acts like a smart pointer. The "wakecount" counter managed by the smart pointer isn't used for anything in this change. It will be used to make sure we don't hibernate when any thread is in an EGL call, without having to hold a mutex for the duration of the call. Change-Id: Iee52f3549a51162efc3800e1195d3f76bba2f2ce
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
28ef8d7911dbfd1bf8256fb43acba894d87fc07a |
|
06-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
EGL: add GPU frame completion tracing This change adds a debug option to EGL to use an EGLSyncKHR each frame to determine when the GPU finishes rendering the frame. Change-Id: I09ce071db904b44f07ca814c586c291c8b59385a
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
7db993a98b9239bd4e384cc4aa128262fe3cf52c |
|
25-Mar-2012 |
Mathias Agopian <mathias@google.com> |
debug.egl.finish can be used to force a glFinish() when eglSwapBuffers() is called this debug property is evaludated at eglInitialize() time. Change-Id: Ie439e4aac87f7fdc6ab2add86183d6d042f3ee8b
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
1c8e95cf86f2182986385bc1ee85f13f425f3a3a |
|
24-Feb-2012 |
Jamie Gennis <jgennis@google.com> |
Add tracing to various graphics components. This change adds ATRACE call tracing to BufferQueue, SurfaceTextureClient, SurfaceTexture, SurfaceFlinger, Layer, and EGL. Change-Id: I9d75ed26f5a3f0d1af635da38289520134cfbbb7
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
7c0441ac271f4e00a2d63eb3048c037ebffa90b9 |
|
15-Feb-2012 |
Mathias Agopian <mathias@google.com> |
Don't wrap EGLImageKHR and EGLSyncKHR anymore this simplify our EGL wrapper implementation a lot. This wrapping is no longer needed now that we can only support a single underlaying EGL implementation. Change-Id: I8213df7ac69daac447f1fe6e37044b78aac4e9a9
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
7773c435bc5da8217433e1b242d3a6712a17b5f7 |
|
14-Feb-2012 |
Mathias Agopian <mathias@google.com> |
EGLConfig is now not remaped to an internal EGLConfig this is possible now that we support only a single EGL implementation. this allows a large code simplification. Change-Id: I7a6b9db4c5d60f4407c6061e7a68729af63d5242
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
ada798b7ca7cabc255aa159964b64975e7fdb2df |
|
14-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove multiplexing of multiple EGL implementation from now on, the system can only have one EGL implementation. this means the software and h/w renderer cannot be used at the same time on a device. Of course, the h/w renderer is always prefered; in its absence we default to the software renderer. Change-Id: Ib579f58055dd0ce4c4a99144131efa11c16ca3d3
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
fb87e54a9af8bc5063ca4deebe81d90126992480 |
|
31-Jan-2012 |
Mathias Agopian <mathias@google.com> |
fix a race condition in eglMakeCurrent() it would happen when a context was made non-current, in this case we would call the implementation's eglMakeCurrent() which would succeed, if we're rescheduled at that point, another eglMakeCurrent() could make that context current to another thread, however, when we came back to the original call we would overwrite egl_context_t internal state. this is fixed by moving the critical section under egl_display_t's lock. Change-Id: I743c85696e13263d3a9570824940263df0caacdc
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
48d438d05f14c2f4bd83ae89f520368cd49122df |
|
29-Jan-2012 |
Mathias Agopian <mathias@google.com> |
add support for GL_EXT_debug_marker This extension is always added to the GL_EXTENSIONS extension string for the current GL context, regardless of if it's supported by the h/w driver. The extension itself will be handled by GLES_trace (eventually), when GLES_trace is not enabled, it'll result to a no-op. If the h/w implementation has this extension, we'll call that version instead of our dummy version. Change-Id: Ie5dd3387c4d45cd5ed5f03b73bda6045620a96bc
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
e8696a40e09b24b634214684d18526187b316a2f |
|
16-Jan-2012 |
Jamie Gennis <jgennis@google.com> |
hack up frame latency measurement Change-Id: I6d9a466a23285304f0e229a5649815636ab5d6af
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
e6f43ddce78d6846af12550ff9193c5c6fe5844b |
|
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
93a826f78f6313db791e6fc880439189897651b3 |
|
14-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
gltrace: transport buffering and context management This patch adds two improvements: 1. Protobuf messages are buffered and sent in chunks. 2. Multiple EGL contexts are handled properly: Corresponding to each EGLContext, a GLTraceContext with a unique ID is created. On eglMakeCurrent, the appropriate GLTraceContext is set and is used while tracing subsequent GL Calls in that thread. Change-Id: I34076376d3e5af205c87c7396ea47659844abd6e
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
73d2b3c7e5537a6645f20f022b2e60cb9f342cbe |
|
03-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
Merge "glestrace: Framework for GLES tracing library"
|
0469dd6d55fa331bfd7de9431da98b6340d82271 |
|
01-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
glestrace: Framework for GLES tracing library This patch provides a framework for tracing GLES 1.0 and 2.0 functions. It is missing a lot of features, but here are the things it accomplishes: - Stop building the glesv2dbg library, and build the glestrace library instead. - Replace the hooks for glesv2dbg with the ones for glestrace. - Add the basics for the trace library. Currently, this traces all GL functions, but not all required data is sent for all the functions. As a result, it will not be possible to reconstruct the entire GL state on the host side. The files gltrace.pb.* and gltrace_api.* are both generated using the tools/genapi.py script. Change-Id: Id60a468f7278657f008bc6ea1df01f9bdfecfdd3
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
bc2d79ed7ada6243f3690f94ab512c0ddcdbed12 |
|
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
add a way to access the version string of the h/w implementation of EGL we use a hidden egl extension. the version string is printed in SF's dumpsys log. Change-Id: I123eb4bde6de462bb2404c67b74d6d6219a48d6a
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
59769469e4b9b2d8b12c020eb44b030b3927a50b |
|
20-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: default to swap interval 1 This change explicitly sets swap interval 1 on the window when an EGLSurface is created to render to it. Change-Id: I91eb29dbee3ae4a55076b921f084d503fbe94e03
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
4b9511c16195a646242eff833b0af212933b6eca |
|
14-Nov-2011 |
Mathias Agopian <mathias@google.com> |
rework a bit how we manage EGL extensions - don't advertise extensions that are not supported by any implementation - remove EGL_ANDROID_swap_rectangle which is not implemented by anybody and confuses people - add some comments about mandatory extensions Bug: 5428001 Change-Id: Id8dc48116ac1d1eb79ec9ef55d03e29d4257c1f3
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
f0480de37492597a5c5cf1e6f8346f1467e3a552 |
|
14-Nov-2011 |
Mathias Agopian <mathias@google.com> |
fix crash when validating an invalid EGL objects the code that validated EGL objects dereferenced the object to access its EGLDisplay -- needed for validation (!). This was wrong for two reasons, first we dereferenced the object before validating it (potentially leading to a crash), secondly we didn't validate that the object existed in the right EGLDisplay. We now use the EGLDisplay passed by the user API. Change-Id: I66f9e851d4f8507892a6b1fee3065f124c4e7138
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
c42fcf05ce253d5342993b28c412be16e61efffb |
|
10-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: add the ANDROID suffix to the blob cache ext This change adds the ANDROID suffix to the all the types and functions defined by the EGL_ANDROID_blob_cache extension. Change-Id: I087875b96d9a7053efb9c8d5614f9f765eed799d
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
aca51c06f38155f1435fbc6944d7fc0a9bf1e4e9 |
|
04-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: Add stubs for EGL_ANDROID_blob_cache This change adds a stub cache implementation that gets passed to the underlying EGL implementation at initialization time. Change-Id: I14437c5b6f91b7a34a19bb02ad802e6e54f88d2a
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
0e8bbee5775d81c7bbc479b995496cac9238559f |
|
06-Oct-2011 |
Mathias Agopian <mathias@google.com> |
don't log EGL errors due to unimplemented proprietary extensions Change-Id: Icfc33d4f55d1e7fb49390ce0921ba37a438c9fc2
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
1c3d72a2291827fb15e2ef311a571c860e0dba41 |
|
26-Aug-2011 |
Jonas Yang <joyang@nvidia.com> |
Add (support for) EGL_NV_system_time extension. Change-Id: I62bf0fcb5ccdc77c042b425a42054fb3122575b6 Signed-off-by: Mathias Agopian <mathias@google.com>
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
5fecea776a5f093c21ac1a0ad3552b847d4be23e |
|
26-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix logging of eglMakeCurrent() errors Change-Id: Ie22cabff822a8fb3186f082491234b9503b431c3
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
9f24fd020e387d57cb05d58f26985baa44571b85 |
|
24-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: move disconnect to surface dtor This change moves the call to native_window_api_disconnect from eglDestroySurface to the egl_surface_t destructor. The egl_surface_t can outlive the external EGLSurface if eglDestroySurface is called while the surface is made current on a thread. Change-Id: I0df6117a5633c2a19935fe356579abdd76fc471f
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
81a63350527cafce6929309533c58586878f10b5 |
|
30-Jul-2011 |
Mathias Agopian <mathias@google.com> |
connect/disconnect is now called from our EGL wrapper the original connect/disconnect hooks are deprecated and replace by api_connect/api_disconnect. the original hooks are no no-ops. api_connect/api_disconnect is now only called from the android framework. Bug: 5057915 Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
bee205fd58a27c10a0895de5339e76025d429d2b |
|
01-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: fix the ANativeWindow size/fmt override This change fixes how the Android EGL layer overrides the size and format of an ANativeWindow in eglCreateWindowSurface. The new behavior is to leave the size untouched when overriding the format. The previous behavior was to reset the ANativeWindow to use the default size set by the ANativeWindow implementation. It also adds two new 'perform' methods to the ANativeWindow interface: set_buffers_dimensions and set_buffers_format, and redefines the behavior of set_buffers_geometry to be the combination of these two new methods. Additionally, this change adds an error check for the return value of the new native_window_set_buffers_format call, which required adding a (stub) handler for to FramebufferNativeWindow. Change-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
5b287a6ea8dfac7ab3e03ae1e98f9e2214cbae09 |
|
17-May-2011 |
Mathias Agopian <mathias@google.com> |
eglTerminate() now actually frees up all active egl objects as specified by the EGL specification, terminated objects's handles become invalid, the objects themselves are destroyed when they're not current to some thread. Change-Id: Id3a4a5736a5bbc3926a9ae8385d43772edb88eeb
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|
518ec112f468eb67bf681b3eec896d7bfb4ff98d |
|
14-May-2011 |
Mathias Agopian <mathias@google.com> |
refactor EGL source code no changes is functionality. split various objects into their own files. make egl_display objec's lock internal.
/frameworks/native/opengl/libs/EGL/eglApi.cpp
|