Commit graph

123 commits

Author SHA1 Message Date
Yin-Chia Yeh
feddd45722 Merge "Camera: use gralloc mapper for handle import" into oc-dev am: 02b745ff40
am: 8c0e9f19b2

Change-Id: Ie14587977306c05f1458cb47b6cc2d5c3f152f39
2017-04-28 02:16:01 +00:00
Emilian Peev
e7b05b0037 Merge changes from topic 'device_version_cleanup' into oc-dev am: 3176e6ebb9
am: 5649a3df94

Change-Id: I51b149bbec59f6e5bd7c9e8c865796a6a9ae96ad
2017-04-28 00:53:07 +00:00
Emilian Peev
c979af7610 Camera: Insert default RAW boost if needed am: a13ac99f34
am: 0c0270041a

Change-Id: Ifb5b24b52bdc7781cb7b09a81435819cc6de081f
2017-04-28 00:53:05 +00:00
Emilian Peev
137f358c4f Camera: Override AE pre-capture trigger cancel am: cf5813702a
am: 2743c517f4

Change-Id: I4a52db4651641436d46a69fc311ed7be325c3522
2017-04-28 00:53:01 +00:00
Emilian Peev
1f7a228253 Camera: Map stream dataspaces am: 7d52a6fd25
am: 1b3d4f1574

Change-Id: I84e72cf54948edb2505c9e83127c3d48ac132395
2017-04-28 00:52:58 +00:00
TreeHugger Robot
02b745ff40 Merge "Camera: use gralloc mapper for handle import" into oc-dev 2017-04-27 23:00:50 +00:00
Yin-Chia Yeh
519c1675c3 Camera: use gralloc mapper for handle import
Bug: 37540361
Test: marlin, smoke test GCA
Change-Id: I9d58d9c6af20b37c016f036bce2dcf55817c59aa
2017-04-27 14:11:07 -07:00
Emilian Peev
c9ded51848 CameraProvider: Check camera device version
Make sure we are working with supported devices.

Bug: 34392075
Test: Manual using application
Change-Id: I834612303f3e02e79924efbdcc25cff890defefb
2017-04-25 20:05:41 +01:00
Emilian Peev
a13ac99f34 Camera: Insert default RAW boost if needed
RAW boost key inside result and request metadata could be
absent depending on CameraHal. In case RAW boost range is
supported, the RAW boost value must always be present.

Bug: 34392075
Test: runtest -x
cts/tests/camera/src/android/hardware/camera2/cts/DngCreatorTest.java
Change-Id: I4c27b3fe5228ff604e3f2796abc670be5c17da67
2017-04-25 20:04:25 +01:00
Emilian Peev
cf5813702a Camera: Override AE pre-capture trigger cancel
CameraHal version 3.2 doesn't support cancel AE pre-capture
trigger. Camera request metadata that contains this value
needs to be overriden respectively. The corresponding results
also require the same kind of modification.

Bug: 34392075
Test: runtest -x
cts/tests/camera/src/android/hardware/camera2/cts/StillCaptureTest.java
-m testAePrecaptureTriggerCancelJpegCapture
Change-Id: If8bcf7e97ca8691cf890d5d6306d49dc3ddd087a
2017-04-25 20:04:19 +01:00
Emilian Peev
7d52a6fd25 Camera: Map stream dataspaces
Older CameraHal versions are still using deprecated dataspace
definitions. Mapping between these dataspaces is needed to avoid
discrepancies.

Bug: 34392075
Test: Manual using camera application
Change-Id: I811dec879494445736b4e3731b2d516e396a9058
2017-04-25 20:04:12 +01:00
Chris Forbes
88e89ef467 Merge changes from topic 'o-usage64-2' into oc-dev am: 441c1cb7d7
am: d350340340

Change-Id: I68fb3ba765ce0d55231e149a8b6a51fd42a19088
2017-04-25 04:27:24 +00:00
Chris Forbes
58a80300aa camera: Adjust for libui gralloc flags change
Change-Id: Ia09737c28a78a8a50a9f751ed2774299ecc3d58c
Bug: b/33350696
Test: Bullhead: booted to launcher, take photo, watch youtube
2017-04-21 17:32:37 +00:00
Yifan Hong
8404699f6c Merge "Use fmq for camera capture result." into oc-dev am: 939c906a4f
am: d054c0ad65

Change-Id: Ic9da21e6e2c624625b7beb2e9b36b3e132378f58
2017-04-15 00:12:41 +00:00
Yifan Hong
993e3d0286 Use fmq for camera capture result.
Test: camera works.

Bug: 35788245 [Treble] Pass camera metadata using shared memory

Change-Id: Ia8ba8ac4c8f7d1a89035f549c0281a30190554bb
2017-04-14 14:28:48 -07:00
Yifan Hong
d0f210a559 Merge "Use fmq for camera capture request." into oc-dev am: 84deaeb4f9
am: bb43d5e297

Change-Id: I835b102791fbcc0553247dab7f9147eb3346def1
2017-04-14 02:55:26 +00:00
TreeHugger Robot
8afd952d48 Merge "Changed the naming scheme for Treble java libraries (both static and dynamic)" into oc-dev 2017-04-14 02:13:28 +00:00
Andreas Huber
6fa374ad30 Changed the naming scheme for Treble java libraries (both static and dynamic)
android.hardware.foo@1.0-java => android.hardware.foo-V1.0-java

Bug: 37207894
Test: make
Change-Id: I177f4cfd42f635aaf096107af8309d1a82ed41c0
Merged-In: I8b91881dfaf507c0d852d56ebbb53ff0987e5a34
2017-04-13 15:23:46 -07:00
Andreas Huber
e6e54801c1 Changed the naming scheme for Treble java libraries (both static and dynamic)
android.hardware.foo@1.0-java => android.hardware.foo-V1.0-java

Bug: 37207894
Test: make
Change-Id: I8b91881dfaf507c0d852d56ebbb53ff0987e5a34
2017-04-13 14:28:05 -07:00
Yifan Hong
1192e1d109 Use fmq for camera capture request.
Test: camera works.

Bug: 35788245 [Treble] Pass camera metadata using shared memory
Change-Id: I4a1585315bf448c8c57def2964237cae21bdbe03
2017-04-13 13:25:29 -07:00
Trevor Bunker
e6bc672921 Revert "android.hardware.camera.provider@2.4: set up /dev/vndbinder"
This reverts commit b4488af17c.

Bug: 37302783
Bug: 37301743
Test: device boots to UI
Change-Id: I184ccb02c2dc188a7ff8ebb6256b2f6e72376758
2017-04-13 09:52:23 -07:00
TreeHugger Robot
f8b85e63e4 Merge "android.hardware.camera.common@1.0-helper: vendor" into oc-dev 2017-04-13 04:12:12 +00:00
Iliyan Malchev
b4488af17c android.hardware.camera.provider@2.4: set up /dev/vndbinder
The camera-HAL implementation may need to communicate with other vendor
components over /dev/vndbinder.  Route all libbinder traffic to that
node.

b/36651814
b/36651237
b/35870313
b/36683636

Test: sailfish

Change-Id: I9b80fefbcdf5ce18a2d788e8582ea8791a604435
Signed-off-by: Iliyan Malchev <malchev@google.com>
2017-04-13 00:24:39 +00:00
Steven Moreland
7d774e7937 android.hardware.camera.common@1.0-helper: vendor
Test: links/camera works
Bug: 33241851
Change-Id: I5bb846fabca29b789692fe8c253383fd821b8ba6
2017-04-11 20:58:31 -07:00
Steven Moreland
3b36a83a2e Update makefiles (2/2).
Test: pass
Change-Id: Ic7e6289c7b69785491708ce0acbb657f4c704229
2017-04-11 09:58:03 -07:00
Chia-I Wu
79d13ff0f5 graphics: revise gralloc interfaces
Revise IAllocator and IMapper to reduce IPC and to support gralloc0
devices.

Specifically, IAllocator is trimmed down to have essentially only

    allocate(BufferDescriptor descriptor, uint32_t count)
        generates (Error error,
                   uint32_t stride,
                   vec<handle> buffers);

The ability to allocate buffers with shared backing store is
removed.  ProducerUsage and ConsumerUsage are moved to the
graphics.common package and are merged and renamed to BufferUsage.
BufferUsage's bits follow gralloc0.

IMapper gains

    typedef vec<uint32_t> BufferDescriptor;
    createDescriptor(BufferDescriptorInfo descriptorInfo)
          generates (Error error,
                     BufferDescriptor descriptor);

where BufferDescriptor is an implementation-defined blob.  lockFlex
is replaced by lockYCbCr.  All getters are removed.

Reference counting with retain/release is replaced by
importBuffer/freeBuffer.

Most if not all gralloc1 features are not used by the runtime yet.
There is also not too much test written for them.  As such, they
tend to behave differently between implementations and cannot be
used reliably.

Bug: 36481301
Test: builds and boots on Pixel
Change-Id: I1d31105120517ea2c128c7a19297acf3bfd312bb
2017-04-10 11:15:54 -07:00
Steven Moreland
4e7a307730 Fix transitive includes.
Files relying on transitive include of utils/Log.h (and things that it
includes) from MQDescriptor.h

Test: pass
Merged-In: Iff316b21bef556bb026378b7f89e97ded3febef4
Change-Id: Iff316b21bef556bb026378b7f89e97ded3febef4
2017-04-06 22:04:05 +00:00
Greg Hartman
7b63265377 Merge "CameraProvider: Refactor legacy name regex code" into oc-dev 2017-04-05 22:20:21 +00:00
Andreas Gampe
0b171f1ff2 CameraProvider: Refactor legacy name regex code
The match will use iterators that will be invalidated when the
used string input goes out of scope. Refactor the API to return
the two components of the match.

Bug: 36871785
Test: m && m SANITIZE_TARGET=address
Change-Id: I2418541234a09e53856ea61e0fbc4b67d8036308
2017-04-05 10:34:04 -07:00
Yin-Chia Yeh
ae880e4922 Merge "Revert "camera: Map between legacy gralloc0 usage, and HIDL gralloc1 usages"" into oc-dev 2017-04-04 22:22:03 +00:00
Yin-Chia Yeh
c25c54f4b1 Revert "camera: Map between legacy gralloc0 usage, and HIDL gralloc1 usages"
This reverts commit 2d80c0d66f.

Test: fix b/36876770
Bug: b/36876770
Change-Id: Ia251ec97273d71fd5bc759aa1161960f6266358a
2017-04-04 13:19:09 -07:00
TreeHugger Robot
73bae67b5d Merge "Camera: HAL1: remove libbinder usage" into oc-dev 2017-04-04 19:24:26 +00:00
TreeHugger Robot
2fc995846c Merge "Camera: add interface to evict obsolete buffer caches" into oc-dev 2017-04-04 00:31:01 +00:00
Eino-Ville Talvala
4cea813a35 Merge "camera: Map between legacy gralloc0 usage, and HIDL gralloc1 usages" into oc-dev 2017-04-03 22:03:15 +00:00
Yin-Chia Yeh
28eebbfc41 Camera: add interface to evict obsolete buffer caches
Test: fix CTS ReprocessCaptureTest
Bug: 34461678
Change-Id: Icde654b0c8423c31d7d39d180913ffa374e7de3c
2017-04-03 14:41:23 -07:00
Yin-Chia Yeh
12b364bf8a Camera: HAL1: remove libbinder usage
Test: Angler HAL1 preview/takePicture/record
Bug: 35887419
Change-Id: I6cb37fd78a2fad1ee3b24e4cd61e3a3b2bce4744
2017-04-01 13:19:46 -07:00
Yin-Chia Yeh
1ba83a9a28 Camera: add HAL1 recording batching support
Test: Angler HAL1 + set mBatchSize to 4 locally
Bug: 35997432
Change-Id: I6baf112f9da56534ae81008bad818fba1e76a294
2017-04-01 13:12:49 -07:00
Eino-Ville Talvala
2d80c0d66f camera: Map between legacy gralloc0 usage, and HIDL gralloc1 usages
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
2017-03-30 16:11:26 -07:00
Andreas Huber
40d3a9bd8c Convert all comments into "doxygen-ready" comments.
Bug: 36453077
Test: mma
Change-Id: I0b1f77dfae5d2258969e33d85ecf45401ffbdfaa
2017-03-29 08:53:58 -07:00
Steven Moreland
561b602a99 Update makefiles for hwtypes.h
Test: pass
Change-Id: I8e17eb8fec5d2f04c526476a866c8dd54ccb556c
2017-03-28 15:18:20 +00:00
TreeHugger Robot
04a9f9abd6 Merge "Camera: Add doc for combined stream usage flags" 2017-03-23 03:44:35 +00:00
Shuzhen Wang
43698a2f5d Camera: Add doc for combined stream usage flags
Specify the HAL behavior when stream usage flag is combination for
multiple consumers.

Test: Compile
Bug: 33777818
Change-Id: I97e7bcc79ee36a395210c7cf8deefc4f175d3e07
2017-03-20 12:10:31 -07:00
Steven Moreland
54cc198022 update-makefiles for transisitive dependencies
Test: pass
Bug: 36162559
Change-Id: I4f5fddaef9811f0da1d69fa26a5d34830a1a9634
2017-03-20 07:13:46 -07:00
TreeHugger Robot
9198e7bb30 Merge "Camera: add batching support" 2017-03-20 06:13:12 +00:00
Yin-Chia Yeh
bed3a9473e Camera: add batching support
Currently only batching high speed recording request/results.

Test: GCA slow motion recording working
Bug: 34899394
Change-Id: Id83b9d1cefe011391c86a5e7e898262a169cc9e7
2017-03-19 21:36:49 -07:00
Eino-Ville Talvala
b439b10d60 camera.provider@2.4: Legacy wrapper: Run with more threads.
Each concurrent camera device in use needs 1 thread to maintain
operational semantics, plus we probably need threads for sensor service
calls, misc camera service calls, etc.

Up thread count to 6. That should be enough for everybody.

Test: Camera still works on sailfish
Change-Id: I2262c69985756fbf762034663ce24f45bf7ce2f1
2017-03-17 13:37:01 -07:00
TreeHugger Robot
4e07c744c9 Merge "Camera: Update HAL interface doc for high speed video batching" 2017-03-17 00:32:55 +00:00
TreeHugger Robot
0e5e908e69 Merge "Camera: Provider: Set up vendor tag before getDeviceVersion" 2017-03-16 15:26:38 +00:00
Shuzhen Wang
efb7bfa993 Camera: Provider: Set up vendor tag before getDeviceVersion
getDeviceVersion calls get_camera_info, which could contain vendor tags.
As a result, we need to set up vendor tag before that.

Test: Verify vendor tag in static metadata works.
Bug: 33641150
Change-Id: Id4cfea52235542b19170a757b4c6bea3ad1d190d
2017-03-15 18:35:42 -07:00
TreeHugger Robot
360cad209a Merge changes from topic 'vts_camera_tests'
* changes:
  Camera: Check for transport errors during VTS
  Camera: Add Hal version 1 get-/setParameter tests
  Camera: Add Hal version 1 sendcommand tests
  Camera: Add Hal version 1 autofocus test cases
  Camera: Add Hal version 1 video recording test cases
  Camera: Add Hal version 1 image capture test cases
  Camera: Add device ver. 1 preview test cases
  Camera: Extend camera test cases for camera 1.0 devices
  Camera: Add flush test cases
  Camera: Enable and check for torch callbacks
2017-03-15 18:33:05 +00:00