History log of /device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_proc.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
93128771111f69a6fb43eb71e28ec0dfaf93fd0d 23-Jan-2017 Lingfeng Yang <lfy@google.com> [VR] EGL_KHR_wait_sync

Requires native sync v3 from the host.

Change-Id: Ia58351e1a4984afcb0fd2bf8d928cec567bb70e2
/device/generic/goldfish-opengl/system/renderControl_enc/renderControl_client_proc.h
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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.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_proc.h
e7fce1103c9587fe1f56a4fd63757ef874285130 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_proc.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_proc.h