diff options
author | Shukla Mradul <mradul_shukla@codeaurora.org> | 2016-05-21 14:32:30 +0530 |
---|---|---|
committer | Davide Garberi <dade.garberi@gmail.com> | 2018-01-19 14:09:15 +0100 |
commit | 68478ce3e332bcb008c55f793adb11b88f63ad03 (patch) | |
tree | d907aa85ee4ec9133ab0e9fa8732a8f1ef05d273 /camera | |
parent | c738fd68836e01567b19868f7e3a586f15c6dc98 (diff) |
msm8996-common: QCamera2:HAL : HAL1 Removal during Compile time
Issue:
Compile time HAL1 Removal as for IOT projects we are going to use only HAL3 so
removing HAL1 Camera files from compile time.
fix:
Modified the Android.mk file to remove HAL1 during compilation.In
case if HAL1 is not getting compiled muxer object is also not created
in QCamera2Factory.
CRs-Fixed: 1021955
Change-Id: I17af448d7c423c73c5f3c29e95fb42cc69ca5944
Signed-off-by: Davide Garberi <dade.garberi@gmail.com>
Diffstat (limited to 'camera')
-rw-r--r-- | camera/QCamera2/Android.mk | 13 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3Channel.cpp | 3 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3Channel.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3HALHeader.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3HWI.cpp | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3HWI.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3Mem.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3PostProc.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3VendorTags.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/QCamera2Factory.cpp | 67 | ||||
-rw-r--r-- | camera/QCamera2/QCamera2Factory.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/stack/common/cam_list.h | 1 | ||||
-rw-r--r-- | camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c | 2 | ||||
-rw-r--r-- | camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk | 4 | ||||
-rw-r--r-- | camera/QCamera2/util/QCameraFlash.h | 2 | ||||
-rw-r--r-- | camera/QCamera2/util/QCameraPerf.cpp | 2 | ||||
-rw-r--r-- | camera/QCamera2/util/QCameraPerf.h | 2 |
18 files changed, 81 insertions, 33 deletions
diff --git a/camera/QCamera2/Android.mk b/camera/QCamera2/Android.mk index 369b5bd..44eca2f 100644 --- a/camera/QCamera2/Android.mk +++ b/camera/QCamera2/Android.mk @@ -7,7 +7,6 @@ include $(CLEAR_VARS) LOCAL_SRC_FILES := \ util/QCameraBufferMaps.cpp \ util/QCameraCmdThread.cpp \ - util/QCameraDisplay.cpp \ util/QCameraFlash.cpp \ util/QCameraPerf.cpp \ util/QCameraQueue.cpp \ @@ -26,12 +25,20 @@ LOCAL_SRC_FILES += \ HAL3/QCamera3CropRegionMapper.cpp \ HAL3/QCamera3StreamMem.cpp +LOCAL_CFLAGS := -Wall -Wextra -Werror + #HAL 1.0 source + +ifeq ($(TARGET_SUPPORT_HAL1),false) +LOCAL_CFLAGS += -DQCAMERA_HAL3_SUPPORT +else +LOCAL_CFLAGS += -DQCAMERA_HAL1_SUPPORT LOCAL_SRC_FILES += \ HAL/QCamera2HWI.cpp \ HAL/QCameraMuxer.cpp \ HAL/QCameraMem.cpp \ HAL/QCameraStateMachine.cpp \ + util/QCameraDisplay.cpp \ HAL/QCameraChannel.cpp \ HAL/QCameraStream.cpp \ HAL/QCameraPostProc.cpp \ @@ -39,8 +46,7 @@ LOCAL_SRC_FILES += \ HAL/QCameraParameters.cpp \ HAL/QCameraParametersIntf.cpp \ HAL/QCameraThermalAdapter.cpp - -LOCAL_CFLAGS := -Wall -Wextra -Werror +endif # System header file path prefix LOCAL_CFLAGS += -DSYSTEM_HEADER_PREFIX=sys @@ -56,6 +62,7 @@ ifeq ($(TARGET_USES_MEDIA_EXTENSIONS), true) LOCAL_CFLAGS += -DUSE_MEDIA_EXTENSIONS endif +LOCAL_CFLAGS += -std=c++11 -std=gnu++0x #HAL 1.0 Flags LOCAL_CFLAGS += -DDEFAULT_DENOISE_MODE_ON -DHAL3 -DQCAMERA_REDEFINE_LOG diff --git a/camera/QCamera2/HAL3/QCamera3Channel.cpp b/camera/QCamera2/HAL3/QCamera3Channel.cpp index ff4ceca..54c92d6 100644 --- a/camera/QCamera2/HAL3/QCamera3Channel.cpp +++ b/camera/QCamera2/HAL3/QCamera3Channel.cpp @@ -36,7 +36,8 @@ #include <fcntl.h> #include <stdio.h> #include <stdlib.h> -#include "gralloc.h" +#include "hardware/gralloc.h" +#include <utils/Timers.h> // Camera dependencies #include "QCamera3Channel.h" diff --git a/camera/QCamera2/HAL3/QCamera3Channel.h b/camera/QCamera2/HAL3/QCamera3Channel.h index 7338c18..38b6c81 100644 --- a/camera/QCamera2/HAL3/QCamera3Channel.h +++ b/camera/QCamera2/HAL3/QCamera3Channel.h @@ -39,7 +39,7 @@ // Camera dependencies #include "cam_intf.h" #include "cam_types.h" -#include "camera3.h" +#include "hardware/camera3.h" #include "QCamera3HALHeader.h" #include "QCamera3Mem.h" #include "QCamera3PostProc.h" diff --git a/camera/QCamera2/HAL3/QCamera3HALHeader.h b/camera/QCamera2/HAL3/QCamera3HALHeader.h index ac68196..062b14f 100644 --- a/camera/QCamera2/HAL3/QCamera3HALHeader.h +++ b/camera/QCamera2/HAL3/QCamera3HALHeader.h @@ -30,7 +30,7 @@ #define __QCAMERA_HALHEADER_H__ // System dependencies -#include "gralloc.h" +#include "hardware/gralloc.h" // Camera dependencies #include "cam_types.h" diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp index 1803b82..9073ac4 100644 --- a/camera/QCamera2/HAL3/QCamera3HWI.cpp +++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp @@ -40,6 +40,8 @@ #include <fcntl.h> #include <stdio.h> #include <stdlib.h> +#include "utils/Timers.h" +#include "sys/ioctl.h" #include <sync/sync.h> #include "gralloc_priv.h" diff --git a/camera/QCamera2/HAL3/QCamera3HWI.h b/camera/QCamera2/HAL3/QCamera3HWI.h index 1bcf23a..00bf64d 100644 --- a/camera/QCamera2/HAL3/QCamera3HWI.h +++ b/camera/QCamera2/HAL3/QCamera3HWI.h @@ -37,7 +37,7 @@ #include <utils/List.h> // Camera dependencies -#include "camera3.h" +#include "hardware/camera3.h" #include "QCamera3Channel.h" #include "QCamera3CropRegionMapper.h" #include "QCamera3HALHeader.h" diff --git a/camera/QCamera2/HAL3/QCamera3Mem.h b/camera/QCamera2/HAL3/QCamera3Mem.h index c99079d..f8bccfe 100644 --- a/camera/QCamera2/HAL3/QCamera3Mem.h +++ b/camera/QCamera2/HAL3/QCamera3Mem.h @@ -35,7 +35,7 @@ #include <utils/Mutex.h> // Camera dependencies -#include "camera3.h" +#include "hardware/camera3.h" extern "C" { #include "mm_camera_interface.h" diff --git a/camera/QCamera2/HAL3/QCamera3PostProc.h b/camera/QCamera2/HAL3/QCamera3PostProc.h index e2ba073..4f6126f 100644 --- a/camera/QCamera2/HAL3/QCamera3PostProc.h +++ b/camera/QCamera2/HAL3/QCamera3PostProc.h @@ -31,7 +31,7 @@ #define __QCamera3_POSTPROC_H__ // Camera dependencies -#include "camera3.h" +#include "hardware/camera3.h" #include "QCamera3HALHeader.h" #include "QCameraCmdThread.h" #include "QCameraQueue.h" diff --git a/camera/QCamera2/HAL3/QCamera3VendorTags.h b/camera/QCamera2/HAL3/QCamera3VendorTags.h index ffd1904..cb51cde 100644 --- a/camera/QCamera2/HAL3/QCamera3VendorTags.h +++ b/camera/QCamera2/HAL3/QCamera3VendorTags.h @@ -31,7 +31,7 @@ #define __QCAMERA3VENDORTAGS_H__ // Camera dependencies -#include "camera_metadata.h" +#include "system/camera_metadata.h" namespace qcamera { diff --git a/camera/QCamera2/QCamera2Factory.cpp b/camera/QCamera2/QCamera2Factory.cpp index fa266f9..e54f7b1 100644 --- a/camera/QCamera2/QCamera2Factory.cpp +++ b/camera/QCamera2/QCamera2Factory.cpp @@ -32,16 +32,19 @@ // System dependencies #include <stdlib.h> #include <utils/Errors.h> +#include <cutils/properties.h> // Camera dependencies +#ifdef QCAMERA_HAL1_SUPPORT #include "camera.h" -#include "camera3.h" #include "HAL/QCamera2HWI.h" +#include "QCameraMuxer.h" +#endif + +#include "hardware/camera3.h" #include "HAL3/QCamera3HWI.h" #include "util/QCameraFlash.h" #include "QCamera2Factory.h" -#include "QCameraMuxer.h" - extern "C" { #include "mm_camera_dbg.h" } @@ -51,8 +54,11 @@ using namespace android; namespace qcamera { QCamera2Factory *gQCamera2Factory = NULL; -QCameraMuxer *gQCameraMuxer = NULL; pthread_mutex_t gCamLock = PTHREAD_MUTEX_INITIALIZER; +#ifdef QCAMERA_HAL1_SUPPORT +QCameraMuxer *gQCameraMuxer = NULL; +#endif + //Total number of cameras opened simultaneously. //This variable updation is protected by gCamLock. uint8_t gNumCameraSessions = 0; @@ -78,24 +84,35 @@ QCamera2Factory::QCamera2Factory() char prop[PROPERTY_VALUE_MAX]; property_get("persist.camera.HAL3.enabled", prop, "1"); int isHAL3Enabled = atoi(prop); +#ifndef QCAMERA_HAL1_SUPPORT + isHAL3Enabled = 1; +#endif // Signifies whether system has to enable dual camera mode snprintf(propDefault, PROPERTY_VALUE_MAX, "%d", isDualCamAvailable(isHAL3Enabled)); property_get("persist.camera.dual.camera", prop, propDefault); bDualCamera = atoi(prop); LOGH("dualCamera:%d ", bDualCamera); +#ifndef QCAMERA_HAL1_SUPPORT + bDualCamera = 0; +#endif if(bDualCamera) { LOGI("Enabling QCamera Muxer"); +#ifdef QCAMERA_HAL1_SUPPORT if (!gQCameraMuxer) { QCameraMuxer::getCameraMuxer(&gQCameraMuxer, mNumOfCameras); if (!gQCameraMuxer) { LOGE("Error !! Failed to get QCameraMuxer"); } } +#endif } - if (!gQCameraMuxer && (mNumOfCameras > 0) && - (mNumOfCameras <= MM_CAMERA_MAX_NUM_SENSORS)) { +#ifdef QCAMERA_HAL1_SUPPORT + if (!gQCameraMuxer && (mNumOfCameras > 0) &&(mNumOfCameras <= MM_CAMERA_MAX_NUM_SENSORS)) { +#else + if ((mNumOfCameras > 0) &&(mNumOfCameras <= MM_CAMERA_MAX_NUM_SENSORS)) { +#endif mHalDescriptors = new hal_desc[mNumOfCameras]; if ( NULL != mHalDescriptors) { uint32_t cameraId = 0; @@ -133,10 +150,12 @@ QCamera2Factory::~QCamera2Factory() if ( NULL != mHalDescriptors ) { delete [] mHalDescriptors; } +#ifdef QCAMERA_HAL1_SUPPORT if (gQCameraMuxer) { delete gQCameraMuxer; gQCameraMuxer = NULL; } +#endif } /*=========================================================================== @@ -159,10 +178,11 @@ int QCamera2Factory::get_number_of_cameras() return 0; } } - +#ifdef QCAMERA_HAL1_SUPPORT if(gQCameraMuxer) numCameras = gQCameraMuxer->get_number_of_cameras(); else +#endif numCameras = gQCamera2Factory->getNumberOfCameras(); LOGH("num of cameras: %d", numCameras); @@ -185,10 +205,11 @@ int QCamera2Factory::get_number_of_cameras() int QCamera2Factory::get_camera_info(int camera_id, struct camera_info *info) { int rc = NO_ERROR; - +#ifdef QCAMERA_HAL1_SUPPORT if(gQCameraMuxer) rc = gQCameraMuxer->get_camera_info(camera_id, info); else +#endif rc = gQCamera2Factory->getCameraInfo(camera_id, info); return rc; @@ -208,9 +229,11 @@ int QCamera2Factory::get_camera_info(int camera_id, struct camera_info *info) int QCamera2Factory::set_callbacks(const camera_module_callbacks_t *callbacks) { int rc = NO_ERROR; +#ifdef QCAMERA_HAL1_SUPPORT if(gQCameraMuxer) rc = gQCameraMuxer->set_callbacks(callbacks); else +#endif rc = gQCamera2Factory->setCallbacks(callbacks); return rc; @@ -242,9 +265,11 @@ int QCamera2Factory::open_legacy(const struct hw_module_t* module, LOGE("Invalid camera id"); return BAD_VALUE; } +#ifdef QCAMERA_HAL1_SUPPORT if(gQCameraMuxer) rc = gQCameraMuxer->open_legacy(module, id, halVersion, device); else +#endif rc = gQCamera2Factory->openLegacy(atoi(id), halVersion, device); return rc; @@ -323,7 +348,6 @@ int QCamera2Factory::getCameraInfo(int camera_id, struct camera_info *info) CAMERA_DEVICE_API_VERSION_1_0) { info->device_version = CAMERA_DEVICE_API_VERSION_1_0; } - return rc; } @@ -392,7 +416,9 @@ int QCamera2Factory::cameraDeviceOpen(int camera_id, if (rc != 0) { delete hw; } - } else if (mHalDescriptors[camera_id].device_version == CAMERA_DEVICE_API_VERSION_1_0) { + } +#ifdef QCAMERA_HAL1_SUPPORT + else if (mHalDescriptors[camera_id].device_version == CAMERA_DEVICE_API_VERSION_1_0) { QCamera2HardwareInterface *hw = new QCamera2HardwareInterface((uint32_t)camera_id); if (!hw) { LOGE("Allocation of hardware interface failed"); @@ -402,7 +428,9 @@ int QCamera2Factory::cameraDeviceOpen(int camera_id, if (rc != NO_ERROR) { delete hw; } - } else { + } +#endif + else { LOGE("Device version for camera id %d invalid %d", camera_id, mHalDescriptors[camera_id].device_version); @@ -439,12 +467,12 @@ int QCamera2Factory::camera_device_open( LOGE("Invalid camera id"); return BAD_VALUE; } - +#ifdef QCAMERA_HAL1_SUPPORT if(gQCameraMuxer) rc = gQCameraMuxer->camera_device_open(module, id, hw_device); else +#endif rc = gQCamera2Factory->cameraDeviceOpen(atoi(id), hw_device); - return rc; } @@ -477,6 +505,7 @@ int QCamera2Factory::openLegacy( switch(halVersion) { +#ifdef QCAMERA_HAL1_SUPPORT case CAMERA_DEVICE_API_VERSION_1_0: { QCamera2HardwareInterface *hw = @@ -491,6 +520,7 @@ int QCamera2Factory::openLegacy( } break; } +#endif default: LOGE("Device API version: %d for camera id %d invalid", halVersion, cameraId); @@ -577,24 +607,29 @@ int QCamera2Factory::setTorchMode(const char* camera_id, bool on) *==========================================================================*/ bool QCamera2Factory::isDualCamAvailable(int hal3Enabled) { - bool rc = FALSE; + bool rc = false; int i = 0; camera_info info; cam_sync_type_t cam_type = CAM_TYPE_MAIN; for (i = 0; i < mNumOfCameras; i++) { if (!hal3Enabled) { +#ifdef QCAMERA_HAL1_SUPPORT QCamera2HardwareInterface::getCapabilities(i, &info, &cam_type); +#endif } if(cam_type == CAM_TYPE_AUX) { LOGH("Have Dual Camera HW Avaiable."); - rc = TRUE; + rc = true; break; } } - +#ifdef QCAMERA_HAL1_SUPPORT return rc; +#else + return false; +#endif } }; // namespace qcamera diff --git a/camera/QCamera2/QCamera2Factory.h b/camera/QCamera2/QCamera2Factory.h index d9d965d..a091439 100644 --- a/camera/QCamera2/QCamera2Factory.h +++ b/camera/QCamera2/QCamera2Factory.h @@ -31,7 +31,7 @@ #define __QCAMERA2FACTORY_H__ // Camera dependencies -#include "camera_common.h" +#include "hardware/camera_common.h" namespace qcamera { diff --git a/camera/QCamera2/stack/common/cam_list.h b/camera/QCamera2/stack/common/cam_list.h index 0fbfa07..a165262 100644 --- a/camera/QCamera2/stack/common/cam_list.h +++ b/camera/QCamera2/stack/common/cam_list.h @@ -33,6 +33,7 @@ #ifndef __CAMLIST_H #define __CAMLIST_H +#include <stddef.h> // System dependency #include <stdlib.h> diff --git a/camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h b/camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h index 971ae74..fd1c72f 100644 --- a/camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h +++ b/camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h @@ -34,7 +34,7 @@ #include <poll.h> // Camera dependencies -#include "camera_common.h" +#include "hardware/camera_common.h" #include "cam_semaphore.h" #include "mm_camera_interface.h" diff --git a/camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c b/camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c index 7ab8db8..81c377f 100644 --- a/camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c +++ b/camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c @@ -29,6 +29,8 @@ // System dependencies #include <errno.h> +#include <sys/socket.h> +#include <fcntl.h> // Camera dependencies #include "mm_qcamera_socket.h" diff --git a/camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk b/camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk index b42636c..a15c158 100644 --- a/camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk +++ b/camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk @@ -19,7 +19,7 @@ endif LOCAL_CFLAGS += -DSYSTEM_HEADER_PREFIX=sys OMX_HEADER_DIR := frameworks/native/include/media/openmax -OMX_CORE_DIR := hardware/qcom/camera/mm-image-codec +OMX_CORE_DIR := $(MM_JPEG_TEST_PATH)/../../../../mm-image-codec LOCAL_C_INCLUDES := $(MM_JPEG_TEST_PATH) LOCAL_C_INCLUDES += $(MM_JPEG_TEST_PATH)/../inc @@ -62,7 +62,7 @@ endif LOCAL_CFLAGS += -DSYSTEM_HEADER_PREFIX=sys OMX_HEADER_DIR := frameworks/native/include/media/openmax -OMX_CORE_DIR := hardware/qcom/camera/mm-image-codec +OMX_CORE_DIR := $(MM_JPEG_TEST_PATH)/../../../../mm-image-codec LOCAL_C_INCLUDES := $(MM_JPEG_TEST_PATH) LOCAL_C_INCLUDES += $(MM_JPEG_TEST_PATH)/../inc diff --git a/camera/QCamera2/util/QCameraFlash.h b/camera/QCamera2/util/QCameraFlash.h index fa5e3ea..ede685b 100644 --- a/camera/QCamera2/util/QCameraFlash.h +++ b/camera/QCamera2/util/QCameraFlash.h @@ -31,7 +31,7 @@ #define __QCAMERA_FLASH_H__ // Camera dependencies -#include "camera_common.h" +#include "hardware/camera_common.h" extern "C" { #include "mm_camera_interface.h" diff --git a/camera/QCamera2/util/QCameraPerf.cpp b/camera/QCamera2/util/QCameraPerf.cpp index 83ba4cc..e143f0f 100644 --- a/camera/QCamera2/util/QCameraPerf.cpp +++ b/camera/QCamera2/util/QCameraPerf.cpp @@ -35,7 +35,7 @@ // System dependencies #include <stdlib.h> #include <dlfcn.h> - +#include <utils/Timers.h> // Camera dependencies #include "QCameraPerf.h" #include "QCameraTrace.h" diff --git a/camera/QCamera2/util/QCameraPerf.h b/camera/QCamera2/util/QCameraPerf.h index 0096139..aa3e6be 100644 --- a/camera/QCamera2/util/QCameraPerf.h +++ b/camera/QCamera2/util/QCameraPerf.h @@ -35,7 +35,7 @@ #include <utils/Mutex.h> // Camera dependencies -#include "power.h" +#include "hardware/power.h" typedef enum { ALL_CORES_ONLINE = 0x7FE, |