Guy Zadikario
0536060b40
emulator opengl: guest/host rendering syncronization.
...
Added a return value for rcFlushWindowColorBuffer and
rcUpdateColorBuffer in order to make those calls to block
with a round-trip to the host. This is to make sure that
the color buffer is up-to-date before the flinger use it
for rendering.
Also added a call to the native windows's lock function after
EGL is attached and bound to render on the window. This call
was missed before.
This syncronization can be optimized by removing the round-trip
and insert sync primitive to the stream at every draw command that
reads from a color buffer to make the sync happen on the host
before rendering the color buffer and remove the need for the
guest to wait for that update.
Change-Id: I1c2d8bc407b69663e992a68d5aa755f19bbe0ec3
2011-06-25 16:56:08 +03:00
Guy Zadikario
4ef1f3474e
emulator opengl: initialize new colorbuffers
...
Initialize new allocated color buffers with zeros.
Change-Id: I64a63c2eda83fdec1926c387e171324fb07ebe83
2011-06-25 16:56:08 +03:00
Stas Gurtovoy
88ad268dd9
emulator opengles: Fixed bug in gralloc unregister_buffer
...
Reset the ashmemBase & mappedPid on unregister_buffer
Change-Id: Ia209f88a15eb51edb39b1a799500d835b944bc87
2011-06-25 16:30:30 +03:00
Stas Gurtovoy
128f401e4f
emulator opengles: Fixed a bug in eglChooseConfig implementation.
...
The config_size argument in rcChooseConfig should match the number
of requested configs and not the size in bytes to store it.
Moved the configs array size computation into rendeerControl.attrib.
Change-Id: I9e797024522965a656764c20252b25ff5ae657f5
2011-06-25 16:30:30 +03:00
Stas Gurtovoy
fdcba322fe
opengles emulator: Fixed upside-down gl image
...
This fix performs a flip software copy to match our coords with those expected by the flinger.
We may think of a better implementation in the future.
Change-Id: Ic09a5d0e22f7e209b33c07c993a3d56e328dd3ed
2011-06-25 16:28:58 +03:00
David 'Digit' Turner
229cc8fc89
am 4a2a7caf: am 80e88b37: am 993178d2: am 588d3e7a: Merge "emulator: opengl: Update/simplify build scripts"
...
* commit '4a2a7caf951c606e2796cf273a1459ce6f0af6cd':
emulator: opengl: Update/simplify build scripts
2011-06-24 10:50:28 -07:00
David Turner
e6911c05fc
am e8b6d94f: am 12e9736f: am f528fddf: am bd414ea2: Merge "opengl translator: fix eglGetConfigAttrib"
...
* commit 'e8b6d94fa3e901372860995dc2d0db07620310a3':
opengl translator: fix eglGetConfigAttrib
2011-06-23 07:49:56 -07:00
David Turner
b12c8370db
am 8b712206: am 5605bd75: am 227247ea: am 8e706026: Merge "opengl translator: conformance fixes"
...
* commit '8b7122068e76a9d9215d691663a2661a976dd861':
opengl translator: conformance fixes
2011-06-23 07:49:53 -07:00
David Turner
007e62d167
am 2284ef40: am 15b6cc56: am b4b448a9: am 97dba6cf: Merge "emulator gralloc: removed compilation warnings."
...
* commit '2284ef400c8e94c782e3c4d392bf6767fb1f1d85':
emulator gralloc: removed compilation warnings.
2011-06-23 07:49:50 -07:00
David Turner
35fa0a9a0f
am a792c749: am 47271614: am cb0cad4b: am 4e18d73d: Merge "emulator opengl: Fix gralloc color buffer uploads"
...
* commit 'a792c7495d2c342ce5de9803281bf33a51973a40':
emulator opengl: Fix gralloc color buffer uploads
2011-06-23 07:49:46 -07:00
David Turner
4d9d221a01
am 347a98cd: am 95d7f3ce: am 00736340: am ec3f9a75: Merge "emulator opengl: Added support for config_size 0 to FBConfig::chooseConfig"
...
* commit '347a98cd249c70c362c427fada9526afc65c7c37':
emulator opengl: Added support for config_size 0 to FBConfig::chooseConfig
2011-06-23 07:49:43 -07:00
David Turner
91c685f105
am 4be3c181: am 3001b512: am c848f113: am ad66b123: Merge "emulator opengl: fix crash in gralloc_free"
...
* commit '4be3c18126dbfc19e783ee86cd11de67b395277d':
emulator opengl: fix crash in gralloc_free
2011-06-23 07:49:39 -07:00
David Turner
ba71934340
am e38f9f31: am c76cd1af: am 49c24102: am 97dfbff4: Merge "emulator opengl: implement glGetString"
...
* commit 'e38f9f31a0b8d29d513286032ad79b2fc8214e82':
emulator opengl: implement glGetString
2011-06-23 07:49:35 -07:00
David Turner
694422de04
am daaabe8a: am 1d8ebc35: am 4f2b6309: am 5b675210: Merge "emulator opengl: use eglGetProcAddress in EGL dispatch."
...
* commit 'daaabe8a8d47af6745f2d29d5eb84a6e3db16ca5':
emulator opengl: use eglGetProcAddress in EGL dispatch.
2011-06-23 07:48:15 -07:00
David Turner
25308eed19
am 6d9eb604: am 7fb8f627: am fa60dc0a: am c3349b5a: Merge "emulator egl translator: Fix eglGetProcAddress."
...
* commit '6d9eb604639c26bcf59610c5c8527b1c5be98c82':
emulator egl translator: Fix eglGetProcAddress.
2011-06-23 07:48:10 -07:00
David Turner
d33845d070
am cdb5dd35: am b0361b1c: am 022254b8: am f4c9f254: Merge "opengl renderer: Fixed colorBuffer texture creation."
...
* commit 'cdb5dd355047c15d4fa456630a1df596623a7d80':
opengl renderer: Fixed colorBuffer texture creation.
2011-06-23 07:48:06 -07:00
David Turner
68c38f44a3
am 4391d215: am c0f900b7: am 5f326344: am 025c1f7f: Merge "emulator opengl: Fix bug when re-binding the same context"
...
* commit '4391d215e13da52f287ff8d70fa52c52c84c9772':
emulator opengl: Fix bug when re-binding the same context
2011-06-23 07:48:00 -07:00
David Turner
839e06ad4a
am 7944a9a6: am ac921443: am ef6691f2: am 3ef2b6bf: Merge "emulator opengl: more few fixups needed for the system to load."
...
* commit '7944a9a6c9eda426ea3af188c8dfcf1093fdd12c':
emulator opengl: more few fixups needed for the system to load.
2011-06-23 07:47:55 -07:00
David Turner
842a48936c
am 47138a6e: am 426420ab: am 91acad1a: am 1c39202b: Merge "emulator opengl: pool of fixups to the host side."
...
* commit '47138a6e4a01e747f553b1f5165b7c5130763464':
emulator opengl: pool of fixups to the host side.
2011-06-23 07:47:50 -07:00
David Turner
21f6af6cd9
am 59970b6d: am 7304f16f: am 8f709075: am 3f5c9555: Merge "emulator opengl: pool of fixups to the system components."
...
* commit '59970b6d1156581c1aa983cde4c89ea9e0343aac':
emulator opengl: pool of fixups to the system components.
2011-06-23 07:46:53 -07:00
David Turner
45dee38b28
am 25354d60: am 97ae42d7: am 02c5d31f: am 6aef5092: Merge "emulator opengl: added Bind texture to EGLImage/surface"
...
* commit '25354d605d6402b3d1de8647ad752fa6af1b8b4c':
emulator opengl: added Bind texture to EGLImage/surface
2011-06-23 07:46:47 -07:00
David Turner
405acc2bf1
am f70e6700: am ad070202: am e0126df2: am 390b0753: Merge "emulator opengl: Added glFinishRoundTrip to GLESv2"
...
* commit 'f70e6700c50a9236f1108db190510f4baefefe53':
emulator opengl: Added glFinishRoundTrip to GLESv2
2011-06-23 07:46:37 -07:00
David 'Digit' Turner
4a2a7caf95
am 80e88b37: am 993178d2: am 588d3e7a: Merge "emulator: opengl: Update/simplify build scripts"
...
* commit '80e88b371389fe220cfdfc4a40ffdeb38fce484e':
emulator: opengl: Update/simplify build scripts
2011-06-23 05:30:07 -07:00
David 'Digit' Turner
8422a11a21
emulator: opengl: Update/simplify build scripts
...
This patch is a major rework of the build opengl-emulation
build scripts. See README for details.
In a nutshell, this introduces various functions that considerably
simplify the declaration of the 26+ modules in this implementation,
by handling auto-generation of sources and module imports/exports.
Change-Id: I827522d783c7b6cf5eafd37204a1025c235458cd
2011-06-23 00:35:54 +02:00
David Turner
e8b6d94fa3
am 12e9736f: am f528fddf: am bd414ea2: Merge "opengl translator: fix eglGetConfigAttrib"
...
* commit '12e9736f8ce84a055af0fb09e17aab53abb49a1c':
opengl translator: fix eglGetConfigAttrib
2011-06-22 00:21:24 -07:00
David Turner
8b7122068e
am 5605bd75: am 227247ea: am 8e706026: Merge "opengl translator: conformance fixes"
...
* commit '5605bd75c13e9272cd0a1d8db7fc09b072960b6f':
opengl translator: conformance fixes
2011-06-22 00:21:22 -07:00
David Turner
2284ef400c
am 15b6cc56: am b4b448a9: am 97dba6cf: Merge "emulator gralloc: removed compilation warnings."
...
* commit '15b6cc560eccbfe98e9ff3388218b70d2206ce20':
emulator gralloc: removed compilation warnings.
2011-06-22 00:19:16 -07:00
David Turner
a792c7495d
am 47271614: am cb0cad4b: am 4e18d73d: Merge "emulator opengl: Fix gralloc color buffer uploads"
...
* commit '472716143c3349f554ff39dfaeaa5b2f2d17b7f7':
emulator opengl: Fix gralloc color buffer uploads
2011-06-22 00:19:13 -07:00
David Turner
347a98cd24
am 95d7f3ce: am 00736340: am ec3f9a75: Merge "emulator opengl: Added support for config_size 0 to FBConfig::chooseConfig"
...
* commit '95d7f3ce1d53c30c9302ae5f923b3494c76fe0d2':
emulator opengl: Added support for config_size 0 to FBConfig::chooseConfig
2011-06-22 00:19:09 -07:00
David Turner
4be3c18126
am 3001b512: am c848f113: am ad66b123: Merge "emulator opengl: fix crash in gralloc_free"
...
* commit '3001b512438489df64dc83837eff4d1e220d058b':
emulator opengl: fix crash in gralloc_free
2011-06-22 00:19:06 -07:00
David Turner
e38f9f31a0
am c76cd1af: am 49c24102: am 97dfbff4: Merge "emulator opengl: implement glGetString"
...
* commit 'c76cd1afbcf26bf211f697ac6174988743a25eff':
emulator opengl: implement glGetString
2011-06-22 00:18:57 -07:00
David Turner
bd414ea2ff
Merge "opengl translator: fix eglGetConfigAttrib"
2011-06-21 23:23:26 -07:00
David Turner
8e706026d1
Merge "opengl translator: conformance fixes"
2011-06-21 23:23:07 -07:00
David Turner
50832de753
am 0ed0e2fa: am e7661212: am 4a47a38b: am cd108d55: Merge "emulator opengl: Small change to support more surface attributes"
...
* commit '0ed0e2fabde8ad3a8a37bdb66f6ab18d49f2df96':
emulator opengl: Small change to support more surface attributes
2011-06-21 15:28:03 -07:00
David Turner
54f8f18788
am c98d28c7: am cbf73e7b: am 5d4b1f50: am c4b10a54: Merge "emulator opengl: Added glFinishRoundTrip implementation."
...
* commit 'c98d28c7c61f8c4a228065e45cff26ec06cc22c6':
emulator opengl: Added glFinishRoundTrip implementation.
2011-06-21 15:27:52 -07:00
David Turner
00023d5f43
am 58c9dc19: am 117408f1: am 407faf4c: am b9cbdec5: Merge "emulator opengl: implemented getProcAddress in GLESv1."
...
* commit '58c9dc194dfc0e0e2acef8aef5ee946a35b4f0a5':
emulator opengl: implemented getProcAddress in GLESv1.
2011-06-21 15:27:47 -07:00
David Turner
418cabcc4a
am c73a475d: am 85f7ec00: am bf2d789d: am 52ae291a: Merge "emulator opengl: system GLESv1 first commit."
...
* commit 'c73a475de5192d984f3ca104b717cc31742eb2e9':
emulator opengl: system GLESv1 first commit.
2011-06-21 15:27:34 -07:00
Guy Zadikario
22a288abf8
emulator gralloc: removed compilation warnings.
...
just removes anoying compliation warnings in the HMI
initialization.
Change-Id: I23377a7cae774cf436f89e25edb78c10ff5b5c78
2011-06-21 20:47:43 +02:00
Guy Zadikario
7d39ef3772
emulator opengl: Fix gralloc color buffer uploads
...
Use the correct OpenGL pixel type enum when uploading
color buffer content to host.
Change-Id: Idc859306c0398850505f0f348796bc4f12b63b6a
2011-06-21 20:47:43 +02:00
Stas Gurtovoy
5960b2717c
emulator opengl: Added support for config_size 0 to FBConfig::chooseConfig
...
Fixed a bug in FBConfig::chooseConfig implementation
Change-Id: I4b8e98f43825c012f13d0a0684fe8f918e511400
2011-06-21 20:47:43 +02:00
Stas Gurtovoy
ca629bd28e
emulator opengl: fix crash in gralloc_free
...
Fixed bug in list implementation in gralloc_free which caused a crash,
also removed some log prints.
Change-Id: Ie932c838086c99567643868682419ceb122cf787
2011-06-21 20:47:43 +02:00
Guy Zadikario
1ef706f96f
emulator opengl: implement glGetString
...
Added rcGetGLString token to renderControl to query
a GL string constant from the current context from the host.
Implement glGetString functinality in EGL so that the string
value can be cached in the context structure and also
implementation can be shared between GLESv1 and GLESv2.
Also, fixed clientAPI context initialization check in
eglMakeCurrent. The check was for the previously bounded
context instead for the newly bounded context.
Change-Id: I41c0b4ad462c9ad5bd5c66719b41509bb1b7a947
2011-06-21 20:47:43 +02:00
David Turner
daaabe8a8d
am 1d8ebc35: am 4f2b6309: am 5b675210: Merge "emulator opengl: use eglGetProcAddress in EGL dispatch."
...
* commit '1d8ebc357917a053d368d46373d6074458408bb3':
emulator opengl: use eglGetProcAddress in EGL dispatch.
2011-06-21 11:44:16 -07:00
David Turner
6d9eb60463
am 7fb8f627: am fa60dc0a: am c3349b5a: Merge "emulator egl translator: Fix eglGetProcAddress."
...
* commit '7fb8f627b48ba517309d4ea3dbe9ed9a92459a19':
emulator egl translator: Fix eglGetProcAddress.
2011-06-21 11:44:14 -07:00
David Turner
cdb5dd3550
am b0361b1c: am 022254b8: am f4c9f254: Merge "opengl renderer: Fixed colorBuffer texture creation."
...
* commit 'b0361b1c11f7b80364e5e7ed70086cf710ea737e':
opengl renderer: Fixed colorBuffer texture creation.
2011-06-21 11:44:12 -07:00
David Turner
4391d215e1
am c0f900b7: am 5f326344: am 025c1f7f: Merge "emulator opengl: Fix bug when re-binding the same context"
...
* commit 'c0f900b70b108045e67178f714460b06fd1ca4a4':
emulator opengl: Fix bug when re-binding the same context
2011-06-21 11:44:09 -07:00
David Turner
7944a9a6c9
am ac921443: am ef6691f2: am 3ef2b6bf: Merge "emulator opengl: more few fixups needed for the system to load."
...
* commit 'ac921443eaf0db25d3b0f566a3ef9eebecb48876':
emulator opengl: more few fixups needed for the system to load.
2011-06-21 11:44:06 -07:00
David Turner
47138a6e4a
am 426420ab: am 91acad1a: am 1c39202b: Merge "emulator opengl: pool of fixups to the host side."
...
* commit '426420abaea9231358f080b5d6b5cfd81f583bf1':
emulator opengl: pool of fixups to the host side.
2011-06-21 11:43:53 -07:00
David Turner
59970b6d11
am 7304f16f: am 8f709075: am 3f5c9555: Merge "emulator opengl: pool of fixups to the system components."
...
* commit '7304f16f03097fa4d19b8baf29a0abe907483069':
emulator opengl: pool of fixups to the system components.
2011-06-21 05:38:01 -07:00
David Turner
25354d605d
am 97ae42d7: am 02c5d31f: am 6aef5092: Merge "emulator opengl: added Bind texture to EGLImage/surface"
...
* commit '97ae42d71849d02fa2a9766bf29d16adffdb6981':
emulator opengl: added Bind texture to EGLImage/surface
2011-06-21 05:34:26 -07:00