510 Commits

Author SHA1 Message Date
Mathias Agopian
d9bec297fd am c421fc2a: Merge change Id09376d1 into eclair
Merge commit 'c421fc2ada7c1bff104733b840bd640151bebbbb' into eclair-plus-aosp

* commit 'c421fc2ada7c1bff104733b840bd640151bebbbb':
  fix [2071412] work around mdp 32-bits fade limitation
2009-11-09 19:34:26 -08:00
Mathias Agopian
d09376d1e2 fix [2071412] work around mdp 32-bits fade limitation
make sure to always specify blits *inside* the source bitmap.
2009-11-09 17:55:59 -08:00
Jack Palevich
2806a6b5ff am 73ae27f0: am 8da3ac92: resolved conflicts for merge of 3f857b78 to eclair-mr2
Merge commit '73ae27f0c56fa705dcfb86d784a95b86f10e48ad'

* commit '73ae27f0c56fa705dcfb86d784a95b86f10e48ad':
  Allow a GLThread to release and reacquire the EGL Surface as needed.
2009-11-09 16:14:25 -08:00
Jack Palevich
73ae27f0c5 am 8da3ac92: resolved conflicts for merge of 3f857b78 to eclair-mr2
Merge commit '8da3ac92a6a6247ef06de4d4b684f8635d8fc003' into eclair-mr2-plus-aosp

* commit '8da3ac92a6a6247ef06de4d4b684f8635d8fc003':
  Allow a GLThread to release and reacquire the EGL Surface as needed.
2009-11-09 16:11:11 -08:00
Jack Palevich
8da3ac92a6 resolved conflicts for merge of 3f857b78 to eclair-mr2 2009-11-10 08:04:53 +08:00
Jean-Baptiste Queru
3c08b74155 am ac94fbd0: merge from open-source master
Merge commit 'ac94fbd081450ae7f208e4525b23b36d90d382e0'

* commit 'ac94fbd081450ae7f208e4525b23b36d90d382e0':
  Capture failure of copybit->stretch()
  Fix obvious typo bug in egl.cpp
  LocationManagerService: Fix race when removing LocationListener
  Don't return when blocking is true.
  Fix of compatibility with multifunction extUSB adapters.
  Fix documentation example, per issue 895 on android.googlecode.com
2009-11-09 12:08:48 -08:00
Jack Palevich
55723d86bd am 3f857b78: Merge change I32d41651 into eclair
Merge commit '3f857b78fc68e5d700139bdc6078c5333b62a9bc' into eclair-plus-aosp

* commit '3f857b78fc68e5d700139bdc6078c5333b62a9bc':
  Allow a GLThread to release and reacquire the EGL Surface as needed.
2009-11-09 11:54:29 -08:00
Jean-Baptiste Queru
ac94fbd081 merge from open-source master 2009-11-09 11:00:18 -08:00
Jean-Baptiste Queru
bcd20496e0 merge from open-source master 2009-11-08 17:03:30 -08:00
Jack Palevich
32d4165184 Allow a GLThread to release and reacquire the EGL Surface as needed.
We currently only allow one GLThread to have an active EGL Surface at a
time.(This may be lifted in the future, when EGL and GL are reentrant.)

Prior to this change we would enforce this rule by having older GLThreads
quit when a new GLThread started. That had the drawback of leaving the
older GLSurfaceViews in a zombie state -- their GLThreads would be
gone.

We now enforce this rule by just releasing and reacquiring the EGL surface
context as needed.

Specific changes to the code:

created private helper methods - startEgl and stopEgl to help manage
starting and stopping EGL.

Move the calls to sGLThreadManager start and end from the outermost run
method into the startEgl / stopEgl methods.

Reworked the wait loop to handle starting and stopping EGL as needed.

needToWait() gets simpler -- just looks at current status.

sGLThreadManager.shouldQuit was replaced by shouldHaveEgl.


This is another step in fixing bug 2228262.
2009-11-08 10:55:56 +08:00
Jack Palevich
6518c2bab4 am e54f267f: am a3a351e5: resolved conflicts for merge of 4e3fadd0 to eclair-mr2
Merge commit 'e54f267f06e86f9c1248742fc56967355721a4e7'

* commit 'e54f267f06e86f9c1248742fc56967355721a4e7':
  Fix stupid bug in GLThreadManager implementation.
2009-11-06 16:56:32 -08:00
Jack Palevich
e54f267f06 am a3a351e5: resolved conflicts for merge of 4e3fadd0 to eclair-mr2
Merge commit 'a3a351e5d164d0c8b461ae7af86edc0227654a76' into eclair-mr2-plus-aosp

* commit 'a3a351e5d164d0c8b461ae7af86edc0227654a76':
  Fix stupid bug in GLThreadManager implementation.
2009-11-06 16:45:58 -08:00
Jack Palevich
a3a351e5d1 resolved conflicts for merge of 4e3fadd0 to eclair-mr2 2009-11-06 16:35:19 -08:00
Jack Palevich
2a0bacffc1 am 4e3fadd0: Merge change Ia4424950 into eclair
Merge commit '4e3fadd0c99d2774709a067e017d8fd622440f0e' into eclair-plus-aosp

* commit '4e3fadd0c99d2774709a067e017d8fd622440f0e':
  Fix stupid bug in GLThreadManager implementation.
2009-11-06 16:11:50 -08:00
Jack Palevich
a44249500f Fix stupid bug in GLThreadManager implementation.
The code intended to copy the old value of a field, before the
field was updated. However, what the code was actually doing was
copying the new value of the field, after the field was updated.

The fix was to move the copy to before the update.

This is work towards fixing bug 2228262
2009-11-07 07:49:15 +08:00
Jack Palevich
3f7b5a13ca am a9e47546: am 79447b20: resolved conflicts for merge of 84872738 to eclair-mr2
Merge commit 'a9e47546a5132b30a2ed1e24d9193d4db09ef323'

* commit 'a9e47546a5132b30a2ed1e24d9193d4db09ef323':
  Improve GLSurfaceView to avoid deadlocks and race conditions.
2009-11-06 00:40:00 -08:00
Jack Palevich
a9e47546a5 am 79447b20: resolved conflicts for merge of 84872738 to eclair-mr2
Merge commit '79447b2087c8c820d742185dda7305101f9656f0' into eclair-mr2-plus-aosp

* commit '79447b2087c8c820d742185dda7305101f9656f0':
  Improve GLSurfaceView to avoid deadlocks and race conditions.
2009-11-06 00:25:44 -08:00
Jack Palevich
79447b2087 resolved conflicts for merge of 84872738 to eclair-mr2 2009-11-06 00:13:38 -08:00
Jack Palevich
0f820d9bf4 am 84872738: Merge change I971f6fd3 into eclair
Merge commit '84872738f291faf25ae07235cde382d38c796567' into eclair-plus-aosp

* commit '84872738f291faf25ae07235cde382d38c796567':
  Improve GLSurfaceView to avoid deadlocks and race conditions.
2009-11-05 22:32:14 -08:00
Jack Palevich
8b2c9c9ecb Improve GLSurfaceView to avoid deadlocks and race conditions.
This is work towards fixing bug 2228262

Specific issues fixed by this change:

+ GLThread names now include the thread id, making it easier to tell one
GLThread from another.

+ A private final static boolean LOG_THREADS can be set to true at compile
time to print out thread-related trace information, helpful for debugging
GLSurfaceView behavior. This static defaults to "false".

+ Changed calls to "notify" to "notifyAll" to make the code more
robust in case more than two threads are blocked on the same monitor.

+ Add a GLThreadManager to help manage the transition to
a new GLThread. Currently only one GLThread can be active in an address
space. When the second thread starts up, the GLThreadManager helps the old
GLThread to shut down,

+ Make sure we stop waiting for dead GLThreads. This is done by adding
checks for a variable mDone being true to our monitor wait loops. And
we use a "finally" clause at the end of GLThread.run() method to set mDone
and notifyAll any wait loops.
2009-11-06 10:21:46 +08:00
Mathias Agopian
9ac8e3c609 am ba37ea55: am 6d9e0c7a: am 36fe3eea: part of fix [2186418] switch passion to 24-bits framebuffer
Merge commit 'ba37ea550d97b753fc74049d22f5e752d4b0185f'

* commit 'ba37ea550d97b753fc74049d22f5e752d4b0185f':
  part of fix [2186418] switch passion to 24-bits framebuffer
2009-11-04 15:20:59 -08:00
Mathias Agopian
ba37ea550d am 6d9e0c7a: am 36fe3eea: part of fix [2186418] switch passion to 24-bits framebuffer
Merge commit '6d9e0c7aa797f4dae5f529560e9e7c31336624e3' into eclair-mr2-plus-aosp

* commit '6d9e0c7aa797f4dae5f529560e9e7c31336624e3':
  part of fix [2186418] switch passion to 24-bits framebuffer
2009-11-04 15:10:13 -08:00
Mathias Agopian
6d9e0c7aa7 am 36fe3eea: part of fix [2186418] switch passion to 24-bits framebuffer
Merge commit '36fe3eeaa056ff13455c0df73b495b2bae8c1469' into eclair-mr2

* commit '36fe3eeaa056ff13455c0df73b495b2bae8c1469':
  part of fix [2186418] switch passion to 24-bits framebuffer
2009-11-04 14:59:44 -08:00
Mathias Agopian
dc24cea38c am 36fe3eea: part of fix [2186418] switch passion to 24-bits framebuffer
Merge commit '36fe3eeaa056ff13455c0df73b495b2bae8c1469' into eclair-plus-aosp

* commit '36fe3eeaa056ff13455c0df73b495b2bae8c1469':
  part of fix [2186418] switch passion to 24-bits framebuffer
2009-11-04 14:59:14 -08:00
Mathias Agopian
36fe3eeaa0 part of fix [2186418] switch passion to 24-bits framebuffer
add support for RGBX_8888 EGLConfigs in the software renderer
(since that's what we're using in the MDP case)
2009-11-04 14:51:18 -08:00
Mathias Agopian
c92ed49ba6 am 43606242: am 8e5e44e9: am 9a54d7dd: Merge change Ibbf945f3 into eclair
Merge commit '4360624241251035534a46449e23be38d9e6b03c'

* commit '4360624241251035534a46449e23be38d9e6b03c':
  fix [2236832] software OpenGL ES driver doesn't work on sholes
2009-11-04 13:46:42 -08:00
Mathias Agopian
4360624241 am 8e5e44e9: am 9a54d7dd: Merge change Ibbf945f3 into eclair
Merge commit '8e5e44e9538fc327800414926651d46967ccc725' into eclair-mr2-plus-aosp

* commit '8e5e44e9538fc327800414926651d46967ccc725':
  fix [2236832] software OpenGL ES driver doesn't work on sholes
2009-11-04 13:23:36 -08:00
Mathias Agopian
8e5e44e953 am 9a54d7dd: Merge change Ibbf945f3 into eclair
Merge commit '9a54d7dddcbc982d644c627693dc39fb2cb5c0fb' into eclair-mr2

* commit '9a54d7dddcbc982d644c627693dc39fb2cb5c0fb':
  fix [2236832] software OpenGL ES driver doesn't work on sholes
2009-11-04 13:14:59 -08:00
Mathias Agopian
e4fb484187 am 9a54d7dd: Merge change Ibbf945f3 into eclair
Merge commit '9a54d7dddcbc982d644c627693dc39fb2cb5c0fb' into eclair-plus-aosp

* commit '9a54d7dddcbc982d644c627693dc39fb2cb5c0fb':
  fix [2236832] software OpenGL ES driver doesn't work on sholes
2009-11-04 13:13:34 -08:00
Mathias Agopian
bbf945f3c0 fix [2236832] software OpenGL ES driver doesn't work on sholes
make sure to not pass our fake handles to the real gralloc
2009-11-03 21:08:06 -08:00
Mathias Agopian
bb1517ed8f am 4e90c907: am 65ab88c7: am 21977eb0: Merge change I56981989 into eclair
Merge commit '4e90c907f4fb222901f9db07a1f603c01211868d'

* commit '4e90c907f4fb222901f9db07a1f603c01211868d':
  fix [2231527] Compatibility with SpaceJunk game (OpenGL)
2009-11-03 15:26:21 -08:00
Mathias Agopian
4e90c907f4 am 65ab88c7: am 21977eb0: Merge change I56981989 into eclair
Merge commit '65ab88c78916d7e3a182125878b17c8f40d7cac5' into eclair-mr2-plus-aosp

* commit '65ab88c78916d7e3a182125878b17c8f40d7cac5':
  fix [2231527] Compatibility with SpaceJunk game (OpenGL)
2009-11-03 15:21:00 -08:00
Mathias Agopian
71eba665af am 21977eb0: Merge change I56981989 into eclair
Merge commit '21977eb0f1d22497d0beed0492e579f953a56552' into eclair-plus-aosp

* commit '21977eb0f1d22497d0beed0492e579f953a56552':
  fix [2231527] Compatibility with SpaceJunk game (OpenGL)
2009-11-03 15:11:41 -08:00
Mathias Agopian
65ab88c789 am 21977eb0: Merge change I56981989 into eclair
Merge commit '21977eb0f1d22497d0beed0492e579f953a56552' into eclair-mr2

* commit '21977eb0f1d22497d0beed0492e579f953a56552':
  fix [2231527] Compatibility with SpaceJunk game (OpenGL)
2009-11-03 15:11:11 -08:00
Android (Google) Code Review
21977eb0f1 Merge change I56981989 into eclair
* changes:
  fix [2231527] Compatibility with SpaceJunk game (OpenGL)
2009-11-03 18:04:49 -05:00
Mathias Agopian
55ab1c002d am d1d744cd: am 07d38c66: am 8637759a: Merge change I36d0184e into eclair
Merge commit 'd1d744cdf4b08c8ef969790bae305c82ae783f4e'

* commit 'd1d744cdf4b08c8ef969790bae305c82ae783f4e':
  fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video
2009-11-03 10:04:07 -08:00
Mathias Agopian
d1d744cdf4 am 07d38c66: am 8637759a: Merge change I36d0184e into eclair
Merge commit '07d38c66692b7d87415667010c0658202b5a7f39' into eclair-mr2-plus-aosp

* commit '07d38c66692b7d87415667010c0658202b5a7f39':
  fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video
2009-11-03 09:47:31 -08:00
Mathias Agopian
07d38c6669 am 8637759a: Merge change I36d0184e into eclair
Merge commit '8637759a1d34a4adda292579d5f8790587659235' into eclair-mr2

* commit '8637759a1d34a4adda292579d5f8790587659235':
  fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video
2009-11-03 09:34:40 -08:00
Mathias Agopian
b87e3eb933 am 8637759a: Merge change I36d0184e into eclair
Merge commit '8637759a1d34a4adda292579d5f8790587659235' into eclair-plus-aosp

* commit '8637759a1d34a4adda292579d5f8790587659235':
  fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video
2009-11-03 09:33:22 -08:00
Mathias Agopian
5698198967 fix [2231527] Compatibility with SpaceJunk game (OpenGL)
we treated all lights as local lights when transforming their
position back to object space.
2009-11-02 18:33:08 -08:00
Mathias Agopian
36d0184e08 fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video
we lost the concept of vertical stride when moving video playback to EGLImage.
Here we bring it back in a somewhat hacky-way that will work only for the
softgl/mdp backend.
2009-11-02 17:48:33 -08:00
Iliyan Malchev
0c69d8d34a am cb80b4f1: am 8385baea: am 05cb5610: Merge change I8c0eb9a6 into eclair
Merge commit 'cb80b4f18e63cd8ef065bd375c28d90c8356ae42'

* commit 'cb80b4f18e63cd8ef065bd375c28d90c8356ae42':
  libagl: silence a LOGD
2009-11-01 21:56:52 -08:00
Mathias Agopian
ea9719ea77 am 78383abf: am cbf583d7: am 77bd91f8: Merge change Ie3e80456 into eclair
Merge commit '78383abf76e7daf8c1968d2e9a29a1ba354edb2e'

* commit '78383abf76e7daf8c1968d2e9a29a1ba354edb2e':
  Turns out the SGX driver is correct and the bug was in this test.
2009-11-01 21:56:22 -08:00
Mathias Agopian
aee73dc45a am c64e9346: am d85545d0: am d01767f8: Merge change I56779290 into eclair
Merge commit 'c64e9346785a1a4fc95ec6cf27da8a5193a2dfbc'

* commit 'c64e9346785a1a4fc95ec6cf27da8a5193a2dfbc':
  fix[2222341] Soft reset while going back from camcorder settings
2009-11-01 21:54:55 -08:00
Mathias Agopian
8617d1a6f3 am 5acbf81a: am 74d4640c: am f989c114: Merge change If007a2fa into eclair
Merge commit '5acbf81a20f5cd121c1eee81de5f9350b1a8c16e'

* commit '5acbf81a20f5cd121c1eee81de5f9350b1a8c16e':
  return proper error code from eglCreateImageKHR
2009-11-01 21:54:44 -08:00
Iliyan Malchev
cb80b4f18e am 8385baea: am 05cb5610: Merge change I8c0eb9a6 into eclair
Merge commit '8385baea4742734dd23843b6dcf89fd2e0490dd6' into eclair-mr2-plus-aosp

* commit '8385baea4742734dd23843b6dcf89fd2e0490dd6':
  libagl: silence a LOGD
2009-10-30 18:41:22 -07:00
Mathias Agopian
78383abf76 am cbf583d7: am 77bd91f8: Merge change Ie3e80456 into eclair
Merge commit 'cbf583d7229aaff65734b4234e81db8ead864761' into eclair-mr2-plus-aosp

* commit 'cbf583d7229aaff65734b4234e81db8ead864761':
  Turns out the SGX driver is correct and the bug was in this test.
2009-10-30 18:41:00 -07:00
Iliyan Malchev
78ac0f1b22 am 05cb5610: Merge change I8c0eb9a6 into eclair
Merge commit '05cb5610fdfb7b69cf90a9230853e59b4ae5e219' into eclair-plus-aosp

* commit '05cb5610fdfb7b69cf90a9230853e59b4ae5e219':
  libagl: silence a LOGD
2009-10-30 18:36:09 -07:00
Iliyan Malchev
8385baea47 am 05cb5610: Merge change I8c0eb9a6 into eclair
Merge commit '05cb5610fdfb7b69cf90a9230853e59b4ae5e219' into eclair-mr2

* commit '05cb5610fdfb7b69cf90a9230853e59b4ae5e219':
  libagl: silence a LOGD
2009-10-30 18:35:51 -07:00
Iliyan Malchev
8c0eb9a6eb libagl: silence a LOGD
Signed-off-by: Iliyan Malchev <malchev@google.com>
2009-10-30 18:29:08 -07:00