History log of /device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
88c170cdf4d4a3c83ea61540d25bdcf4153fb5b8 30-Nov-2016 Lingfeng Yang <lfy@google.com> Revert "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc""

This reverts commit 9b166b966d6f03f13f65d3134f9c5e1133ec10e2.

Change-Id: I9b10b45d1ebd3b51ede2f75cc8ab403914b0d777
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
9b166b966d6f03f13f65d3134f9c5e1133ec10e2 30-Nov-2016 Miao Wang <miaowang@google.com> Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"

This reverts commit df3a043b96b90d949643ddd0219fc0bf4ff68040.

Change-Id: Ic87fa2f922bd61123e64fc32fc8ebb13dec4c219
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
df3a043b96b90d949643ddd0219fc0bf4ff68040 24-Sep-2016 Lingfeng Yang <lfy@google.com> DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc

Also includes YV12/YUV420888 conversion on the host.

Change-Id: Ie0c23f6e18ae96b2bdeadf6dbd4828ca1e7de8a0
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
e8cf63de76ea0b518b3593205ad191f51cd43292 22-Sep-2016 Yahan Zhou <yahan@google.com> Refactor pre-process GL resource management (guest)

Previously we bind a process unique id (puid) to the GL encoder / decoder
commands when managing process owned GL resources.

This patch simplify it by telling each rendering thread its puid at the
beginning, and using that puid for resource management. It will make our
life easier when we need to change other resources from owned-by-thread
to owned-by-process (e.g. EglContext).

This CL must work with host CL:
https://android-review.googlesource.com/#/c/277778

Change-Id: I94a8cb55e8619c2f0da1a5669827e89fe42660d2
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
2ce4c312eadae49c5f92fffab31dea8845a67f7e 31-Aug-2016 Lingfeng Yang <lfy@google.com> +rcDestroySyncKHR, don't leak on swapBuffers

This CL is part of this host CL to clean up EGL sync objects:

https://android-review.googlesource.com/#/c/267892/

It does the following:
- adds rcDestroySyncKHR
- avoids creating an actual EGL sync object when in swapBuffers(),
because it will be cumbersome to delete it from the guest.
Instead, it specifically calls rcCreateSyncKHR and tells the host
to clean up the object when it has become signaled.
- refactors rcCreateSyncKHR / goldfish_sync_queue_work to
a common function.
- bumps the GLAsyncSwap version string to "ANDROID_EMU_native_sync_v2",
so that the emulator can work with all combinations of
old/new emulator/system-image.

Change-Id: Iff9a5e226b4026b955893c6f4d6ff3266009da6b
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
410505982539276fc1131a832dd1aa1d0570476a 29-Jul-2016 Yahan Zhou <yahan@google.com> Per-process EGLImage resource release

https://buganizer.corp.google.com/issues/29457657

This CL marks each EGLImage with its process unique ID when
communicating with the host, so that the host can properly clean up
EGLImages when the guest process is killed.

It is doing similar thing as in
https://googleplex-android-review.git.corp.google.com/#/c/1207896/

The implementation reuses gralloc pipe. Because now the gralloc pipe
is also used outside of gralloc, this patch moves the gralloc pipe
implemenation ProcessPipe.cpp and also renames gralloc pipe.

Change-Id: I90c6d1d842ba2741d371f02a519e0fa904bc0f08
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
7c4d6bfe54ae658f0d31109ccdf7cf9406672871 14-Jul-2016 Lingfeng Yang <lfy@google.com> Add encoder entries for EGL_KHR_fence_sync

- also update encoder templates to latest version

This is part of a sequential, multi-CL change. There is also
a corresponding multi-CL change on the host side:

https://android-review.googlesource.com/#/q/topic:emu-glsync-host

The changes in the system image are as follows:

platform/build:

https://googleplex-android-review.git.corp.google.com/1024926

device/generic/goldfish:

https://googleplex-android-review.git.corp.google.com/1230942

device/generic/goldfish-opengl:

https://googleplex-android-review.git.corp.google.com/1219535
https://googleplex-android-review.git.corp.google.com/1219536 <- this CL
https://googleplex-android-review.git.corp.google.com/1219537
https://googleplex-android-review.git.corp.google.com/1219538
https://googleplex-android-review.git.corp.google.com/1219539
https://googleplex-android-review.git.corp.google.com/1219570 <- uses this
https://googleplex-android-review.git.corp.google.com/1219571

Change-Id: Ief436ccf8947d35c4b7719dc9ef6def4488cb3f0
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
847aaafb1827333be78af49109ed51bd12ceb290 19-Jul-2016 Yahan Zhou <yahan@google.com> Misc fix in gralloc pipe

Fix size and have a confirmation message in gralloc pipe. Also fix the
naming of puid.

Change-Id: I0b87b9e6bcf88172792705ac9643e150b227be96
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
c89acb2bba87338ee8ebc6db329462d8bc167e71 11-Jul-2016 Yahan Zhou <yahan@google.com> Create pre-process gralloc pipe on the guest

https://buganizer.corp.google.com/issues/29457657

This patch create a pre-process pipe in gralloc. It tells the host which
process holds which color buffer, so that on process exit the host can
correctly reduce the reference counters of all gralloc color buffers.

Each process will get a 64bit identifier from the host, to help the host
identifying it.

It works with host patch:
https://android-review.googlesource.com/#/c/246823/

Change-Id: I8d9a512a1f151f4f29a3b318ccf17d62d8f46512
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
b7f09089a7f736a070825d7130601d74b150d147 10-Mar-2016 Yahan Zhou <yahan@google.com> Checksum for GL pipe communication

This is the guest side implementation for cl go/oag/c/207292.

It initializes checksum whenever a renderControl is created. Each
HostConnection owns a checksum structure.

The list contains mostly auto-generated code by emugen.

Change-Id: I5f7bb9ec8a0cea82f3687f8a15839081651fd841
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
21838e46658d5113752bc15e354100eecd54469e 23-Nov-2015 Nicolas Capens <capn@google.com> Create client object EGL images.

Call the host-side eglCreateImageKHR() implementation to create EGL
images from client objects (e.g. textures).

Bug 24517776

Change-Id: I9bea7cfad700d601d3b747576f903ece7789e7d9
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
e01d5f47354d9e5cd63ae584daadc5076850851b 30-Oct-2014 David 'Digit' Turner <digit@google.com> opengl: Remove compiler warnings.

Simply remove multiple compiler warnings about unused parameter.
Note that this modifies three auto-generated files, which will
require fixing the 'emugen' program in the future.

Change-Id: I19edce7c6480770b893d033ed6b1c65744091d62
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
3afd44bdb52af3b26b2691e5f0164c16f2936e90 30-Oct-2014 David 'Digit' Turner <digit@google.com> opengl: Remove accessor functions from encoders.

These functions are not necessary since all the fields are
public members of structures. Also gets us closer to the state
of the real emugen output, which isn't matched yet due to other
differences.

Change-Id: Iea092beca7e3a819c286fe3d84897e6a170747f8
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
052c3f1b0afd6606a76f93a651c9c6bfd9d1fc89 27-May-2014 Jesse Hall <jessehall@google.com> opengl: rcOpenColorBuffer must be synchronous

The gralloc register_buffer() function, which calls rcOpenColorBuffer,
must actually increment the reference count before returning.
Otherwise the buffer allocator may release its reference before the
client has obtained one, and the buffer will be freed prematurely.
Since rcOpenColorBuffer was just sending a message to the host without
waiting for it to be received/processed, this guarantee was not met.
Adding a return value makes the call synchronous.

Bug: 12988668
Change-Id: I8b2399cfb0f600f99b3387f630343291b59bc9a6
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h
b85b2756d1e247f8314bb591700fb175d7346631 08-Mar-2013 keunyoung <keunyoung@google.com> migrate opengl and system from development/tools

- components under system are moved one directory up like all other HALs

Change-Id: I03b870b870d83b247ac398cadfb155f03c9adfa0
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_context.h