summaryrefslogtreecommitdiffstats
path: root/opengl
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'cm-13.0' of ↵HEADreplicant-6.0-0001replicant-6.0Wolfgang Wiedmeyer2017-05-021-3/+0
|\ | | | | | | https://github.com/LineageOS/android_frameworks_native into replicant-6.0
| * libEGL: Only enable WORKAROUND_BUG_10194508 with board flagD. Andrei Măceș2017-02-191-3/+0
| | | | | | | | Change-Id: Id0d000dc5397479a0cd73799f93861693179a663
* | Merge branch 'cm-13.0' of ↵Wolfgang Wiedmeyer2016-12-131-0/+4
|\ \ | |/ | | | | https://github.com/CyanogenMod/android_frameworks_native into replicant-6.0
| * surfaceflinger: Add support for Exynos BGRA mixerChristopher N. Hesse2016-04-272-0/+13
| | | | | | | | Change-Id: Ibc9f784b35a7bd6d8cc6b13ff68b12418cce98c5
* | load Android SW renderer only if libagl property is setWolfgang Wiedmeyer2016-06-221-1/+1
| | | | | | | | | | | | allows to use the sofwaregl property separately for llvmpipe Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* | libEGL: select pixel format by EGL_NATIVE_VISUAL_IDChih-Wei Huang2016-05-271-3/+7
| | | | | | | | We need this workaround until Mesa supports HAL_PIXEL_FORMAT_RGBA_8888.
* | libagl: Fix buffer read overrun in eglCreatePbufferSurfaceJesse Hall2016-03-221-1/+1
| | | | | | | | | | | | | | The code was assuming that EGL_NONE==0, which isn't true. Bug: 23403170 Change-Id: Ic1eccdef086b4d610bd78dbb6b2ae883c91dc322
* | egl loader: check for softwareglWolfgang Wiedmeyer2015-12-211-1/+6
|/ | | | | Change-Id: I52d34d33ef2451019740735316b519d939c7125c Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* Merge tag 'android-6.0.1_r3' of ↵Steve Kondik2015-12-071-9/+0
|\ | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/native into cm-13.0 Android 6.0.1 release 3 Change-Id: I437aaf148d440a8144afe1454948980fc3b40cca
| * egl: Remove window disconnect before calling driver eglDestroySurfaceJesse Hall2015-10-141-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was originally added for b/14445579. An in-development app was attempting to render to a window as an EGLSurface, then tear that down, change some window properties, and create a new EGLSurface. The second eglCreateWindowSurface failed because the window was already connected. This change went in, but it turned out the real problem was that the app still (unintentionally) had the surface current. After the app bug was fixed, nobody revisited whether this change was actually needed. Turns out it wasn't needed. After an EGLSurface is both destroyed *AND* not current (basically refcount==0), we were already disconnecting the window in ~egl_surface_t(). Apart from being unnecessary and redundant, disconnecting the window here is wrong for two reasons: (a) The surface may still be in use after eglDestroySurface, if it was still current. Rendering is undefined in that case, but disconnecting the window leads to more catastrophic results than necessary. (b) It's being called before calling the driver's eglDestroySurface. The driver will almost definitely have a buffer dequeued that it needs to cancel, and by disconnecting first we turn that into an error that they don't have a graceful way to deal with. Bug: 24524053 Change-Id: Ib063134413d25d3526f794aafb5e333e3417ea42
* | libEGL: allow devices to workaround Google bug 10194508Pawit Pornkitprasan2015-10-161-0/+3
| | | | | | | | | | | | | | Most older blobs don't have the EGL_KHR_gl_colorspace extension and need this workaround. Change-Id: Ifc5d097c1a0b68275d23c2d191976ac96631b695
* | Revert "egl: Remove old tuna BGRA vs RGBA workaround."Ethan Chen2015-10-162-0/+12
|/ | | | | | This reverts commit 733a80754786d39cdc0fee09509b194472c320bc. Change-Id: Ifb41720ed020489892a667914ea3bd3f1ac6504e
* Fix parsing of extension stringMichael Lentine2015-07-311-9/+8
| | | | | | | | | | | | Previously the parsing found the next space and then added the the difference between the current position and space to the set of tokens. This improperly generated empty strings if there were consecutive spaces or if spaces existed at the beginning or end of strings. To fix this, the parse is modified to use simple stringstream parsing. Bug: 22709246 Change-Id: I9e32c07bbf984eadccdadf1dc34437fa0c46088b
* Implement a number of KHR EGL extensionsSeason Li2015-07-012-12/+251
| | | | | | | | | | | | | | | Add following KHR EGL extensions: EGL_KHR_gl_texture_3D_image EGL_KHR_config_attribs EGL_KHR_surfaceless_context EGL_KHR_stream EGL_KHR_stream_fifo EGL_KHR_stream_producer_eglsurface EGL_KHR_stream_consumer_gltexture EGL_KHR_stream_cross_process_fd Change-Id: Ie7a35b5e3761e343cb71cf446cba77f67f604bdf
* Revert "Revert "Modify EGL to disconnect the window when the surface gets ↵Amith Dsouza2015-07-011-0/+9
| | | | | | | | | | | destroyed."" This reverts commit 6e1a2fea67006b58e83ebbcc72f7b12f18c49d15. Driver level issues fixed by an updated graphics driver. Bug: 21266976 Change-Id: I93339fb6c6bab988f3550adb49ef8e70cda6473e
* Check that width and height parameters are small.Michael Lentine2015-05-291-4/+31
| | | | | | | | The product of width and height should be less than UINT32_MAX (in practice smaller). Adding the checks prevents overflows when allocating buffers. Bug: 20726612 Change-Id: I9769edf0688a9bfe69906d49fa0540cadf4c49b0
* Revert "Modify EGL to disconnect the window when the surface gets destroyed."Michael Lentine2015-05-281-9/+0
| | | | This reverts commit 00699fa64197cc72a160d69e1f0003cdd43dc136.
* Fix EGL shim extension injection for GL ES 3 drivers.Alistair Strachan2015-05-287-16/+155
| | | | | | | | | | | | | | | | | | | | | | | | | | The Android EGL shim injects GL_EXT_debug_marker into the ES driver EXTENSIONS string for the OpenGL ES 1.x and 2.0/3.0/3.1 drivers if the extension is not already provided. This feature is used by GLES_trace. In Open GL ES 3.0 it became possible to query an indexed version of the EXTENSIONS string via GetStringi(). NUM_EXTENSIONS Gets were also added to the specification (taken from Open GL). If the shim does not have to inject the extension, then there is no problem, as glGetString() and glGetStringi() / NUM_EXTENSIONS will be consistent. However, if the Android EGL shim injects the extension, NUM_EXTENSIONS and GetStringi() will report one less extension than is really available. Consistency between these methods is tested by the dEQP framework with the dEQP-GLES3.functional.state_query.string.extensions test. If the driver does not provide GL_EXT_debug_marker, this test fails. This change wraps all of the affected entry points so that the wrapped driver extensions are never visible directly to dEQP, eliminating the inconsistency.
* Merge "Modify EGL to disconnect the window when the surface gets destroyed." ↵Michael Lentine2015-05-141-0/+9
|\ | | | | | | into mnc-dev
| * Modify EGL to disconnect the window when the surface gets destroyed.Michael Lentine2015-05-131-0/+9
| | | | | | | | | | | | Bug: 14445579 Change-Id: I1d263ff6cffcb6e448761fca7ca4b06466ad65aa
* | Merge "Switch libGLESv1_CM/libGLESv2 to hash-style=both" into mnc-devDmitriy Ivanov2015-05-131-0/+6
|\ \
| * | Switch libGLESv1_CM/libGLESv2 to hash-style=bothDmitriy Ivanov2015-05-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Old version of unity uses custom linker to link itself and libmono. The custom linker does not support lookups with gnu-hash style. Switching libraries needed by libunity.so to --hash-style=both fixes this problem. Bug: http://b/20093774 Change-Id: I2a4887cf7a5ee80a8976ecaad54b52dc62518e55
* | | Replace JNI primitive array critical calls with non-critical ones.Hiroshi Yamauchi2015-05-1215-161/+395
|/ / | | | | | | | | | | | | The glgen part. Bug: 19235243 Change-Id: I69dfa84f15366808b964517c1ba270ddeb3c5940
* | libEGL: whitelist the EGL_KHR_create_context_no_error extensionJesse Hall2015-05-122-0/+6
|/ | | | | | | | | Allow EGL implementations to expose the EGL_KHR_create_context_no_error extension if they wish. https://www.khronos.org/registry/egl/extensions/KHR/EGL_KHR_create_context_no_error.txt Change-Id: I3290ccc2a69a1fa0b00ec3f1aa4f876906c64bfb
* libEGL: Add wrappers for partial update functionsDan Stoza2015-04-153-3/+97
| | | | | | | | | This adds EGL wrapper functions for the following EGL extensions: EGL_EXT_buffer_age EGL_KHR_partial_update EGL_KHR_swap_buffers_with_damage Change-Id: I407acda1e0310f7f01a5efe9c915721a941138a4
* DO NOT MERGE Add dataSpace to buffer queues; remove old format enums.Eino-Ville Talvala2015-03-191-12/+18
| | | | | | | | | | | | | | | - Wire up new dataSpace parameter through buffer queue stack - Update tests to include the parameter - Switch eglApi to using dataSpace to indicate sRGB gamma/linear difference - Remove RAW_SENSOR in favor of RAW16 - Remove use of sRGB format enums - Add default dataspace to buffer queue core - Add query for default dataspace Cherry pick of I070bd2e7c56506055c419004c29e2e3feac725df Change-Id: I461952389c18051176c6b75e664f20ad369f5760
* Merge "[MIPS] Fix mips32r1 build"Jesse Hall2015-03-153-0/+3
|\
| * [MIPS] Fix mips32r1 buildDuane Sand2015-02-023-0/+3
| | | | | | | | | | | | | | | | Fix regression from 6701fbe5f0d799c5245b0cdf3a69ecdcbfd9fb08 . The rdhwr instruction is unsupported by mips32r1 cpus, but is supported via kernel emulation on those cpus. Change-Id: Ieb3343fff0f0da54003044f451c90e1c761208eb
* | am 79749845: Merge "Fix pointer-to-int and int-to-pointer warnings."Dan Albert2015-02-253-3/+8
|\ \ | | | | | | | | | | | | * commit '797498450cbcb87c28636e775ada942005436909': Fix pointer-to-int and int-to-pointer warnings.
| * | Fix pointer-to-int and int-to-pointer warnings.Dan Albert2015-02-233-3/+8
| | | | | | | | | | | | Change-Id: If534cbcf2c3e644270572cbf829ba9b5acab29e6
* | | Merge commit '26cc3d0b67ff4daf31eaeed0ecd87b391978aadb' into HEADBill Yi2015-02-193-121/+148
|\ \ \ | |/ / |/| |
| * | am d6fce7ab: Merge "Remove lock around ref count check in terminate." into ↵Michael Lentine2015-01-282-120/+147
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-dev * commit 'd6fce7ab66e5d33e3ee16247485d1b8c26dd7ee8': Remove lock around ref count check in terminate.
| | * | Remove lock around ref count check in terminate.Michael Lentine2015-01-282-120/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the global lock in terminate for the ref count check with atomics and a local lock. Bug: 19072064 Change-Id: I0cfd6564e227a75b8387a8788b16381d5bc2cc88
| * | | am a46ff664: Merge "Use register numbers instead of register names"Jesse Hall2015-01-263-22/+22
| |\ \ \ | | | |/ | | |/| | | | | | | | | * commit 'a46ff664571465b7a2741bed4225d30b5bf07503': Use register numbers instead of register names
| * | | am f551e1c1: Merge "[MIPS] Further opengl support for mips64 and mipsr6"Jesse Hall2015-01-223-14/+115
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * commit 'f551e1c1a59ae7ac906e2b204c3704d0dbf926a8': [MIPS] Further opengl support for mips64 and mipsr6
| * \ \ \ am 4df903db: Merge "Revert "Revert "Update protobuf library from 2.3 to 2.6."""Jeff Davidson2015-01-1510-5256/+13
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * commit '4df903dbc71c48e2db6fae9390795b81782470b4': Revert "Revert "Update protobuf library from 2.3 to 2.6.""
| * \ \ \ \ am 6f9c6541: Merge "[MIPS] Build libGLES for mips64, mips32r6"Brian Carlstrom2015-01-133-3/+5
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6f9c6541b77b18a6922d1f50326faa9ec6ed6d2a': [MIPS] Build libGLES for mips64, mips32r6
| * \ \ \ \ \ am 83f14309: Merge "Revert "Update protobuf library from 2.3 to 2.6.""Jeff Davidson2015-01-1210-13/+5256
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '83f14309f17af398ec8ff7f82d9b2f010ea7cd5f': Revert "Update protobuf library from 2.3 to 2.6."
| * \ \ \ \ \ \ am 9200d4e3: Merge "Update protobuf library from 2.3 to 2.6."Jeff Davidson2015-01-1210-5256/+13
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '9200d4e3bf0bf9bf21d9bb335e04818364bf12a8': Update protobuf library from 2.3 to 2.6.
| * \ \ \ \ \ \ \ am bceb29c8: Merge "Fix clang -Wc++11-narrowing warnings."Chih-Hung Hsieh2014-12-115-15/+20
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'bceb29c83ea54d38b38e40d66402e56364cff56b': Fix clang -Wc++11-narrowing warnings.
| * \ \ \ \ \ \ \ \ am f8954c81: Merge "OpenGL tests: Fix unused variables"Andreas Gampe2014-12-024-18/+0
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f8954c81a4ec43958867d1f6f497ef449bf091fd': OpenGL tests: Fix unused variables
| * \ \ \ \ \ \ \ \ \ am 4aaa3935: Merge "Avoid overwriting EGL14.EGL_NO_SURFACE"Jesse Hall2014-12-021-10/+6
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '4aaa39358f538d8e06e026385bb8be8088d78c35': Avoid overwriting EGL14.EGL_NO_SURFACE
| * \ \ \ \ \ \ \ \ \ \ am 1bb53054: Merge "Fix class vs. struct mismatch"Chih-hung Hsieh2014-11-171-1/+1
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '1bb53054f2d77ce570a22629006c849fc54707dc': Fix class vs. struct mismatch
| * \ \ \ \ \ \ \ \ \ \ \ am d72ff140: Merge "Move frameworks/native to libc++."Dan Albert2014-11-161-3/+2
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd72ff140e0df44106cd8539396ce686aa8f3306a': Move frameworks/native to libc++.
| * \ \ \ \ \ \ \ \ \ \ \ \ am fecc0bf4: Merge "Frameworks/native: Add pragmas to glgen headers"Andreas Gampe2014-11-1213-2/+46
| |\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'fecc0bf4f1d8d1939807123d0f01ca1fe377bda4': Frameworks/native: Add pragmas to glgen headers
| * \ \ \ \ \ \ \ \ \ \ \ \ \ am 7b3fd290: Merge "EGL: make x86/64 wrappers resistant to ↵Jesse Hall2014-11-123-6/+6
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -fno-omit-frame-pointer flag" * commit '7b3fd29037bc12c2691e06334bf51171853aa8f3': EGL: make x86/64 wrappers resistant to -fno-omit-frame-pointer flag
| * \ \ \ \ \ \ \ \ \ \ \ \ \ \ am 98d20f82: Merge "Add a BufferItem parameter to onFrameAvailable" into ↵Dan Stoza2014-11-071-1/+1
| |\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | |_|_|_|_|_|_|_|_|_|_|_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lmp-mr1-dev * commit '98d20f82ca8979b30c81df9639f54ab11e1951f9': Add a BufferItem parameter to onFrameAvailable
| | * | | | | | | | | | | | | | Add a BufferItem parameter to onFrameAvailableDan Stoza2014-11-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Also adds an onFrameReplaced callback, which is necessary if the consumer wants to do anything more than simple queue length tracking. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
* | | | | | | | | | | | | | | | egl: Remove old tuna BGRA vs RGBA workaround.Alistair Strachan2015-02-122-33/+2
| |_|_|_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some time before kitkat, a workaround was put in place to keep tuna working with obsolete PowerVR GPU drivers. The tuna product was dropped in AOSP for kitkat, but the workaround remained. There are still a number of devices shipping with OMAP4 processors, and this workaround continues to be applied on those products even when it is not required. The effect is that virtual display CTS will fail on those devices.
* | | | | | | | | | | | | | | Use register numbers instead of register namesNikola Veljkovic2015-01-193-22/+22
| |_|_|_|_|_|_|_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid ambiguity by using register numbers. Register names are interpreted depending on the ABI. Fixes the issue with mips64 gcc, where registers t0-t4 are translated into $8-$11 (o32 ABI) instead of $12-$15 (o64 ABI). Also, use t9 ($25) for storing function address (in getProcAddress.cpp). Change-Id: I12ef5cd98bf14dab3c01f2756889cc02856c1cd8