1OLD_LOCAL_PATH := $(LOCAL_PATH) 2LOCAL_PATH := $(call my-dir) 3 4include $(CLEAR_VARS) 5 6DLOPEN_LIBMMCAMERA:=0 7 8LOCAL_CFLAGS:= -DDLOPEN_LIBMMCAMERA=$(DLOPEN_LIBMMCAMERA) 9 10ifeq ($(strip $(TARGET_USES_ION)),true) 11 LOCAL_CFLAGS += -DUSE_ION 12endif 13 14LOCAL_CFLAGS += -DCAMERA_ION_HEAP_ID=ION_CP_MM_HEAP_ID # 8660=SMI, Rest=EBI 15LOCAL_CFLAGS += -DCAMERA_ZSL_ION_HEAP_ID=ION_CP_MM_HEAP_ID 16 17LOCAL_CFLAGS+= -DHW_ENCODE 18LOCAL_CFLAGS+= -DUSE_NEON_CONVERSION 19 20ifeq ($(TARGET_BOARD_PLATFORM),msm8974) 21 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 22 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 23 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 24 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 25 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 26 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=9 27else ifeq ($(filter $(TARGET_BOARD_PLATFORM), apq8084 msm8084), $(TARGET_BOARD_PLATFORM)) 28 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 29 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 30 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 31 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 32 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 33 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=9 34else ifeq ($(TARGET_BOARD_PLATFORM),msm8226) 35 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 36 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 37 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 38 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 39 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 40 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=9 41else ifeq ($(TARGET_BOARD_PLATFORM),msm8610) 42 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 43 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 44 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 45 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 46 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 47 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=9 48else ifeq ($(TARGET_BOARD_PLATFORM),msm8960) 49 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_MM_HEAP 50 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP 51 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 52 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 53 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 54 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=5 55else ifneq (,$(filter msm8660,$(TARGET_BOARD_PLATFORM))) 56 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_CAMERA_HEAP 57 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_IOMMU_HEAP # Don't Care 58 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID # EBI 59 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_IOMMU_HEAP_ID 60 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=0 61 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=5 62else 63 LOCAL_CFLAGS += -DCAMERA_GRALLOC_HEAP_ID=GRALLOC_USAGE_PRIVATE_CAMERA_HEAP 64 LOCAL_CFLAGS += -DCAMERA_GRALLOC_FALLBACK_HEAP_ID=GRALLOC_USAGE_PRIVATE_CAMERA_HEAP # Don't Care 65 LOCAL_CFLAGS += -DCAMERA_GRALLOC_CACHING_ID=GRALLOC_USAGE_PRIVATE_UNCACHED #uncached 66 LOCAL_CFLAGS += -DCAMERA_ION_FALLBACK_HEAP_ID=ION_CAMERA_HEAP_ID 67 LOCAL_CFLAGS += -DCAMERA_ZSL_ION_FALLBACK_HEAP_ID=ION_CAMERA_HEAP_ID 68 LOCAL_CFLAGS += -DNUM_RECORDING_BUFFERS=5 69endif 70 71LOCAL_HAL_FILES := \ 72 src/QCameraHAL.cpp \ 73 src/QCameraHWI_Parm.cpp \ 74 src/QCameraHWI.cpp \ 75 src/QCameraHWI_Preview.cpp \ 76 src/QCameraHWI_Record.cpp \ 77 src/QCameraHWI_Still.cpp \ 78 src/QCameraHWI_Rdi.cpp \ 79 src/QCameraHWI_Mem.cpp \ 80 src/QCameraParameters.cpp\ 81 src/QCameraStream.cpp\ 82 ../usbcamcore/src/QualcommUsbCamera.cpp\ 83 ../usbcamcore/src/QCameraMjpegDecode.cpp\ 84 ../usbcamcore/src/QCameraUsbParm.cpp 85 86LOCAL_HAL_WRAPPER_FILES := ../wrapper/QualcommCamera.cpp 87 88LOCAL_C_INCLUDES := \ 89 $(LOCAL_PATH)/../wrapper \ 90 $(LOCAL_PATH)/inc \ 91 $(LOCAL_PATH)/../usbcamcore/inc\ 92 $(LOCAL_PATH)/../../stack/mm-camera-interface/inc \ 93 $(LOCAL_PATH)/../../stack/mm-jpeg-interface/inc \ 94 $(LOCAL_PATH)/../../../ \ 95 $(TARGET_OUT_INTERMEDIATES)/include/mm-camera-interface \ 96# $(TARGET_OUT_INTERMEDIATES)/include/mm-jpeg-interface\ 97 98# may need remove this includes 99LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-camera 100#LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-still 101LOCAL_C_INCLUDES += $(TARGET_OUT_HEADERS)/mm-still/jpeg 102#end 103 104LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include 105LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include/media 106LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr 107 108LOCAL_C_INCLUDES += hardware/qcom/display/libgralloc \ 109 hardware/qcom/display/libgenlock \ 110 hardware/qcom/media/msm8974/libstagefrighthw 111 112# if debug service layer and up , use stub camera! 113LOCAL_C_INCLUDES += \ 114 frameworks/base/services/camera/libcameraservice 115 116LOCAL_SRC_FILES := \ 117 $(LOCAL_HAL_WRAPPER_FILES) \ 118 $(LOCAL_HAL_FILES) 119 120LOCAL_SHARED_LIBRARIES := libutils libui libcamera_client liblog libcutils libmmjpeg 121LOCAL_SHARED_LIBRARIES += libmmcamera_interface 122LOCAL_SHARED_LIBRARIES += libgenlock libbinder libmmjpeg_interface libhardware 123 124LOCAL_CFLAGS += -include bionic/libc/kernel/common/linux/socket.h 125 126LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw 127LOCAL_MODULE:= camera.$(TARGET_BOARD_PLATFORM) 128LOCAL_MODULE_TAGS := optional 129include $(BUILD_SHARED_LIBRARY) 130 131LOCAL_PATH := $(OLD_LOCAL_PATH) 132 133