You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
188 lines
6.5 KiB
188 lines
6.5 KiB
#===============================================================================
|
|
# export variables
|
|
#===============================================================================
|
|
ifeq ($(CONFIG_SOCT_KMOD_CFLAGS),)
|
|
ccflags-y += $(CONFIG_SOCT_KMOD_CFLAGS)
|
|
endif
|
|
|
|
#===============================================================================
|
|
# local variable
|
|
#===============================================================================
|
|
ccflags-y += -Idrivers/drv/ioctl_inc/keyslot
|
|
ccflags-y += -Idrivers/drv/ioctl_inc/generic
|
|
ccflags-y += -Idrivers/drv/ioctl_inc/common
|
|
ccflags-y += -Idrivers/drv/ext_inc/base
|
|
ccflags-y += -Idrivers/drv/ext_inc/cipher
|
|
ccflags-y += -Idrivers/drv/ext_inc/osal
|
|
ccflags-y += -Idrivers/drv/ext_inc/common
|
|
ccflags-y += -Idrivers/drv/ext_inc/keyslot
|
|
ccflags-y += -Idrivers/drv/ext_inc/klad
|
|
ccflags-y += -Idrivers/drv/ext_inc/dftevent
|
|
ccflags-y += -Idrivers/drv/common/include
|
|
ccflags-y += -Iinclude/klad/
|
|
ccflags-y += -Idrivers/huanglong/tee/tee_tz/tzdriver
|
|
|
|
ccflags-y += -fstack-protector-all
|
|
ccflags-y += -D_FORTIFY_SOURCE=2
|
|
ccflags-y += -Wl,-z,relro
|
|
ccflags-y += -z now
|
|
ccflags-y += -Wl,-z,noexecstack
|
|
ccflags-y += -DCONFIG_SOCT_CIPHER_FMEA_SUPPORT
|
|
ccflags-y += -DCRYPTO_ERROR_ENV=0x1
|
|
|
|
MODNAME := soc_cipher
|
|
|
|
ifeq ($(CONFIG_SOCT_DRV_BUILDIN),y)
|
|
obj-$(CONFIG_SOCT_KEYSLOT_SUPPORT) += $(MODNAME).o
|
|
else
|
|
obj-m += $(MODNAME).o
|
|
endif
|
|
|
|
CIPHER_DIR := drivers/drv/cipher
|
|
OPENSOURCE_MBEDTLS_DIR_ABSOLUTES := $(VENDOR_DIR)/open_source/mbedtls
|
|
OPENSOURCE_MBEDTLS_DIR_RELATIVE := ../../../../open_source/mbedtls
|
|
COMMON_DIR_RELATIVE := ../../../bootloader/source/drivers/cipher_common
|
|
COMMON_DIR_ABSOLUTES := $(VENDOR_DIR)/huanglong/bootloader/source/drivers/cipher_common
|
|
|
|
CIPHER_OBJS-y :=
|
|
CIPHER_CFLAGS :=
|
|
|
|
CRYPTO_UT_TEST_ENABLE := n
|
|
CRYPTO_DTS_TEST_ENABLE := n
|
|
|
|
ifneq ($(findstring $(CONFIG_SOCT_CHIP_TYPE), "reserved9" "reserved13"),)
|
|
CRYPTO_CHIP_NAME := reserved9
|
|
endif
|
|
|
|
ifneq ($(findstring $(CONFIG_SOCT_CHIP_TYPE), "reserved19" "hi3751v811" "reserved17"),)
|
|
CRYPTO_CHIP_NAME := reserved19
|
|
endif
|
|
|
|
ifeq ($(CRYPTO_CHIP_NAME), reserved9)
|
|
CRYPTO_TRNG_VERSION := v2
|
|
CRYPTO_SYMC_VERSION := v2
|
|
CRYPTO_HASH_VERSION := v2
|
|
CRYPTO_PKE_VERSION := v2
|
|
CRYPTO_HDCP_VERSION := v2
|
|
CIPHER_CFLAGS += -DCONFIG_CRYPTO_CHIP_RESERVED9
|
|
endif
|
|
|
|
ifeq ($(CRYPTO_CHIP_NAME), reserved19)
|
|
CRYPTO_TRNG_VERSION := v2
|
|
CRYPTO_SYMC_VERSION := v1
|
|
CRYPTO_HASH_VERSION := v1
|
|
CRYPTO_PKE_VERSION := v1
|
|
CRYPTO_HDCP_VERSION := v1
|
|
CIPHER_CFLAGS += -DCONFIG_CRYPTO_CHIP_RESERVED19
|
|
endif
|
|
|
|
# Platform
|
|
CIPHER_CFLAGS += -I$(CIPHER_DIR)
|
|
|
|
CIPHER_CFLAGS += -I$(CIPHER_DIR)/include
|
|
|
|
# HDCP
|
|
CIPHER_OBJS-y += hdcp/hal_hdcp_$(CRYPTO_HDCP_VERSION).o
|
|
CIPHER_OBJS-y += hdcp/hal_hdcp_common.o
|
|
CIPHER_OBJS-y += hdcp/drv_hdcp.o
|
|
CIPHER_OBJS-y += hdcp/kapi_hdcp.o
|
|
CIPHER_CFLAGS += -I$(CIPHER_DIR)/hdcp
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/hal_code/spacc_$(CRYPTO_SYMC_VERSION)
|
|
CIPHER_CFLAGS += -DCONFIG_CRYPTO_CHIP_HDCP_SUPPORT
|
|
|
|
|
|
# Crypto_OSAL-Linux
|
|
CIPHER_OBJS-y += crypto_osal/crypto_osal_lib.o
|
|
CIPHER_OBJS-y += crypto_osal/crypto_osal_tee.o
|
|
CIPHER_OBJS-y += crypto_osal/crypto_drv_cipher_ext.o
|
|
CIPHER_CFLAGS += -I$(CIPHER_DIR)/crypto_osal
|
|
|
|
# Driver-Common
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/crypto_drv_common.o
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/drv_code
|
|
|
|
# Driver-Dispatch
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/dispatch_code/crypto_dispatch.o
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/dispatch_code
|
|
|
|
# Driver-Drv
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_pbkdf2_soft.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_hash.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_trng.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_symc.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_symc_mac_soft.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_cenc_hard.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_pke.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_pke_rsa.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_pke_ecc.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/drv_pke_ecc_curve.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/drv_code/fmea/fmea.o
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/drv_code
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/drv_code/fmea
|
|
|
|
# Driver-Init
|
|
CIPHER_OBJS-y += init/crypto_drv_init.o
|
|
CIPHER_OBJS-y += init/crypto_proc.o
|
|
|
|
# Driver-Kapi
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/kapi_code/kapi_hash.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/kapi_code/kapi_trng.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/kapi_code/kapi_symc.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/kapi_code/kapi_pke.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/kapi_code/kapi_init.o
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/kapi_code
|
|
|
|
# HAL-SPACC
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/hal_code/spacc_$(CRYPTO_HASH_VERSION)/hal_hash.o
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/hal_code/spacc_$(CRYPTO_SYMC_VERSION)/hal_symc.o
|
|
|
|
# HAL-TRNG
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/hal_code/trng_v2/hal_trng.o
|
|
|
|
# HAL-PKE
|
|
CIPHER_OBJS-y += $(COMMON_DIR_RELATIVE)/hal_code/pke_$(CRYPTO_PKE_VERSION)/hal_pke.o
|
|
|
|
# Include
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/include/common_include
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/include/hal_include
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/include/kapi_include
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/include/drv_include
|
|
CIPHER_CFLAGS += -I$(COMMON_DIR_ABSOLUTES)/include/ioctl_include
|
|
|
|
# ext include
|
|
DRIVERS_DIR := drivers/drv
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/include/klad
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/include/keyslot
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/ioctl_inc/klad
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/ext_inc/klad
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/ioctl_inc/keyslot
|
|
CIPHER_CFLAGS += -I$(DRIVERS_DIR)/ext_inc/keyslot
|
|
|
|
# Debug
|
|
# CIPHER_CFLAGS += -DCRYPTO_DISPATCH_FUNC_TRACE_ENABLE
|
|
# CIPHER_CFLAGS += -DCRYPTO_KAPI_FUNC_TRACE_ENABLE
|
|
# CIPHER_CFLAGS += -DCRYPTO_HAL_FUNC_TRACE_ENABLE
|
|
# CIPHER_CFLAGS += -DCRYPTO_SYMC_HAL_NODE_DEBUG_ENABLE
|
|
# CIPHER_CFLAGS += -DCRYPTO_DRV_FUNC_TRACE_ENABLE
|
|
|
|
ifeq ($(CONFIG_DEBUG_ENABLE), y)
|
|
## DISPATCH
|
|
CIPHER_CFLAGS += -DCRYPTO_DISPATCH_FUNC_TRACE_ENABLE
|
|
|
|
## KAPI
|
|
|
|
## DRV
|
|
|
|
## HAL
|
|
CIPHER_CFLAGS += -DCRYPTO_HAL_FUNC_TRACE_ENABLE
|
|
CIPHER_CFLAGS += -DCRYPTO_SYMC_HAL_NODE_DEBUG_ENABLE
|
|
CIPHER_CFLAGS += -DCRYPTO_SYMC_HAL_DEBUG_ENABLE
|
|
endif
|
|
|
|
|
|
$(MODNAME)-objs-y += $(CIPHER_OBJS-y)
|
|
ccflags-y += $(CIPHER_CFLAGS)
|
|
|
|
|
|
$(MODNAME)-objs := $($(MODNAME)-objs-y)
|