diff options
Diffstat (limited to 'camera')
19 files changed, 212 insertions, 55 deletions
diff --git a/camera/common/1.0/default/Android.bp b/camera/common/1.0/default/Android.bp index 4a5ca83803..0927807b21 100644 --- a/camera/common/1.0/default/Android.bp +++ b/camera/common/1.0/default/Android.bp @@ -36,4 +36,5 @@ cc_library_static { ], include_dirs: ["system/media/private/camera/include"], export_include_dirs: ["include"], + sdclang: false, } diff --git a/camera/common/1.0/default/CameraModule.cpp b/camera/common/1.0/default/CameraModule.cpp index 16fb85cc64..188b4bed27 100644 --- a/camera/common/1.0/default/CameraModule.cpp +++ b/camera/common/1.0/default/CameraModule.cpp @@ -267,6 +267,22 @@ int CameraModule::init() { return res; } +int CameraModule::getCameraDeviceVersion(int cameraId, uint32_t* version) { + ATRACE_CALL(); + int ret; + if (getModuleApiVersion() >= CAMERA_MODULE_API_VERSION_2_5 && + mModule->get_camera_device_version != NULL) { + ret = mModule->get_camera_device_version(cameraId, version); + } else { + struct camera_info info; + ret = getCameraInfo(cameraId, &info); + if (ret == OK) { + *version = info.device_version; + } + } + return ret; +} + int CameraModule::getCameraInfo(int cameraId, struct camera_info *info) { ATRACE_CALL(); Mutex::Autolock lock(mCameraInfoLock); @@ -367,11 +383,9 @@ int CameraModule::getPhysicalCameraInfo(int physicalCameraId, camera_metadata_t int CameraModule::getDeviceVersion(int cameraId) { ssize_t index = mDeviceVersionMap.indexOfKey(cameraId); if (index == NAME_NOT_FOUND) { - int deviceVersion; + uint32_t deviceVersion; if (getModuleApiVersion() >= CAMERA_MODULE_API_VERSION_2_0) { - struct camera_info info; - getCameraInfo(cameraId, &info); - deviceVersion = info.device_version; + getCameraDeviceVersion(cameraId, &deviceVersion); } else { deviceVersion = CAMERA_DEVICE_API_VERSION_1_0; } diff --git a/camera/common/1.0/default/include/CameraModule.h b/camera/common/1.0/default/include/CameraModule.h index c89e934655..8195835406 100644 --- a/camera/common/1.0/default/include/CameraModule.h +++ b/camera/common/1.0/default/include/CameraModule.h @@ -49,6 +49,7 @@ public: // Returns OK on success, NO_INIT on failure int init(); + int getCameraDeviceVersion(int cameraId, uint32_t* version); int getCameraInfo(int cameraId, struct camera_info *info); int getDeviceVersion(int cameraId); int getNumberOfCameras(void); diff --git a/camera/device/1.0/default/Android.bp b/camera/device/1.0/default/Android.bp index 9ff6480d4b..f875d77f68 100644 --- a/camera/device/1.0/default/Android.bp +++ b/camera/device/1.0/default/Android.bp @@ -19,6 +19,7 @@ cc_library_shared { "libhidlmemory", "libutils", "android.hardware.camera.device@1.0", + "vendor.qti.hardware.camera.device@1.0", "android.hardware.camera.common@1.0", "android.hardware.graphics.allocator@2.0", "android.hardware.graphics.mapper@2.0", @@ -40,4 +41,9 @@ cc_library_shared { "media_plugin_headers", ], export_include_dirs: ["."], + sdclang: false, // See b/163842697 + // Since this platform module has been forked to depend on a vendor + // proprietary library, we exclude it from the vendor snapshot so that it + // will be built from source as part of the vendor build. + exclude_from_vendor_snapshot: true, } diff --git a/camera/device/1.0/default/CameraDevice.cpp b/camera/device/1.0/default/CameraDevice.cpp index 80733d1908..622660685f 100644 --- a/camera/device/1.0/default/CameraDevice.cpp +++ b/camera/device/1.0/default/CameraDevice.cpp @@ -433,30 +433,68 @@ void CameraDevice::sDataCb(int32_t msg_type, const camera_memory_t *data, unsign index, mem->mNumBufs); return; } - if (object->mDeviceCallback != nullptr) { - CameraFrameMetadata hidlMetadata; - if (metadata) { - hidlMetadata.faces.resize(metadata->number_of_faces); - for (size_t i = 0; i < hidlMetadata.faces.size(); i++) { - hidlMetadata.faces[i].score = metadata->faces[i].score; - hidlMetadata.faces[i].id = metadata->faces[i].id; - for (int k = 0; k < 4; k++) { - hidlMetadata.faces[i].rect[k] = metadata->faces[i].rect[k]; - } - for (int k = 0; k < 2; k++) { - hidlMetadata.faces[i].leftEye[k] = metadata->faces[i].left_eye[k]; - } - for (int k = 0; k < 2; k++) { - hidlMetadata.faces[i].rightEye[k] = metadata->faces[i].right_eye[k]; - } - for (int k = 0; k < 2; k++) { - hidlMetadata.faces[i].mouth[k] = metadata->faces[i].mouth[k]; - } - } - } - CameraHeapMemory* mem = static_cast<CameraHeapMemory *>(data->handle); - object->mDeviceCallback->dataCallback( - (DataCallbackMsg) msg_type, mem->handle.mId, index, hidlMetadata); + if(object->mQDeviceCallback != nullptr) { + vendor::qti::hardware::camera::device::V1_0::QCameraFrameMetadata hidlMetadata; + if (metadata) { + hidlMetadata.faces.resize(metadata->number_of_faces); + for (size_t i = 0; i < hidlMetadata.faces.size(); i++) { + hidlMetadata.faces[i].score = metadata->faces[i].score; + hidlMetadata.faces[i].id = metadata->faces[i].id; + for (int k = 0; k < 4; k++) { + hidlMetadata.faces[i].rect[k] = metadata->faces[i].rect[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].leftEye[k] = metadata->faces[i].left_eye[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].rightEye[k] = metadata->faces[i].right_eye[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].mouth[k] = metadata->faces[i].mouth[k]; + } + hidlMetadata.faces[i].smile_degree = metadata->faces[i].smile_degree; + hidlMetadata.faces[i].smile_score = metadata->faces[i].smile_score; + hidlMetadata.faces[i].blink_detected = metadata->faces[i].blink_detected; + hidlMetadata.faces[i].face_recognised = metadata->faces[i].face_recognised; + hidlMetadata.faces[i].gaze_angle = metadata->faces[i].gaze_angle; + hidlMetadata.faces[i].updown_dir = metadata->faces[i].updown_dir; + hidlMetadata.faces[i].leftright_dir = metadata->faces[i].leftright_dir; + hidlMetadata.faces[i].roll_dir = metadata->faces[i].roll_dir; + hidlMetadata.faces[i].left_right_gaze = metadata->faces[i].left_right_gaze; + hidlMetadata.faces[i].top_bottom_gaze = metadata->faces[i].top_bottom_gaze; + hidlMetadata.faces[i].leye_blink = metadata->faces[i].leye_blink; + hidlMetadata.faces[i].reye_blink = metadata->faces[i].reye_blink; + } + } + CameraHeapMemory* mem = static_cast<CameraHeapMemory *>(data->handle); + object->mQDeviceCallback->QDataCallback( + (DataCallbackMsg) msg_type, mem->handle.mId, index, hidlMetadata); + } else { + if (object->mDeviceCallback != nullptr) { + CameraFrameMetadata hidlMetadata; + if (metadata) { + hidlMetadata.faces.resize(metadata->number_of_faces); + for (size_t i = 0; i < hidlMetadata.faces.size(); i++) { + hidlMetadata.faces[i].score = metadata->faces[i].score; + hidlMetadata.faces[i].id = metadata->faces[i].id; + for (int k = 0; k < 4; k++) { + hidlMetadata.faces[i].rect[k] = metadata->faces[i].rect[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].leftEye[k] = metadata->faces[i].left_eye[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].rightEye[k] = metadata->faces[i].right_eye[k]; + } + for (int k = 0; k < 2; k++) { + hidlMetadata.faces[i].mouth[k] = metadata->faces[i].mouth[k]; + } + } + } + CameraHeapMemory* mem = static_cast<CameraHeapMemory *>(data->handle); + object->mDeviceCallback->dataCallback( + (DataCallbackMsg) msg_type, mem->handle.mId, index, hidlMetadata); + } } } @@ -672,6 +710,11 @@ Return<Status> CameraDevice::open(const sp<ICameraDeviceCallback>& callback) { initHalPreviewWindow(); mDeviceCallback = callback; + mQDeviceCallback = + vendor::qti::hardware::camera::device::V1_0::IQCameraDeviceCallback::castFrom(callback); + if(mQDeviceCallback == nullptr) { + ALOGI("could not cast ICameraDeviceCallback to IQCameraDeviceCallback"); + } if (mDevice->ops->set_callbacks) { mDevice->ops->set_callbacks(mDevice, diff --git a/camera/device/1.0/default/CameraDevice_1_0.h b/camera/device/1.0/default/CameraDevice_1_0.h index 2c980f0a8f..e5a194edc5 100644 --- a/camera/device/1.0/default/CameraDevice_1_0.h +++ b/camera/device/1.0/default/CameraDevice_1_0.h @@ -24,6 +24,7 @@ #include "HandleImporter.h" #include <android/hardware/camera/device/1.0/ICameraDevice.h> +#include <vendor/qti/hardware/camera/device/1.0/IQCameraDeviceCallback.h> #include <android/hidl/allocator/1.0/IAllocator.h> #include <android/hidl/memory/1.0/IMemory.h> #include <hidl/MQDescriptor.h> @@ -44,6 +45,7 @@ using ::android::hardware::camera::common::V1_0::helper::HandleImporter; using ::android::hardware::camera::device::V1_0::CameraInfo; using ::android::hardware::camera::device::V1_0::CommandType; using ::android::hardware::camera::device::V1_0::ICameraDevice; +using ::vendor::qti::hardware::camera::device::V1_0::IQCameraDeviceCallback; using ::android::hardware::camera::device::V1_0::ICameraDeviceCallback; using ::android::hardware::camera::device::V1_0::ICameraDevicePreviewCallback; using ::android::hardware::camera::device::V1_0::MemoryId; @@ -164,6 +166,7 @@ private: const SortedVector<std::pair<std::string, std::string>>& mCameraDeviceNames; sp<ICameraDeviceCallback> mDeviceCallback = nullptr; + sp<IQCameraDeviceCallback> mQDeviceCallback = nullptr; mutable Mutex mMemoryMapLock; // gating access to mMemoryMap // must not hold mLock after this lock is acquired diff --git a/camera/device/3.2/default/Android.bp b/camera/device/3.2/default/Android.bp index a1962915ff..d7ad6ad740 100644 --- a/camera/device/3.2/default/Android.bp +++ b/camera/device/3.2/default/Android.bp @@ -38,4 +38,5 @@ cc_library_shared { export_shared_lib_headers: [ "libfmq", ], + sdclang: false, // See b/163842697 } diff --git a/camera/device/3.2/default/CameraDeviceSession.cpp b/camera/device/3.2/default/CameraDeviceSession.cpp index 769991c5fa..896c35843a 100644 --- a/camera/device/3.2/default/CameraDeviceSession.cpp +++ b/camera/device/3.2/default/CameraDeviceSession.cpp @@ -926,12 +926,12 @@ bool CameraDeviceSession::preProcessConfigurationLocked( mStreamMap[id].data_space); mCirculatingBuffers.emplace(stream.mId, CirculatingBuffers{}); } else { - // width/height/format must not change, but usage/rotation might need to change + // width/height must not change, but usage/rotation might need to change + // format might change and get updated with overrideFormat if (mStreamMap[id].stream_type != (int) requestedConfiguration.streams[i].streamType || mStreamMap[id].width != requestedConfiguration.streams[i].width || mStreamMap[id].height != requestedConfiguration.streams[i].height || - mStreamMap[id].format != (int) requestedConfiguration.streams[i].format || mStreamMap[id].data_space != mapToLegacyDataspace( static_cast<android_dataspace_t> ( requestedConfiguration.streams[i].dataSpace))) { diff --git a/camera/device/3.2/default/convert.cpp b/camera/device/3.2/default/convert.cpp index 06ad7e963c..628b7af912 100644 --- a/camera/device/3.2/default/convert.cpp +++ b/camera/device/3.2/default/convert.cpp @@ -66,6 +66,8 @@ void convertFromHidl(const Stream &src, Camera3Stream* dst) { dst->data_space = (android_dataspace_t) src.dataSpace; dst->rotation = (int) src.rotation; dst->usage = (uint32_t) src.usage; + dst->reserved[0] = NULL; + dst->reserved[1] = NULL; // Fields to be filled by HAL (max_buffers, priv) are initialized to 0 dst->max_buffers = 0; dst->priv = 0; @@ -88,6 +90,23 @@ void convertToHidl(const Camera3Stream* src, HalStream* dst) { ALOGW("%s: Stream type %d is not currently supported!", __FUNCTION__, src->stream_type); } + + HalStream* halStream = NULL; + if (src->reserved[0] != NULL) { + halStream = (HalStream*)(src->reserved[0]); + } else if (src->reserved[1] != NULL) { + halStream = (HalStream*)(src->reserved[1]); + } + + // Check if overrideFormat is set and honor it + if (halStream != NULL) { + dst->overrideFormat = (PixelFormat) halStream->overrideFormat; + if (src->stream_type == CAMERA3_STREAM_OUTPUT) { + dst->producerUsage = (BufferUsageFlags)halStream->producerUsage; + } else if (src->stream_type == CAMERA3_STREAM_INPUT) { + dst->consumerUsage = (BufferUsageFlags)halStream->consumerUsage; + } + } } void convertToHidl(const camera3_stream_configuration_t& src, HalStreamConfiguration* dst) { diff --git a/camera/device/3.3/default/convert.cpp b/camera/device/3.3/default/convert.cpp index dae190b03c..ac17d837d7 100644 --- a/camera/device/3.3/default/convert.cpp +++ b/camera/device/3.3/default/convert.cpp @@ -47,6 +47,22 @@ void convertToHidl(const Camera3Stream* src, HalStream* dst) { ALOGW("%s: Stream type %d is not currently supported!", __FUNCTION__, src->stream_type); } + + HalStream* halStream = NULL; + if (src->reserved[0] != NULL) { + halStream = (HalStream*)(src->reserved[0]); + } else if (src->reserved[1] != NULL) { + halStream = (HalStream*)(src->reserved[1]); + } + + if (halStream != NULL) { + dst->v3_2.overrideFormat = (PixelFormat) halStream->v3_2.overrideFormat; + if (src->stream_type == CAMERA3_STREAM_OUTPUT) { + dst->v3_2.producerUsage = (BufferUsageFlags)halStream->v3_2.producerUsage; + } else if (src->stream_type == CAMERA3_STREAM_INPUT) { + dst->v3_2.consumerUsage = (BufferUsageFlags)halStream->v3_2.consumerUsage; + } + } } void convertToHidl(const camera3_stream_configuration_t& src, HalStreamConfiguration* dst) { diff --git a/camera/device/3.4/default/Android.bp b/camera/device/3.4/default/Android.bp index 9f0c77739a..17bcdbb6d4 100644 --- a/camera/device/3.4/default/Android.bp +++ b/camera/device/3.4/default/Android.bp @@ -71,6 +71,7 @@ cc_library_shared { export_shared_lib_headers: [ "libfmq", ], + sdclang: false, // See b/163842697 } cc_library_shared { @@ -114,4 +115,5 @@ cc_library_shared { export_shared_lib_headers: [ "libfmq", ], + sdclang: false, // See b/163842697 } diff --git a/camera/device/3.5/default/Android.bp b/camera/device/3.5/default/Android.bp index 9d27b321e0..4ed65ba72d 100644 --- a/camera/device/3.5/default/Android.bp +++ b/camera/device/3.5/default/Android.bp @@ -68,6 +68,7 @@ cc_library_shared { "android.hardware.camera.common@1.0-helper", ], local_include_dirs: ["include/device_v3_5_impl"], + sdclang: false, // See b/163842697 } cc_library_shared { @@ -112,4 +113,5 @@ cc_library_shared { export_shared_lib_headers: [ "libfmq", ], + sdclang: false, // See b/163842697 } diff --git a/camera/device/3.6/default/Android.bp b/camera/device/3.6/default/Android.bp index 89ee145820..0e5440a865 100644 --- a/camera/device/3.6/default/Android.bp +++ b/camera/device/3.6/default/Android.bp @@ -74,4 +74,5 @@ cc_library_shared { export_shared_lib_headers: [ "libfmq", ], + sdclang: false, // See b/163842697 } diff --git a/camera/provider/2.4/default/Android.bp b/camera/provider/2.4/default/Android.bp index bccd6cb536..76220e2917 100644 --- a/camera/provider/2.4/default/Android.bp +++ b/camera/provider/2.4/default/Android.bp @@ -15,6 +15,7 @@ cc_library_shared { shared_libs: [ "android.hardware.camera.common@1.0", "android.hardware.camera.device@1.0", + "vendor.qti.hardware.camera.device@1.0", "android.hardware.camera.device@3.2", "android.hardware.camera.device@3.3", "android.hardware.camera.device@3.4", @@ -45,6 +46,11 @@ cc_library_shared { "camera.device@3.5-impl_headers", ], export_include_dirs: ["."], + sdclang: false, // See b/163842697 + // Since this framework module has been forked to depend on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_library_shared { @@ -88,6 +94,10 @@ cc_library_shared { "camera.device@3.6-external-impl_headers", ], export_include_dirs: ["."], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_library_shared { @@ -136,6 +146,10 @@ cc_library_shared { "android.hardware.camera.common@1.0-helper", ], export_include_dirs: ["."], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_defaults { @@ -147,6 +161,7 @@ cc_defaults { shared_libs: [ "android.hardware.camera.common@1.0", "android.hardware.camera.device@1.0", + "vendor.qti.hardware.camera.device@1.0", "android.hardware.camera.device@3.2", "android.hardware.camera.device@3.3", "android.hardware.camera.device@3.4", @@ -174,6 +189,10 @@ cc_defaults { "camera.device@3.5-external-impl_headers", "camera.device@3.5-impl_headers", ], + // Since this framework module has been forked to depend on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_binary { @@ -236,4 +255,8 @@ cc_binary { "camera.device@3.5-external-impl_headers", "camera.device@3.5-impl_headers", ], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } diff --git a/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.cpp b/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.cpp index 7c3b982931..ab97646e32 100644 --- a/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.cpp +++ b/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.cpp @@ -87,23 +87,32 @@ void LegacyCameraProviderImpl_2_4::addDeviceNames(int camera_id, CameraDeviceSta if (deviceVersion >= CAMERA_DEVICE_API_VERSION_3_2 && mModule->isOpenLegacyDefined()) { // try open_legacy to see if it actually works - struct hw_device_t* halDev = nullptr; - int ret = mModule->openLegacy(cameraId, CAMERA_DEVICE_API_VERSION_1_0, &halDev); - if (ret == 0) { - mOpenLegacySupported[cameraIdStr] = true; - halDev->close(halDev); - deviceNamePair = std::make_pair(cameraIdStr, + if ((property_get_bool("ro.config.low_ram", /*default*/ false))) { + deviceNamePair = std::make_pair(cameraIdStr, getHidlDeviceName(cameraIdStr, CAMERA_DEVICE_API_VERSION_1_0)); - mCameraDeviceNames.add(deviceNamePair); - if (cam_new) { - mCallbacks->cameraDeviceStatusChange(deviceNamePair.second, status); - } - } else if (ret == -EBUSY || ret == -EUSERS) { + mCameraDeviceNames.add(deviceNamePair); + if (cam_new) { + mCallbacks->cameraDeviceStatusChange(deviceNamePair.second, status); + } + } else { + struct hw_device_t* halDev = nullptr; + int ret = mModule->openLegacy(cameraId, CAMERA_DEVICE_API_VERSION_1_0, &halDev); + if (ret == 0) { + mOpenLegacySupported[cameraIdStr] = true; + halDev->close(halDev); + deviceNamePair = std::make_pair(cameraIdStr, + getHidlDeviceName(cameraIdStr, CAMERA_DEVICE_API_VERSION_1_0)); + mCameraDeviceNames.add(deviceNamePair); + if (cam_new) { + mCallbacks->cameraDeviceStatusChange(deviceNamePair.second, status); + } + } else if (ret == -EBUSY || ret == -EUSERS) { // Looks like this provider instance is not initialized during // system startup and there are other camera users already. // Not a good sign but not fatal. - ALOGW("%s: open_legacy try failed!", __FUNCTION__); - } + ALOGW("%s: open_legacy try failed!", __FUNCTION__); + } + } } } @@ -314,15 +323,15 @@ bool LegacyCameraProviderImpl_2_4::initialize() { mNumberOfLegacyCameras = mModule->getNumberOfCameras(); for (int i = 0; i < mNumberOfLegacyCameras; i++) { - struct camera_info info; - auto rc = mModule->getCameraInfo(i, &info); + uint32_t device_version; + auto rc = mModule->getCameraDeviceVersion(i, &device_version); if (rc != NO_ERROR) { - ALOGE("%s: Camera info query failed!", __func__); + ALOGE("%s: Camera device version query failed!", __func__); mModule.clear(); return true; } - if (checkCameraVersion(i, info) != OK) { + if (checkCameraVersion(i, device_version) != OK) { ALOGE("%s: Camera version check failed!", __func__); mModule.clear(); return true; @@ -342,7 +351,7 @@ bool LegacyCameraProviderImpl_2_4::initialize() { /** * Check that the device HAL version is still in supported. */ -int LegacyCameraProviderImpl_2_4::checkCameraVersion(int id, camera_info info) { +int LegacyCameraProviderImpl_2_4::checkCameraVersion(int id, uint32_t device_version) { if (mModule == nullptr) { return NO_INIT; } @@ -352,7 +361,7 @@ int LegacyCameraProviderImpl_2_4::checkCameraVersion(int id, camera_info info) { uint16_t moduleVersion = mModule->getModuleApiVersion(); if (moduleVersion >= CAMERA_MODULE_API_VERSION_2_0) { // Verify the device version is in the supported range - switch (info.device_version) { + switch (device_version) { case CAMERA_DEVICE_API_VERSION_1_0: case CAMERA_DEVICE_API_VERSION_3_2: case CAMERA_DEVICE_API_VERSION_3_3: @@ -370,7 +379,7 @@ int LegacyCameraProviderImpl_2_4::checkCameraVersion(int id, camera_info info) { if (moduleVersion < CAMERA_MODULE_API_VERSION_2_5) { ALOGE("%s: Device %d has unsupported version combination:" "HAL version %x and module version %x", - __FUNCTION__, id, info.device_version, moduleVersion); + __FUNCTION__, id, device_version, moduleVersion); return NO_INIT; } break; @@ -380,8 +389,8 @@ int LegacyCameraProviderImpl_2_4::checkCameraVersion(int id, camera_info info) { case CAMERA_DEVICE_API_VERSION_3_1: // no longer supported default: - ALOGE("%s: Device %d has HAL version %x, which is not supported", - __FUNCTION__, id, info.device_version); + ALOGE("%s: Device %d has HAL version %x, which is not supported", __FUNCTION__, id, + device_version); return NO_INIT; } } diff --git a/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.h b/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.h index b4914b3cfe..9ec5c5e8db 100644 --- a/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.h +++ b/camera/provider/2.4/default/LegacyCameraProviderImpl_2_4.h @@ -97,7 +97,7 @@ protected: hidl_vec<VendorTagSection> mVendorTagSections; bool setUpVendorTags(); - int checkCameraVersion(int id, camera_info info); + int checkCameraVersion(int id, uint32_t device_version); // create HIDL device name from camera ID and legacy device version std::string getHidlDeviceName(std::string cameraId, int deviceVersion); diff --git a/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service.rc b/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service.rc index f7ac9f83e4..ff924ed360 100644 --- a/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service.rc +++ b/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service.rc @@ -5,4 +5,4 @@ service vendor.camera-provider-2-4 /vendor/bin/hw/android.hardware.camera.provid group audio camera input drmrpc ioprio rt 4 capabilities SYS_NICE - task_profiles CameraServiceCapacity MaxPerformance + task_profiles CameraServiceCapacity HighPerformance diff --git a/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service_64.rc b/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service_64.rc index a32dd468d3..642e84e5b0 100644 --- a/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service_64.rc +++ b/camera/provider/2.4/default/android.hardware.camera.provider@2.4-service_64.rc @@ -5,4 +5,4 @@ service vendor.camera-provider-2-4 /vendor/bin/hw/android.hardware.camera.provid group audio camera input drmrpc ioprio rt 4 capabilities SYS_NICE - task_profiles CameraServiceCapacity MaxPerformance + task_profiles CameraServiceCapacity HighPerformance diff --git a/camera/provider/2.5/default/Android.bp b/camera/provider/2.5/default/Android.bp index 2fcb35ab00..188b70157a 100644 --- a/camera/provider/2.5/default/Android.bp +++ b/camera/provider/2.5/default/Android.bp @@ -44,6 +44,10 @@ cc_library_shared { "camera.device@3.5-impl_headers", ], export_include_dirs: ["."], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_library_shared { @@ -87,6 +91,10 @@ cc_library_shared { "camera.device@3.6-external-impl_headers" ], export_include_dirs: ["."], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_defaults { @@ -123,6 +131,10 @@ cc_defaults { "camera.device@3.4-impl_headers", "camera.device@3.5-impl_headers" ], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } cc_binary { @@ -196,4 +208,8 @@ cc_binary { "camera.device@3.5-impl_headers", "camera.device@3.6-external-impl_headers", ], + // Since this framework module has a transitive dependency on a vendor + // proprietary library, we exclude this module from the vendor snapshot so + // that it will be built from source as part of the vendor image build. + exclude_from_vendor_snapshot: true, } |