summaryrefslogtreecommitdiff
path: root/camera
AgeCommit message (Collapse)Author
2017-10-04Merge "QCamera2: HAL3: Extend available request/result/charact. keys" into ↵oreo-mr1-devEino-Ville Talvala
oc-mr1-dev
2017-09-22QCamera2: HAL3: Avoid race condition during HFR video stopEmilian Peev
The video stream stop sequence can encounter a race conidtion in case pending buffers arrive during the same time frame. Any incoming stream callbacks that manage to execute during the window between 'mDataQ' flush and 'flushFreeBatchBufQ' will modify the 'mBufsStaged' counter without the knowledge of the top 'QCamera3HardwareInterface' instance. This makes subsequent calls 'aggregateBufToBatch' prone to batch overflow errors. To resolve this, call 'flushFreeBatchBufQ' before flushing 'mDataQ'. This way calls to 'aggregateBufToBatch' from failing stream callbacks should not be successfull in modifiying 'mBufsStaged'. Bug: 65549208 Test: Camera CTS Change-Id: Iee55ebd57e66ca359fa1eaa21fcc86021f2b920b
2017-09-19QCamera2: HAL3: Extend available request/result/charact. keysEmilian Peev
All vendor supported tags should be advertised in the respective available lists. Remove initial capability optimization. The vendor tag ops are not initialized at this point which will lead to errors when trying to append vendor tags. Bug: 63817523 Test: Camera CTS Change-Id: I417963660815b8cfe5678e8e017981f462037f0d
2017-09-18Camera: fix LSB 2 bits fetching bugYin-Chia Yeh
Test: compare with RAW10 output Bug: 65552901 Change-Id: I5104571fd18ec6df2ecebb0433db4aaaec6e4be8 QCamera2: HAL3: Fix wrong conversion for first 2 pixels Test: Camera CTS Bug: 65552901 Change-Id: I3ee00beb9ebef811e74e95134ead886e3da6d476
2017-08-10QCamera2/HAL3: correct mutex lock/unlock sequence am: c0610d4f9aoreo-dr1-devDennis Cagle
am: f137d40cd7 Change-Id: I0b6a6eadd785d7c29bd9e290c60d2be4c465c440
2017-08-10QCamera2/HAL3: correct mutex lock/unlock sequenceDennis Cagle
am: c0610d4f9a Change-Id: I1d407758c588539599224591370d1cf2c12a454c
2017-08-08QCamera2/HAL3: correct mutex lock/unlock sequenceDennis Cagle
Bug: 36716469 CRs-Fixed: 2053027 Change-Id: I6699c3682eec419fb6efb0583e9909e5739476a0 (cherry picked from commit a5eedde871c8e87784014e541c4aec247e954dc2)
2017-07-05bullhead camera HAL: remove open_legacy support am: fe4bd8accd am: ↵Eino-Ville Talvala
4bb1ccf65e am: f0c2aafa9d am: d02729a700 Change-Id: I45b619563213ce99c2fb37aee70f28d91b216644
2017-07-05bullhead camera HAL: remove open_legacy support am: fe4bd8accdEino-Ville Talvala
am: 4bb1ccf65e Change-Id: I13a479a02e71114b888ec03f447dcd9cbb08ebf6
2017-07-05bullhead camera HAL: remove open_legacy supportEino-Ville Talvala
am: fe4bd8accd Change-Id: I14d04f45db92819eed1031e142314379c8e73575
2017-06-28bullhead camera HAL: remove open_legacy supportEino-Ville Talvala
This is never used by anything in the system. Test: Build Bug: 37512375 Change-Id: Ibfe65476b1891ad66d090e567cd90c5954b91f90
2017-06-23QCamera2: HAL3: Unmap reprocess input buffers earlyShuzhen Wang
am: d36c3de0ef Change-Id: I62a084ba2aaae02c72e0a098230bad8d5fd15e4e
2017-06-22QCamera2: HAL3: Unmap reprocess input buffers earlyoreo-devShuzhen Wang
Currently reprocess input buffers are unmapped upon JPEG encode completion. This is problematic because after HAL returns input buffer after CPP processing, it doesn't own the buffer any more. The sequence of events leading to the issue: 1) Reprocess request 1 enters, input buffer FD is N 2) HAL caches the input buffer 3) CPP runs on input buffer, returns buffer to framework. Cache entry remains. JPEG encoding starts 4) Framework frees buffer; FD N is now reusable 5) Reprocess request 2 enters, new buffer also gets FD N 6) HAL finds buffer in cache 7) CPP tries to run, but uses stale cache entry, crashes 8) (if no crash) JPEG encoding completes, cache cleaned up Bug: 62721870 Test: Camera CTS Change-Id: I22a06fad9ead03af917e547a9ee4d49d8db2e2d0
2017-05-01Fixed format errors in device/lge/bullheadVijay Venkatraman
Test: Use QCamera3HWI Change-Id: I62338f00cd4a970b5f9d615c42ba32da05a7f690
2017-04-27QCamera3: Try to recover from offline reprocess failuresEmilian Peev
Offline reprocessing failures should return appropriate status to camera service otherwise the request will not complete and camera will go in a bad state. Bug: 37559776 Test: Complete Camera/Camera2 CTS Change-Id: Ifbc59f05836a9cab2c80dd7865555478c96888f5
2017-04-12QCamera2: HAL3: Return Error For Unsupported Stream FormatBinhao Lin
Return error code -EINVAL instead of 0 when the stream format is unsupported. Additionally check and return respective error in case stream rotation is invalid. Bug: 35372309 Test: adb shell /data/nativetest/VtsHalCameraProviderV2_4TargetTest/VtsHalCameraProviderV2_4TargetTest Complete Camera/Camera2 CTS tests Change-Id: If6aee12c68054243a90d655bbaf0e95c36887682
2017-03-27QCamera2: HAL3: Set proper partial_result for dropped metadataShuzhen Wang
In case there is dropped metadata for certain frame number, HAL should make sure: 1. partial_result field of the capture_result isn't 0. 2. the pending CaptureRequest for the frame number needs to be returned. Test: Verified no error if metadata is dropped Bug: 29699751 Change-Id: Iab51f4493c14bb0bee641baa8d7c8b74819a94e5
2017-03-20QCamera2: HAL3: Validate usage flags for configure_streamsShuzhen Wang
If usage flag has combined bits from different consumers, fail configure_streams if camera device doesn't support it. Camera device take into consideration of below 3 factors: - stream format - stream dataspace, and - HAL interface restriction Test: Camera CTS Bug: 33777818 Change-Id: Ie2b2ad44de74ad908269bc23c8ce8ce065153a8f
2017-03-17Merge "QCamera2: HAL3: Send non-empty metadata for last result in the batch"TreeHugger Robot
2017-03-14QCamera2: HAL3: Send non-empty metadata for last result in the batchShuzhen Wang
By sending non-empty metadata only for the last result in a batch, the number of memcpy within HAL and between HAL and cameraserver is reduced. Test: HFR CTS Bug: 35775704 Change-Id: If5ba901e61ff2be6feba946b1f3978eb47bd3c5e
2017-03-10Camera: remove libgui dependencyYin-Chia Yeh
Test: camera.msm8992 compiles Bug: 36135110 Change-Id: Idc902d7b9351e2377c02747d34196d2f6c611643
2017-02-08Merge "Camera: disable open_legacy"TreeHugger Robot
2017-02-07Camera: disable open_legacyYin-Chia Yeh
The open_legacy check will trigger camera HAL allocating more memory. Test: dumpsys meminfo -> check the cameraserver memory usage Bug: 35058355 Change-Id: I8faab7629be33fed614de6890891f38fdf91e39a
2017-02-04QCamera3: check channel nullptr am: 49d31d2e16Chien-Yu Chen
am: ebac1398dc Change-Id: I9a764ad5fce0a6e6acd1294aebb59f49bdd887f5
2017-02-04QCamera3: check channel nullptrChien-Yu Chen
am: 49d31d2e16 Change-Id: I4c5d8147a89988cd4e9b3579f105538fbcd989df
2017-02-03Merge "Added libstagefrighthw as dep for camera" am: 69c5d20281 am: ↵Vijay Venkatraman
2165f4582c am: 792656012b am: 059145d3d1 Change-Id: Ica50db420917952da21fc1d65b16fc49c1c9340b
2017-02-03Merge "Added libstagefrighthw as dep for camera" am: 69c5d20281 am: 2165f4582cVijay Venkatraman
am: 792656012b Change-Id: I3c66523cdbd6d69b2e232cb7e356927e3a7be793
2017-02-03Merge "Added libstagefrighthw as dep for camera" am: 69c5d20281Vijay Venkatraman
am: 2165f4582c Change-Id: I8f5832cd74175e9084aff764f1fdb03a11c40c25
2017-02-03QCamera3: check channel nullptrnougat-mr2-devChien-Yu Chen
Only calls channel->stop() if channel is not nullptr. Bug: 32706326 Change-Id: I8935eb4e16edd928d0f67ab161fe77f4c180ea7e
2017-02-03Added libstagefrighthw as dep for cameraVijay Venkatraman
Since libstagefrighthw will not copying headers anymore Bug: 33241851 Test: build bullhead target Change-Id: Ib7e11e360220e7caba354027ae44485e5652f5d9
2016-12-21QCamera2: set_torch_mode returns -ENOSYS if device doesn't have flashShuzhen Wang
Test: Compile Bug: 33811945 Change-Id: I073e10a68d2e86e6c6a312e189952756374ceafb
2016-12-16QCamera2: HAL3: Use monotonic timestamp for pthread_cond_timedwaitShuzhen Wang
am: a260c90a93 Change-Id: If59a1e2d70701fd55b529ef5a0cc4964093b6284
2016-12-15QCamera2: HAL3: Use monotonic timestamp for pthread_cond_timedwaitShuzhen Wang
Wall time may jump forward/backward. Especially when it jumps forward, pthread_cond_timedwait may return early with TIMEOUT. Switch to MONOTONIC time base instead. Bug: 33110475 Change-Id: I7801c8a0c85dff25ed431c3aec63eecf3dc37b52
2016-10-15QCamera2: HAL3: Report ERROR_RESULT when metadata is dropped am: 7d16805be5Gaoxiang Chen
am: 66c8c04e7b Change-Id: I83792687cfdd8e8c41ad266281d0b55234e29908
2016-10-14QCamera2: HAL3: Report ERROR_RESULT when metadata is droppedGaoxiang Chen
When metadata is dropped due to lower performance scenarios, report ERROR_RESULT to framework instead of ENODEV as the metadata error can be recoverable. Bug: 31008299 Change-Id: I14b6e45171692b966e30cd17730e2c0c56c2babd
2016-09-28Add missing liblog dependencies am: 0b4adb19f7 am: a484356f38Dimitry Ivanov
am: 5aab601d6f Change-Id: I8c783d4e0df2a2ba6d73241b3ab3eb885050c139
2016-09-28Add missing liblog dependencies am: 0b4adb19f7Dimitry Ivanov
am: a484356f38 Change-Id: Ic98a8fb806b1ee1952aeabff90695f641ff122aa
2016-09-27Add missing liblog dependenciesDimitry Ivanov
Bug: http://b/31289077 Bug: http://b/27171986 Test: remove liblog from libcutils and recompile Change-Id: Icb2bc17d6e952145984c1b54b36c14191603e1c4
2016-09-22Fix format warnings in device/lge/bullhead/camera am: 38e4b678e9 am: ce52d752d4Colin Cross
am: d651f40d73 Change-Id: I42cc8006dc8f6aa5372551eebb63ead7d2de0528
2016-09-22Fix format warnings in device/lge/bullhead/camera am: 38e4b678e9Colin Cross
am: ce52d752d4 Change-Id: I50bf052b2a5c8565dfd3a2e19aa588500595e6c7
2016-09-21Fix format warnings in device/lge/bullhead/cameraColin Cross
system/core/include is included in the global include path using -isystem, which hides log format warnings when built with gcc. Fix the warnings in preparation for switching from -isystem to -I. Test: lunch aosp_angler-userdebug && m -j Bug: 31492149 Change-Id: Ie75967aa30bae2e9bebbd65efe0ff570a80203fd
2016-09-13QCamera2: HAL3: Set timestamp source based on sensor sync availabilityShuzhen Wang
Only set timestamp source to be REALTIME if sensor sync is available, in other words, if timestamp is calibrated. Bug: 30471814 Change-Id: I507dc9f6a66ff2b7c1a627432dadd8e60f78c48e
2016-07-21QCamera2: HAL3: correct timestamp calculation in HFR modeRanjith Kagathi Ananda
When the phone powers up for several days, the timestamp (in ns, nano sec) of frames will exceed the precision of float data type. It will lead to incorrect timestamp calculation in HFR batch mode. Use double instead Ack-by: Gaoxiang Chen BUG=24842044 Change-Id: I63598e56178b980fa817c1c77f77f0e6a005767b (cherry picked from commit ece15b4fa7cc4c622e41cc9a4cd28187ae584e9e)
2016-07-14QCamera2: HAL3: Move AF mode to the same metadata section as AF stateShuzhen Wang
This makes sure the mapping between af state and af mode are aligned with spec. In other words, we make sure af state change aligns with af mode change. Bug: 30100921 Change-Id: Ie115eff5fa6fb7602e4218fd92510fe7062269ff
2016-07-14QCamera2: HAL3: correct timestamp calculation in HFR modeRanjith Kagathi Ananda
When the phone powers up for several days, the timestamp (in ns, nano sec) of frames will exceed the precision of float data type. It will lead to incorrect timestamp calculation in HFR batch mode. Use double instead Ack-by: Gaoxiang Chen BUG=24842044 Change-Id: I63598e56178b980fa817c1c77f77f0e6a005767b
2016-07-11QCamera2/HAL3: Cache metadata in batch modeRanjith Kagathi Ananda
In batch mode, only one metadata is sent from back-end per batch. It can be *copied* as multiple metadata for rest of the frames in the batch instead of parsing the same metadata buffer again BUG=28312446 CRs-Fixed: 1038197 Change-Id: I5be580e69b8f14e8a381111a787c38081fb04f71
2016-05-16QCamera2: HAL3: fix CTS testDynamicBlackWhiteLevelGaoxiang Chen
Fix CTS issue: testDynamicBlackWhiteLevel. Bug: 27224930 Change-Id: Ibe529d10f95c7ab48389eab59f7d2cf13383068f
2016-05-04QCamera2: HAL3: More verbose log message for buffer lossShuzhen Wang
Print out stream size, format, and last frame number for buffer loss. Bug: 28427118 Change-Id: I5568d1a38a54243f094a679d80872a4c9d1b6523
2016-04-04Merge "QCamera2: HAL3: Increase device open retry times" into nyc-devChien-Yu Chen
2016-04-01QCamera2: HAL3: Increase device open retry timesChien-Yu Chen
Device open may fail when cameraserver and mm-qcamera-daemon are killed at the same time. Bug: 27869821 Change-Id: I03e006246c2df68b7ef176afd269fabb280b2534