Otherwise some bits will be set incorrectly.
Also move device@1.0 to use ProducerUsageFlags instead of ProducerUsage,
and add a compatibility workaround to set the gralloc0 HW_CAMERA_ZSL flags
when ConsumerUsage::CAMERA is passed in.
Test: Camera CTS passes, updated VTS tests pass
Bug: 35215313
Change-Id: I981dc1a650f838f94d932944fe835fd267f2004d
Specify the HAL behavior when stream usage flag is combination for
multiple consumers.
Test: Compile
Bug: 33777818
Change-Id: I97e7bcc79ee36a395210c7cf8deefc4f175d3e07
Currently only batching high speed recording request/results.
Test: GCA slow motion recording working
Bug: 34899394
Change-Id: Id83b9d1cefe011391c86a5e7e898262a169cc9e7
Now cameraservice only sends one shutter notify and capture result to
the application per batch. Update the HAL interface doc to reflect this.
Test: Compiles
Bug: 35775704
Change-Id: I3a7967f0342213699989c70f485b379ccb94a1ff
In order to make generic system image, these HAL implementation need to
be moved from system to vendor partition.
Bug: 36043196
Test: make, flash and make sure that they are at /vendor/lib[64]/hw.
Change-Id: I486cd32c36143102b3923acc58fda4f8aec30cb1
Also some updates to HIDL interface:
- Add releaseRecordingFrameHandle to ICameraDevice
for native handle metadata recording mode
- Add handleCallbackTimestamp to ICameraDevieCallback
for native handle metadata recording mode
- Add missing face detection metadata to
ICameraDeviceCallback::dataCallback
- Instead of passing native handle, pass buffer ID
in dequeueBuffer/enqueueBuffer/cancelBuffer in
ICameraDevicePreviewCallback
- Add CameraFrameMetadata in types.hal for face
metadata
Test: Camera CTS passing (except FlashLightTest) on Angler
Bug: 30985004
Change-Id: Idf72a4b5f4c934845ac698f0b13536608ffd0100
This fixes a perf/feature regression from the legacy HAL definitions;
previously, vendor implementations could use custom values with this
field to implement custom features on their devices.
Add several enum values that can be used for this purpose.
Test: New CTS test passes
Bug: 34853980
Change-Id: I1b37a9511326178b8eb7536ff99e14d83be3b0c2
Native buffer handles should always get closed
and deleted during buffer release.
BUG: 35338606
Test: Manual using application
Change-Id: I5d7a4b02a28b29b872b66843d623166f04207c2e
The stream resources will be released by Hal most
likely only in cases of successful configuration.
If the configuration fails keep the deleted streams
for the next call.
BUG: 34131351
Test: 'CameraTest' API1 tests using Hal3.x and ZSL
Change-Id: I68696d561258571727b35b52ff326aac27edaad3
No longer needed. This also enable us to switch to
defaultPassthroughImplementation.
Also rename camera device wrapper library to signal it's not a
top level HAL entry.
Test: marlin camera app with passthrough/binderzied mode
Bug: 34817742
Change-Id: I78ad5afbf78b2679be3efe0e82f430958ef6bfea
This will introduce one more FD dup/close in passthrough mode, but
we have no other choice as camera server will not know whether
it is running in passthrough or binderized mode.
Test: running Camera2 API CTS
Bug: 30985004
Change-Id: I407d54a51c51fc09477dfb6236ab1b53bb1e0a21
This gives each buffer a unique identifier and allow camera server
to only send one unique to HAL process once.
Bug: 30985004
Change-Id: I6aff498c5667dd71fd70b3881fd60b0ecc366e0a
Right now conventional HAL close the acquire_fence FD so wrapper
should not close it again. However, we might need to change this
behavior later to make camera service agnostic to passthrough or
binderized mode.
Bug: 34169301
Change-Id: I96b46521e4081b43e7a7e9c9efa98121739dda99
Bug fixes like deadlock resolution, wrong enum usage etc.
Bug: 30985004
Test: run Camera2 API CTS tests on Angler
Change-Id: I661fa9197f66344ddecca8f68d343c891806eca1
Supports legacy camera HAL modules; also exports ICameraDevice
instances.
Test: compile
Bug: 30985004
Change-Id: I2b9624a412de95dd43979a5e6650b170010c577a
- Clarify handling of input/output buffer handles, and
that they must be null in CaptureResults.
- Clarify handling of fence handles and when they may/must be null.
Test: Compiles; comment-only changes
Bug: 32991603
Change-Id: I70367aa490fb0027791e6e35bb34c54601a0d144
- All usage fields should be bitfields, as should dataspace.
- Remove Stream::maxBuffers. It was accidentally duplicated in the inbound
stream configuration; it's only meant to be set by the HAL in the
output HalStream structures.
- Clarify overrideFormat and usage field documentation.
Test: Compiles
Bug: 32991603
Change-Id: Iac922b439fafc6726ebb6cea5bc0b3dd8921bfa8
* Common camera definitions (camera.common/1.0)
* Basic status codes, shared types
* Provider 2.4 API (camera.provider/2.4), including vendor tag APIs
* Enumerate and acquire camera device instances
* Mostly equivalent to legacy camera module v2.4.
* Device 1.0 API (camera.device/1.0)
* Mostly equivalent to legacy camera HAL v1.0.
* Device 3.2 API (camera.device/3.2)
* Mostly equivalent to legacy camera HAL v3.2.
* Metadata 3.2 API (camera.metadata/3.2)
* Definitions for valid metadata fields for device 3.2
Only the key initial interfaces are added; default implementations are
in a later CL. Other interfaces that will likely need to be added:
* Other provider minor versions
* Other device 3.x minor versions
Test: make -j32
Bug: 30985004
Bug: 32991603
Change-Id: I1c6a9a269bf45276055707bbc58cfc50d29fa919