diff --git a/Android.mk b/Android.mk index a70384d8c5..30abe6ea11 100644 --- a/Android.mk +++ b/Android.mk @@ -12,6 +12,34 @@ ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true) endif endif +ifeq ($(ENABLE_SECUREMSM_DLKM), true) + ENABLE_QCRYPTO_DLKM := true + ENABLE_HDCP_QSEECOM_DLKM := true + ENABLE_QRNG_DLKM := true + ifeq ($(TARGET_USES_SMMU_PROXY), true) + ENABLE_SMMU_PROXY := true + endif #TARGET_USES_SMMU_PROXY +endif #ENABLE_SECUREMSM_DLKM + +ifeq ($(ENABLE_SECUREMSM_QTEE_DLKM), true) + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := true + #Enable Qseecom if TARGET_ENABLE_QSEECOM or TARGET_BOARD_AUTO is set to true + ifneq (, $(filter true, $(TARGET_ENABLE_QSEECOM) $(TARGET_BOARD_AUTO))) + ENABLE_QSEECOM_DLKM := true + endif #TARGET_ENABLE_QSEECOM OR TARGET_BOARD_AUTO +endif #ENABLE_SECUREMSM_QTEE_DLKM + +ifeq ($(TARGET_USES_GY), true) + ENABLE_QCRYPTO_DLKM := false + ENABLE_HDCP_QSEECOM_DLKM := false + ENABLE_QRNG_DLKM := false + ENABLE_SMMU_PROXY := false + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := false + ENABLE_QSEECOM_DLKM := false +endif #TARGET_USES_GY + LOCAL_PATH := $(call my-dir) DLKM_DIR := $(TOP)/device/qcom/common/dlkm @@ -43,7 +71,7 @@ LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk endif -ifeq ($(ENABLE_SECUREMSM_QTEE_DLKM), true) +ifeq ($(ENABLE_SMCINVOKE_DLKM), true) include $(CLEAR_VARS) #LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := smcinvoke_dlkm.ko @@ -53,8 +81,10 @@ LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_HEADER_LIBRARIES := smcinvoke_kernel_headers LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk +endif #ENABLE_SMCINVOKE_DLKM ################################################### ################################################### +ifeq ($(ENABLE_TZLOG_DLKM), true) include $(CLEAR_VARS) LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := tz_log_dlkm.ko @@ -63,7 +93,9 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk +endif #ENABLE_TZLOG_DLKM +ifeq ($(ENABLE_QSEECOM_DLKM), true) include $(CLEAR_VARS) LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := qseecom_dlkm.ko @@ -72,11 +104,11 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk -endif #ENABLE_SECUREMSM_QTEE_DLKM +endif #ENABLE_QSEECOM_DLKM ################################################### ################################################### -ifeq ($(ENABLE_SECUREMSM_DLKM), true) +ifeq ($(ENABLE_QCRYPTO_DLKM), true) include $(CLEAR_VARS) LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := qce50_dlkm.ko @@ -105,8 +137,10 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk +endif #ENABLE_QCRYPTO_DLKM ################################################### ################################################### +ifeq ($(ENABLE_HDCP_QSEECOM_DLKM), true) include $(CLEAR_VARS) LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := hdcp_qseecom_dlkm.ko @@ -115,8 +149,10 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk +endif #ENABLE_HDCP_QSEECOM_DLKM ################################################### ################################################### +ifeq ($(ENABLE_QRNG_DLKM), true) include $(CLEAR_VARS) LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_MODULE := qrng_dlkm.ko @@ -125,9 +161,10 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk +endif #ENABLE_QRNG_DLKM ################################################### ################################################### -ifeq ($(TARGET_USES_SMMU_PROXY), true) +ifeq ($(ENABLE_SMMU_PROXY), true) include $(CLEAR_VARS) #LOCAL_SRC_FILES := $(SSG_SRC_FILES) LOCAL_EXPORT_KO_INCLUDE_DIRS := $(LOCAL_PATH)/smmu-proxy/ $(LOCAL_PATH)/ @@ -137,7 +174,4 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_DEBUG_ENABLE := true LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT) include $(DLKM_DIR)/Build_external_kernelmodule.mk -endif -################################################### -################################################### -endif #COMPILE_SECUREMSM_DLKM check +endif #ENABLE_SMMU_PROXY diff --git a/securemsm_kernel_product_board.mk b/securemsm_kernel_product_board.mk index 1889eb691a..8f10f7ed8a 100644 --- a/securemsm_kernel_product_board.mk +++ b/securemsm_kernel_product_board.mk @@ -13,24 +13,59 @@ ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true) endif ifeq ($(ENABLE_SECUREMSM_DLKM), true) -PRODUCT_PACKAGES += qcedev-mod_dlkm.ko -PRODUCT_PACKAGES += qce50_dlkm.ko -PRODUCT_PACKAGES += qcrypto-msm_dlkm.ko -PRODUCT_PACKAGES += hdcp_qseecom_dlkm.ko -PRODUCT_PACKAGES += qrng_dlkm.ko - -ifeq ($(TARGET_USES_SMMU_PROXY), true) -PRODUCT_PACKAGES += smmu_proxy_dlkm.ko -endif + ENABLE_QCRYPTO_DLKM := true + ENABLE_HDCP_QSEECOM_DLKM := true + ENABLE_QRNG_DLKM := true + ifeq ($(TARGET_USES_SMMU_PROXY), true) + ENABLE_SMMU_PROXY := true + endif #TARGET_USES_SMMU_PROXY endif #ENABLE_SECUREMSM_DLKM ifeq ($(ENABLE_SECUREMSM_QTEE_DLKM), true) -PRODUCT_PACKAGES += smcinvoke_dlkm.ko -PRODUCT_PACKAGES += tz_log_dlkm.ko -#Enable Qseecom if TARGET_ENABLE_QSEECOM or TARGET_BOARD_AUTO is set to true -ifneq (, $(filter true, $(TARGET_ENABLE_QSEECOM) $(TARGET_BOARD_AUTO))) -PRODUCT_PACKAGES += qseecom_dlkm.ko -endif #TARGET_ENABLE_QSEECOM OR TARGET_BOARD_AUTO + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := true + #Enable Qseecom if TARGET_ENABLE_QSEECOM or TARGET_BOARD_AUTO is set to true + ifneq (, $(filter true, $(TARGET_ENABLE_QSEECOM) $(TARGET_BOARD_AUTO))) + ENABLE_QSEECOM_DLKM := true + endif #TARGET_ENABLE_QSEECOM OR TARGET_BOARD_AUTO endif #ENABLE_SECUREMSM_QTEE_DLKM +ifeq ($(TARGET_USES_GY), true) + ENABLE_QCRYPTO_DLKM := false + ENABLE_HDCP_QSEECOM_DLKM := false + ENABLE_QRNG_DLKM := false + ENABLE_SMMU_PROXY := false + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := false + ENABLE_QSEECOM_DLKM := false +endif #TARGET_USES_GY +ifeq ($(ENABLE_QCRYPTO_DLKM), true) +PRODUCT_PACKAGES += qcedev-mod_dlkm.ko +PRODUCT_PACKAGES += qce50_dlkm.ko +PRODUCT_PACKAGES += qcrypto-msm_dlkm.ko +endif #ENABLE_QCRYPTO_DLKM + +ifeq ($(ENABLE_HDCP_QSEECOM_DLKM), true) +PRODUCT_PACKAGES += hdcp_qseecom_dlkm.ko +endif #ENABLE_HDCP_QSEECOM_DLKM + +ifeq ($(ENABLE_QRNG_DLKM), true) +PRODUCT_PACKAGES += qrng_dlkm.ko +endif #ENABLE_QRNG_DLKM + +ifeq ($(ENABLE_SMMU_PROXY), true) +PRODUCT_PACKAGES += smmu_proxy_dlkm.ko +endif #ENABLE_SMMU_PROXY + +ifeq ($(ENABLE_SMCINVOKE_DLKM), true) +PRODUCT_PACKAGES += smcinvoke_dlkm.ko +endif #ENABLE_SMCINVOKE_DLKM + +ifeq ($(ENABLE_TZLOG_DLKM), true) +PRODUCT_PACKAGES += tz_log_dlkm.ko +endif #ENABLE_TZLOG_DLKM + +ifeq ($(ENABLE_QSEECOM_DLKM), true) +PRODUCT_PACKAGES += qseecom_dlkm.ko +endif #ENABLE_QSEECOM_DLKM diff --git a/securemsm_kernel_vendor_board.mk b/securemsm_kernel_vendor_board.mk index 55406682d5..77d6e188a9 100644 --- a/securemsm_kernel_vendor_board.mk +++ b/securemsm_kernel_vendor_board.mk @@ -11,32 +11,65 @@ ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true) endif ifeq ($(ENABLE_SECUREMSM_DLKM), true) -BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qcedev-mod_dlkm.ko \ - $(KERNEL_MODULES_OUT)/qcrypto-msm_dlkm.ko \ - $(KERNEL_MODULES_OUT)/qce50_dlkm.ko \ - $(KERNEL_MODULES_OUT)/hdcp_qseecom_dlkm.ko \ - $(KERNEL_MODULES_OUT)/qrng_dlkm.ko \ - -BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/hdcp_qseecom_dlkm.ko - -ifeq ($(TARGET_USES_SMMU_PROXY), true) -BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/smmu_proxy_dlkm.ko -endif + ENABLE_QCRYPTO_DLKM := true + ENABLE_HDCP_QSEECOM_DLKM := true + ENABLE_QRNG_DLKM := true + ifeq ($(TARGET_USES_SMMU_PROXY), true) + ENABLE_SMMU_PROXY := true + endif #TARGET_USES_SMMU_PROXY +endif #ENABLE_SECUREMSM_DLKM ifeq ($(ENABLE_SECUREMSM_QTEE_DLKM), true) + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := true + #Enable Qseecom if TARGET_ENABLE_QSEECOM or TARGET_BOARD_AUTO is set to true + ifneq (, $(filter true, $(TARGET_ENABLE_QSEECOM) $(TARGET_BOARD_AUTO))) + ENABLE_QSEECOM_DLKM := true + endif #TARGET_ENABLE_QSEECOM OR TARGET_BOARD_AUTO +endif #ENABLE_SECUREMSM_QTEE_DLKM -BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/smcinvoke_dlkm.ko \ - $(KERNEL_MODULES_OUT)/tz_log_dlkm.ko \ +ifeq ($(TARGET_USES_GY), true) + ENABLE_QCRYPTO_DLKM := false + ENABLE_HDCP_QSEECOM_DLKM := false + ENABLE_QRNG_DLKM := false + ENABLE_SMMU_PROXY := false + ENABLE_SMCINVOKE_DLKM := true + ENABLE_TZLOG_DLKM := false + ENABLE_QSEECOM_DLKM := false +endif #TARGET_USES_GY -BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/tz_log_dlkm.ko \ - $(KERNEL_MODULES_OUT)/smcinvoke_dlkm.ko \ +ifeq ($(ENABLE_QCRYPTO_DLKM), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qcedev-mod_dlkm.ko \ + $(KERNEL_MODULES_OUT)/qcrypto-msm_dlkm.ko \ + $(KERNEL_MODULES_OUT)/qce50_dlkm.ko +endif #ENABLE_QCRYPTO_DLKM +ifeq ($(ENABLE_QRNG_DLKM), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qrng_dlkm.ko +endif #ENABLE_QRNG_DLKM + +ifeq ($(ENABLE_HDCP_QSEECOM_DLKM), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/hdcp_qseecom_dlkm.ko +BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/hdcp_qseecom_dlkm.ko +endif #ENABLE_HDCP_QSEECOM_DLKM + +ifeq ($(ENABLE_SMMU_PROXY), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/smmu_proxy_dlkm.ko +endif #ENABLE_SMMU_PROXY + +ifeq ($(ENABLE_SMCINVOKE_DLKM), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/smcinvoke_dlkm.ko +BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/smcinvoke_dlkm.ko BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/smcinvoke_dlkm.ko +endif #ENABLE_SMCINVOKE_DLKM +ifeq ($(ENABLE_TZLOG_DLKM), true) +BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/tz_log_dlkm.ko +BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/tz_log_dlkm.ko +endif # ENABLE_TZLOG_DLKM +ifeq ($(ENABLE_QSEECOM_DLKM), true) BOARD_VENDOR_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qseecom_dlkm.ko BOARD_VENDOR_RAMDISK_KERNEL_MODULES += $(KERNEL_MODULES_OUT)/qseecom_dlkm.ko BOARD_VENDOR_RAMDISK_RECOVERY_KERNEL_MODULES_LOAD += $(KERNEL_MODULES_OUT)/qseecom_dlkm.ko - -endif #ENABLE_SECUREMSM_QTEE_DLKM -endif #ENABLE_SECUREMSM_DLKM +endif #ENABLE_QSEECOM_DLKM