summaryrefslogtreecommitdiff
path: root/camera/device/3.2/default/CameraDeviceSession.cpp
diff options
context:
space:
mode:
authorEmilian Peev <epeev@google.com>2019-05-01 10:51:23 -0700
committerEmilian Peev <epeev@google.com>2019-05-09 17:13:08 -0700
commit5ec377b43038a9b705704c2b48e03c9f9587dde4 (patch)
tree9215ff139c0678a85ba6342a6e799b451ad3219f /camera/device/3.2/default/CameraDeviceSession.cpp
parent248f72a9a0df78cd4c7c383100e8997378166429 (diff)
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
Diffstat (limited to 'camera/device/3.2/default/CameraDeviceSession.cpp')
-rw-r--r--camera/device/3.2/default/CameraDeviceSession.cpp31
1 files changed, 25 insertions, 6 deletions
diff --git a/camera/device/3.2/default/CameraDeviceSession.cpp b/camera/device/3.2/default/CameraDeviceSession.cpp
index f2d7a47e83..99cdccbcdb 100644
--- a/camera/device/3.2/default/CameraDeviceSession.cpp
+++ b/camera/device/3.2/default/CameraDeviceSession.cpp
@@ -99,11 +99,20 @@ bool CameraDeviceSession::initialize() {
return true;
}
- int32_t reqFMQSize = property_get_int32("ro.camera.req.fmq.size", /*default*/-1);
+ // "ro.camera" properties are no longer supported on vendor side.
+ // Support a fall back for the fmq size override that uses "ro.vendor.camera"
+ // properties.
+ int32_t reqFMQSize = property_get_int32("ro.vendor.camera.req.fmq.size", /*default*/-1);
if (reqFMQSize < 0) {
- reqFMQSize = CAMERA_REQUEST_METADATA_QUEUE_SIZE;
+ reqFMQSize = property_get_int32("ro.camera.req.fmq.size", /*default*/-1);
+ if (reqFMQSize < 0) {
+ reqFMQSize = CAMERA_REQUEST_METADATA_QUEUE_SIZE;
+ } else {
+ ALOGV("%s: request FMQ size overridden to %d", __FUNCTION__, reqFMQSize);
+ }
} else {
- ALOGV("%s: request FMQ size overridden to %d", __FUNCTION__, reqFMQSize);
+ ALOGV("%s: request FMQ size overridden to %d via fallback property", __FUNCTION__,
+ reqFMQSize);
}
mRequestMetadataQueue = std::make_unique<RequestMetadataQueue>(
@@ -114,12 +123,22 @@ bool CameraDeviceSession::initialize() {
return true;
}
- int32_t resFMQSize = property_get_int32("ro.camera.res.fmq.size", /*default*/-1);
+ // "ro.camera" properties are no longer supported on vendor side.
+ // Support a fall back for the fmq size override that uses "ro.vendor.camera"
+ // properties.
+ int32_t resFMQSize = property_get_int32("ro.vendor.camera.res.fmq.size", /*default*/-1);
if (resFMQSize < 0) {
- resFMQSize = CAMERA_RESULT_METADATA_QUEUE_SIZE;
+ resFMQSize = property_get_int32("ro.camera.res.fmq.size", /*default*/-1);
+ if (resFMQSize < 0) {
+ resFMQSize = CAMERA_RESULT_METADATA_QUEUE_SIZE;
+ } else {
+ ALOGV("%s: result FMQ size overridden to %d", __FUNCTION__, resFMQSize);
+ }
} else {
- ALOGV("%s: result FMQ size overridden to %d", __FUNCTION__, resFMQSize);
+ ALOGV("%s: result FMQ size overridden to %d via fallback property", __FUNCTION__,
+ resFMQSize);
}
+
mResultMetadataQueue = std::make_shared<RequestMetadataQueue>(
static_cast<size_t>(resFMQSize),
false /* non blocking */);