Add libVtsHalGraphicsAllocatorUtils which provides a wrapper to
IAllocator. Port tests to be based on
libVtsHalGraphicsAllocatorUtils.
Test: manual
Change-Id: I6d56160dc4fa6e5106cc55e75cdd923f15635317
The getService() and registerAsService() methods of interface objects
now have default parameters of "default" for the service name. HALs
will not have to use any service name unless they want to register
more than one service.
Test: builds
Bug: 33844934
Change-Id: Ic3859ccf21e7ee5177f47cb06e3e0c93dd572bf6
We need google shims on the vendor partition because they are providing
an implementation of a vendor defined interface. They were written by
google just as a courtesy/to make the transition easier. They're
basically a set for vendors to assemble their hal implementations
from.
Bug: 34135607
Test: marlin persist.hal.binderization on/off
Change-Id: I2e2af5af39264cf290259755bb9b2eb9827a21f5
* Updated the corresponding .vts file to match the latest .hal file.
Test: make android.hardware.graphics.allocator.vts.driver@2.0
make android.hardware.graphics.allocator@2.0-IAllocator-vts.profiler
make android.hardware.graphics.allocator@2.0-IAllocatorClient-vts.profiler
Change-Id: Ibf0fdf976a01015cca9cea71a6f25fc513d22d94
Rewrite libgralloc1-adapter to be based on Gralloc1On0Adapter.
Previously, the adapter targeted maximum portability and maximum
performance. The rewritten adapter targets ease of use instead.
This also fixes a bug in the adapter's GRALLOC1_FUNCTION_RELEASE. The
function does not imply native_handle_close/native_handle_delete. As a
result, IMapper and IComposer are also fixed to close/delete handles.
Test: builds and boots
Change-Id: I5c071453dc950583087ae07967bca2c22866c538
Pointers are preferred for output parameters in graphics code. While at
it, initialize local variables that are for outputs.
Test: builds and boots
Change-Id: I959706ea92949bc2f993ee9beff0c8b0c3121347
Introduce IAllocatorClient to manage resources owned by a client (e.g., SF
or VTS). This makes sure there is no resource leak when SF or VTS
crashes.
This also fixes two unrelated bugs
- sizeof(Buffer) != sizeof(void*) on 32-bit impl.
- layerCount was not set to 1 in tests
Test: builds and boots
Change-Id: I67f5cdd64b97fb3ce1b931099c25f59cc8517f21
Remove duplicated types from allocator@2.0 and composer@2.1. Those types
are now in common@1.0.
Bug: 32238126
Test: builds and boots
Change-Id: Ibdb907e47969f5a5a98a14a2e2b77a9c5880beff
To allow genrules with more than one tool, rename the tool property to
tools and make it an array, replace $tool with $(location <label>),
and use $() for other variables for consistency.
Bug: 31948427
Test: compare build.ninja
Change-Id: I3d714f70a2af0dc60faeee10e09b6ed166601f1d
The default implementatoin is built on top of conventional gralloc1.
This also adds a static library, libgralloc1-adapter. It is intended to
ease the porting of gralloc0 to gralloc1.
Test: booted to launcher, tested with YouTube and some games.
Change-Id: Id640b1d5a1e1eea1aafabb6c134e6be6e71afff5