1a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 2a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang#ifeq ($(call is-board-platform,msm8960),true) 3a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangOLD_LOCAL_PATH := $(LOCAL_PATH) 4a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_PATH := $(call my-dir) 5a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 6a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wanginclude $(CLEAR_VARS) 7a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 8a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangDLOPEN_LIBMMCAMERA:=0 9a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 10a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_CFLAGS:= -DDLOPEN_LIBMMCAMERA=$(DLOPEN_LIBMMCAMERA) 11a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 12a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wangifeq ($(strip $(TARGET_USES_ION)),true) 13a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DUSE_ION 14a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wangendif 15a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 16a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_CFLAGS += -DCAMERA_ION_HEAP_ID=ION_CP_MM_HEAP_ID # 8660=SMI, Rest=EBI 17a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_CFLAGS += -DCAMERA_ZSL_ION_HEAP_ID=ION_CP_MM_HEAP_ID 18a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 19a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_CFLAGS+= -DHW_ENCODE 20a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_CFLAGS+= -DUSE_NEON_CONVERSION 21a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 22f5198bf2ec5f39e8a46552172124bd7411f5c63fShuzhen Wangifeq ($(TARGET_BOARD_PLATFORM),msm8960) 23a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 24a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 25a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 26a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 27a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 28f5198bf2ec5f39e8a46552172124bd7411f5c63fShuzhen Wangelse ifeq ($(TARGET_BOARD_PLATFORM),msm8660) 29a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_CAMERA_HEAP 30a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_CAMERA_HEAP # Don't Care 31a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_CAMERA_HEAP_ID # EBI 32a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_CAMERA_HEAP_ID 33a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 34a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wangelse 35a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_ADSP_HEAP 36a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_ADSP_HEAP # Don't Care 37a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=GRALLOC_USAGE_PRIVATE_UNCACHED #uncached 38a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wangendif 39a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 40a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_HAL_FILES := \ 41a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang src/QCameraHAL.cpp \ 42a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang src/QCameraHWI.cpp \ 43a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang src/QCameraStream.cpp \ 44a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang src/QCameraHWI_Metatags.cpp \ 45a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang src/QCameraStream_Preview.cpp 46a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 47a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_HAL_WRAPPER_FILES := ../wrapper/QualcommCamera.cpp 48a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 49a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_C_INCLUDES := \ 50a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_PATH)/../wrapper \ 51a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_PATH)/inc \ 52a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_PATH)/../../stack/mm-camera-interface/inc\ 53a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_PATH)/../../stack/mm-jpeg-interface/inc\ 54a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(TARGET_OUT_INTERMEDIATES)/include/mm-camera-interface_badger \ 55a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 56a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_C_INCLUDES += hardware/qcom/display/libgralloc \ 57a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang hardware/qcom/display/libgenlock \ 58a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang hardware/qcom/media/libstagefrighthw \ 59a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang system/media/camera/include 60a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 61a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang# if debug service layer and up , use stub camera! 62a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_C_INCLUDES += \ 63a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang frameworks/base/services/camera/libcameraservice 64a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 65a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_SRC_FILES := \ 66a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_HAL_WRAPPER_FILES) \ 67a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang $(LOCAL_HAL_FILES) 68a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 69a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_SHARED_LIBRARIES := libutils libui libcamera_client liblog libcutils 70a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_SHARED_LIBRARIES += libmmcamera_interface 71a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_SHARED_LIBRARIES+= libgenlock libbinder libcamera_metadata 72a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 73a7716f9683138fcb2f9350ba9125c67d2bb4f1a4Elliott HughesLOCAL_CFLAGS += -include bionic/libc/include/sys/socket.h 74a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 75a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw 76a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_MODULE:= camera.$(TARGET_BOARD_PLATFORM) 77a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_MODULE_TAGS := optional 78a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wanginclude $(BUILD_SHARED_LIBRARY) 79a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 80a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen WangLOCAL_PATH := $(OLD_LOCAL_PATH) 81a46eb3014aec9c8a6ed170f2a99b498100d6f392Shuzhen Wang 82