aboutsummaryrefslogtreecommitdiff
path: root/camera
diff options
context:
space:
mode:
authorShukla Mradul <mradul_shukla@codeaurora.org>2016-05-21 14:32:30 +0530
committerDavide Garberi <dade.garberi@gmail.com>2018-01-19 14:09:15 +0100
commit68478ce3e332bcb008c55f793adb11b88f63ad03 (patch)
treed907aa85ee4ec9133ab0e9fa8732a8f1ef05d273 /camera
parentc738fd68836e01567b19868f7e3a586f15c6dc98 (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.mk13
-rw-r--r--camera/QCamera2/HAL3/QCamera3Channel.cpp3
-rw-r--r--camera/QCamera2/HAL3/QCamera3Channel.h2
-rw-r--r--camera/QCamera2/HAL3/QCamera3HALHeader.h2
-rw-r--r--camera/QCamera2/HAL3/QCamera3HWI.cpp2
-rw-r--r--camera/QCamera2/HAL3/QCamera3HWI.h2
-rw-r--r--camera/QCamera2/HAL3/QCamera3Mem.h2
-rw-r--r--camera/QCamera2/HAL3/QCamera3PostProc.h2
-rw-r--r--camera/QCamera2/HAL3/QCamera3VendorTags.h2
-rw-r--r--camera/QCamera2/QCamera2Factory.cpp67
-rw-r--r--camera/QCamera2/QCamera2Factory.h2
-rw-r--r--camera/QCamera2/stack/common/cam_list.h1
-rw-r--r--camera/QCamera2/stack/mm-camera-interface/inc/mm_camera.h2
-rw-r--r--camera/QCamera2/stack/mm-camera-test/src/mm_qcamera_socket.c2
-rw-r--r--camera/QCamera2/stack/mm-jpeg-interface/test/Android.mk4
-rw-r--r--camera/QCamera2/util/QCameraFlash.h2
-rw-r--r--camera/QCamera2/util/QCameraPerf.cpp2
-rw-r--r--camera/QCamera2/util/QCameraPerf.h2
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,