Commit Graph

580 Commits

Author SHA1 Message Date
zhangweiwei
d21dd860ce Camera: Vts: Fix missing session close
Test: vendor testing, Camera VTS on Pixel
Bug:135898951
Change-Id: I61f5a90d62732a00d0bc9abad05db0a1a9cc2b63
2019-07-08 08:45:18 -07:00
Emilian Peev
fd4ce7e76a Camera: VTS: Don't access invalid resources
There is no guarantee that the static metadata
pointer passed in the "DeviceCb" contructor will
be valid after the call completes.  The device
callback instance is expected to be active until
the camera session is open. Clone the required
metadata in "DeviceCb" and manage the lifetime
appropriately by using the "CameraMetadata"
wrapper.

Bug: 135976837
Test: CameraHidlTest#processCaptureRequestPreview
Change-Id: Idd3c6c8c2e5a3fc44a49712e25a04009cbd471b1
2019-06-28 17:03:12 +00:00
TreeHugger Robot
d4686a1a06 Merge "Camera: VTS: Allow unsupported logical/physical combination" into qt-dev 2019-06-26 15:42:57 +00:00
Shuzhen Wang
fa2a909836 Camera: VTS: Allow unsupported logical/physical combination
Multi-camera API requirement is relaxed to allow camera device not
support physical stream combinations. Adjust the test accordingly.

Test: processMultiCaptureRequestPreview
Bug: 135688720
Bug: 135728906
Change-Id: I8c5269c5d3fd7f6eef440c818706629af2233196
2019-06-24 11:30:00 -07:00
TreeHugger Robot
981693f6ff Merge "Camera: fix unknown bufId issue" into qt-dev 2019-06-19 23:03:53 +00:00
Yin-Chia Yeh
aba88c6cbc Camera: fix unknown bufId issue
It's legit to have bufId 0 in processCaptureResult with HAL buffer
manager, but not for returnStreamBuffers.

Test: the failed test can now pass
Bug: 135565913
Change-Id: I05947bc159bb9ba00a670b98d4622f685b4ac760
2019-06-19 11:51:48 -07:00
Shuzhen Wang
22f6dcec7e Camera: Use original dataspace/format for 3.5 device
Starting from CameraDeviceSession 3.5, for IMPLEMENTATION_DEFINED pixel
format, configureStreams call uses original format and dataspace instead
of the overridden value.

This makes sure the HAL interface behavior is consistent between first
and subsequent processCaptureRequest() calls.

Test: Camera CTS and partner testing
Bug: 131864007
Change-Id: Id701141d2c11089ef063fd3f32444212855f84ab
2019-06-06 07:50:50 -07:00
TreeHugger Robot
057de3759f Merge "Camera: Add support for IMapper 3.0" into qt-dev 2019-05-21 04:35:47 +00:00
Shuzhen Wang
0c6f8b6859 Camera: Fix remaining OWNER file include
Bug: 133188173
Test: None
Change-Id: I2da75bf9a7480974b3ca1c6eea52a58b46b0cc97
2019-05-20 17:30:40 -07:00
TreeHugger Robot
e4be4c9765 Merge "Camera: Allow out-of-order ZSL shutter notify" into qt-dev 2019-05-17 21:20:43 +00:00
Shuzhen Wang
915115e381 Camera: Add support for IMapper 3.0
Use IMapper 3.0 if available. Otherwise, fall back to IMapper 2.0.

Test: Update camera VTS test passes
Bug: 128013727
Change-Id: I9bb54bbc290f1b90ef593dee9796b22b0dd49671
2019-05-14 10:39:25 -07:00
Emilian Peev
5ec377b430 Camera: Add fall back properties for FMQ size override
All system properties in the vendor partition must
start with either "vendor" or "ro.vendor".
Older devices should not be affected but newer
implementations may not be able to override the
FMQ size if needed.
Keep this functionality and provide fall back
properties using "ro.vendor.camera".

Bug: 77865891
Test: Manual using application and modified device configuration.
Change-Id: I23d0ba7a10eaafe98a708277c26579e8a0fec614
2019-05-09 17:13:08 -07:00
Shuzhen Wang
098720bc2c Camera: Allow out-of-order ZSL shutter notify
- Allow shutter notifies of zero-shutter-lag requests with STILL_CAPTURE
intent to be out of order compared to other kinds of requests.
- Shutter notifies of same kind of requests must be in order.

Test: BurstJpegCapture CTS test
Bug: 120604717
Change-Id: Ia31f0d17322cb9b850614413feb1134e16d69552
2019-04-29 14:18:55 -07:00
Yin-Chia Yeh
0d540b3e75 External Camera: support less thumbnail sizes
Since larger thumbnail sizes might hit the app1 size limit
of 64KB.

Test: camera CTS
Bug: 119775355
Change-Id: I9d8d21ac0784c53b42c536cfa09a8c40c4f15ea0
2019-04-25 14:55:22 -07:00
TreeHugger Robot
7ffb10cd86 Merge "Camera: require torch API support for Android Q" into qt-dev 2019-04-11 22:04:52 +00:00
Yin-Chia Yeh
51ea7c984b Camera: require torch API support for Android Q
Torch API was mandated on legacy libhardware camera module 2.4.
We kept the option of not supporting this API because the first
HIDL legacy wrapper needs to also support libhardware camera
module 1.0 + HAL1.0. Now that HAL 1.0 is no longer supported,
we can reenforce the torch API being supported by camera HAL as
this is critical to power usage of flashlight usecase.

Test: adb shell VtsHalCameraProviderV2_4TargetTest
--hal_service_instance=android.hardware.camera.provider@2.4::ICameraProvider/legacy/0
Bug: 113336515

Change-Id: I0dcf2e7a5cddadcd097caf6913625d8a607065f8
2019-04-11 10:35:17 -07:00
Jayant Chowdhary
80bed174b2 Merge "Allow android.hardware.camera.common@1.0-helper to access vendor tags" into qt-dev 2019-04-05 16:39:16 +00:00
Jayant Chowdhary
661f4410f4 Allow android.hardware.camera.common@1.0-helper to access vendor tags
This allows vendor camera clients to access provider specific vendor
tags. No expected behavior changes to camera HAL process(es).

Also fixes OWNERS file.

Bug: 129688550

Test: AImageReaderTest modified to set a vendor tag in CaptureRequest
Test: Take still pictures / record video (sanity)
Test: camera CTS tests

Change-Id: I18b678e7e0db7f1b29c3de0b762cb65e25842fa8
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
2019-04-04 14:24:06 -07:00
Emilian Peev
5874bba486 Camera: Avoid using an uninitialized physical camera id
'mStreamMap' entries can be inserted by several versions
of HIDL API calls. If the fields are initialized by an
older version, then make sure that newer additions are
always initialized in the respective API method.

Bug: 73885805
Test:
adb shell
/data/nativetest64/VtsHalCameraProviderV2_4TargetTest/VtsHalCameraProviderV2_4TargetTest
--hal_service_instance=android.hardware.camera.provider@2.4::ICameraProvider/legacy/0

Change-Id: Ib5bd8f608da05f628c52d288c518cebbe964182b
2019-04-04 13:27:09 -07:00
Emilian Peev
70eae1d3f0 Camera: Set buffer request stream id
Additionally fix a possible issue with the buffer request index
and variable shadowing.

Bug: 129090247
Test: adb shell
/data/nativetest64/VtsHalCameraProviderV2_4TargetTest/VtsHalCameraProviderV2_4TargetTest
--hal_service_instance=android.hardware.camera.provider@2.4::ICameraProvider/legacy/0

Change-Id: I34ab0285e59233c1b6d276f9167372ef3b0bbd0b
2019-04-04 13:22:25 -07:00
TreeHugger Robot
e7aeb819f8 Merge "Camera: Update VTS test for revised multi-camera requirement" 2019-04-03 00:06:55 +00:00
Emilian Peev
22ba924404 Camera: Update 'ERROR_RESULT' documentation
Extend "ERROR_RESULT" documentation and describe how Hal
must notify about physical device result failures and
logical device result failures.

Bug: 128835627
Test: Successful build
Change-Id: Iac5642f333634d9cc820eb727f8ff3534a47a583
2019-03-28 10:04:31 -07:00
Shuzhen Wang
7788df304e Camera: Update VTS test for revised multi-camera requirement
Test to make sure logical multi-camera device support
isStreamCombinationSupported() for 3.5 and above devices.

Test: VtsHalCameraProviderV2_4TargetTest
Bug: 119325664
Change-Id: I734278799f10ed215ceb5dd108ac7f722f7f7925
2019-03-21 17:32:21 -07:00
TreeHugger Robot
469b3ac3d4 Merge "Camera: Add recommended low latency use case id" 2019-03-18 22:02:53 +00:00
TreeHugger Robot
9cc43c58a4 Merge "Camera: cleanup external camera HAL fence FD logic" 2019-03-15 18:17:50 +00:00
TreeHugger Robot
cccae8396b Merge "Y16 format enablement for external provider" 2019-03-15 01:23:16 +00:00
Yin-Chia Yeh
965d9dd821 Camera: cleanup external camera HAL fence FD logic
Treat all non-negative integers as valid FD.

Test: webcam smoke test
Bug: N/A
Change-Id: I5fd52c0d195d2d4b63d70d66f10bd2a3ea99985c
2019-03-14 14:21:01 -07:00
Emil Jahshan
eed0040e21 Y16 format enablement for external provider
added Y16 (depth) support for the external provider.
refactored initOutputCharsKeys to support both depth and color metadata according to the connected camera.
the VTS changes will be pushed to pie-vts-dev

Test: tested on intel depth camera D415 manually in addition to the VTS tests.

Change-Id: I358686e7c4330bb180dec4a9cce3bc1cf5475260
Signed-off-by: Emil Jahshan <emil.jahshan@intel.com>
2019-03-14 14:06:17 -07:00
Steven Moreland
785f27e892 Merge "Remove import comment on camera metadata HAL." 2019-03-14 20:42:37 +00:00
Eino-Ville Talvala
ee2fb713b7 Merge "Camera: Centralize OWNERS" 2019-03-14 17:13:47 +00:00
Eino-Ville Talvala
d1ce4e664a Camera: Centralize OWNERS
Test: Builds
Change-Id: I9b8d1675566db44b959c633c25ceaf61a6dc08db
2019-03-13 15:15:45 -07:00
Steven Moreland
f8230e060c Remove import comment on camera metadata HAL.
No good place in generated docs.

Bug: 124382459
Test: ./update-makefiles.sh
Change-Id: I7802d12c34b33be192c83fc46ffed5a6a7385a0a
2019-03-12 19:34:15 -07:00
Emilian Peev
7549141c38 Camera: Add recommended low latency use case id
One extra recommended id must be present for low latency
snapshot use cases.

Bug: 128450197
Test: vts-tradefed run commandAndExit vts --skip-all-system-status-check
--skip-preconditions --module VtsHalCameraProviderV2_4Target -l INFO

Change-Id: I259fec5157f1190c485a373dcaa500d02c0389be
2019-03-12 18:10:31 -07:00
Yin-Chia Yeh
c2707ebcc7 resolve merge conflicts of 00236ffa71 to master
Bug: None
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I07e452ffd8dbe4492489d47459eb3662c76b78dd
2019-03-12 15:32:31 -07:00
Emil Jahshan
00236ffa71 Merge "VTS tests to work with depth Y16" into pie-vts-dev am: 0e802961e2
am: cbeda28395

Change-Id: Iac2b34c3ede77f1919ddce045a92f70991ae26e9
2019-03-12 14:43:32 -07:00
Emil Jahshan
cbeda28395 Merge "VTS tests to work with depth Y16" into pie-vts-dev
am: 0e802961e2

Change-Id: I0a42e16b82c60c0c36e1809b9839b73226b22660
2019-03-12 14:39:33 -07:00
TreeHugger Robot
2dfd5ccb18 Merge "Camera: Make availablePhysicalRequestKeys ndk public" 2019-03-08 00:24:10 +00:00
TreeHugger Robot
a3f6d38187 Merge "Camera: fill in num_output_buffers" 2019-03-06 19:52:18 +00:00
Shuzhen Wang
f09054c174 Camera: Make availablePhysicalRequestKeys ndk public
Test: camera ndk CTS
Bug: 115532726
Change-Id: I6a0e6c8bc14e68bddcd0a5617a706b16520ff871
2019-03-06 02:22:01 +00:00
Yin-Chia Yeh
0388c2bc1c Camera: fill in num_output_buffers
And also assert fence import should never fail.

Test: none
Bug: 125472550
Change-Id: Ib9bcc0234108ed0c752d5245d75fca6972e0c8ed
2019-03-05 15:29:39 -08:00
Steven Moreland
87f43604b9 Merge "Update makefies: no 'types' internal" 2019-03-05 17:40:03 +00:00
Steven Moreland
7f4e21adda Merge "Update makefies: no 'types'" am: 4ee5ec1469 am: bab622f6a6
am: 7224bc9bcf

Change-Id: I434939e0770afa436c532a945542fce30a71ef7d
2019-03-04 16:05:59 -08:00
Steven Moreland
b91ac5c6a0 Update makefies: no 'types' internal
Bug: 123976090
Test: N/A
Change-Id: I84b659b163b63d39535b462a3df8a9c19f680976
2019-03-04 14:09:25 -08:00
Steven Moreland
a878aee9ab Update makefies: no 'types'
Bug: 123976090
Test: N/A
Change-Id: I30fb04c81889b62775e1b764b965fdb0f893de17
2019-03-04 11:27:17 -08:00
Emil Jahshan
b8524954e6 VTS tests to work with depth Y16
modified VTS tests functions to work with the Y16 format with the correct dataspace.
Y16 changes are in this patch: 847192

Test: ran and tested on intel depth camera D415 and a regular RGB camera

Change-Id: Ie40347d58d4f72ed2fc9676bdaab2d1dca5dc5bc
Signed-off-by: Emil Jahshan <emil.jahshan@intel.com>
2019-02-24 09:40:24 +00:00
Shuzhen Wang
2f06e17122 Camera: Document bufferSize for JPEG_APP_SEGMENTS stream
Doc update to clarify that @3.4::Stream::bufferSize is updated by camera
framework.

Test: Build
Bug: 124999074
Change-Id: I818f75eabd613cc5f6d9b7e73b2b1a894b511afe
2019-02-20 16:23:31 -08:00
Yin-Chia Yeh
9e3079b0de Camera: remove stream_configuration_counter from camera3.h
Handle the race issue in the wrapper HAL instead of letting HAL
implementation handing it.

Test: Pixel 3 + camera CTS + GCA
Bug: 120986771
Change-Id: Iff97fcaa969bea6668679c57642e4322c4ca5c19
2019-02-14 14:18:01 -08:00
Yin-Chia Yeh
71e6298ea6 Camera: fix per stream error code for HAL buffer manager
Also some refactoring to make the code more readable and less
indent.
Also clarify the unknown error case that per stream error code
might still be provided.

Test: GCA smoke test and camera CTS
Bug: 120986771
Change-Id: I3b7d3eadfe3895a3fdf3888735a3932d5c6c03bc
2019-02-14 14:17:33 -08:00
Emilian Peev
332467b8bf Merge "Camera: Enable session parameter reconfiguration queries" 2019-02-13 21:54:22 +00:00
Emilian Peev
22eac5f667 Camera: Enable session parameter reconfiguration queries
Check with Hal whether stream reconfiguration is required
in case of session parameter updates.

Bug: 122609098
Test: Manual using application,
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--skip-preconditions --module VtsHalCameraProviderV2_4Target -l INFO
Change-Id: Ic02525871aa079393b28b2da53764093f95f881d
2019-02-12 14:54:00 -08:00