diff options
author | Gilad Ben-Yossef <gilad.benyossef@arm.com> | 2019-05-14 14:47:36 +0300 |
---|---|---|
committer | Gilad Ben-Yossef <gilad.benyossef@arm.com> | 2019-07-25 13:38:07 +0300 |
commit | 76f3c7dc8b7c78f5f73d1b6487fac5cc5f320ed4 (patch) | |
tree | e769f1b312eb3dfca1735d45d6a86bbb14b2eaff | |
parent | 36ec2bb0bcb43b012c1211d73665eebc6012fb48 (diff) | |
download | platform_external_arm-trusted-firmware-76f3c7dc8b7c78f5f73d1b6487fac5cc5f320ed4.tar.gz platform_external_arm-trusted-firmware-76f3c7dc8b7c78f5f73d1b6487fac5cc5f320ed4.tar.bz2 platform_external_arm-trusted-firmware-76f3c7dc8b7c78f5f73d1b6487fac5cc5f320ed4.zip |
cryptocell: add product version awareness support
Add support for multiple Cryptocell revisions which
use different APIs.
This commit only refactors the existing code in preperation to the addition
of another Cryptocell revisions later on.
Signed-off-by: Gilad Ben-Yossef <gilad.benyossef@arm.com>
Change-Id: I16d80b31afb6edd56dc645fee5ea619cc74f09b6
-rw-r--r-- | drivers/auth/cryptocell/712/cryptocell_crypto.c (renamed from drivers/auth/cryptocell/cryptocell_crypto.c) | 14 | ||||
-rw-r--r-- | drivers/auth/cryptocell/712/cryptocell_plat_helpers.c (renamed from drivers/auth/cryptocell/cryptocell_plat_helpers.c) | 6 | ||||
-rw-r--r-- | drivers/auth/cryptocell/cryptocell_crypto.mk | 17 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/cc_crypto_boot_defs.h (renamed from include/drivers/arm/cryptocell/cc_crypto_boot_defs.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/cc_pal_sb_plat.h (renamed from include/drivers/arm/cryptocell/cc_pal_sb_plat.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/cc_pal_types.h (renamed from include/drivers/arm/cryptocell/cc_pal_types.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/cc_pal_types_plat.h (renamed from include/drivers/arm/cryptocell/cc_pal_types_plat.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/cc_sec_defs.h (renamed from include/drivers/arm/cryptocell/cc_sec_defs.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/crypto_driver.h (renamed from include/drivers/arm/cryptocell/crypto_driver.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/nvm.h (renamed from include/drivers/arm/cryptocell/nvm.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/nvm_otp.h (renamed from include/drivers/arm/cryptocell/nvm_otp.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/rsa.h (renamed from include/drivers/arm/cryptocell/rsa.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/sbrom_bsv_api.h (renamed from include/drivers/arm/cryptocell/sbrom_bsv_api.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/secureboot_base_func.h (renamed from include/drivers/arm/cryptocell/secureboot_base_func.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/secureboot_gen_defs.h (renamed from include/drivers/arm/cryptocell/secureboot_gen_defs.h) | 0 | ||||
-rw-r--r-- | include/drivers/arm/cryptocell/712/util.h (renamed from include/drivers/arm/cryptocell/util.h) | 0 |
16 files changed, 23 insertions, 14 deletions
diff --git a/drivers/auth/cryptocell/cryptocell_crypto.c b/drivers/auth/cryptocell/712/cryptocell_crypto.c index 6bf27a95e..395c55085 100644 --- a/drivers/auth/cryptocell/cryptocell_crypto.c +++ b/drivers/auth/cryptocell/712/cryptocell_crypto.c @@ -11,19 +11,19 @@ #include <arch_helpers.h> #include <common/debug.h> -#include <drivers/arm/cryptocell/crypto_driver.h> -#include <drivers/arm/cryptocell/rsa.h> -#include <drivers/arm/cryptocell/sbrom_bsv_api.h> -#include <drivers/arm/cryptocell/secureboot_base_func.h> -#include <drivers/arm/cryptocell/secureboot_gen_defs.h> -#include <drivers/arm/cryptocell/util.h> +#include <drivers/arm/cryptocell/712/crypto_driver.h> +#include <drivers/arm/cryptocell/712/rsa.h> +#include <drivers/arm/cryptocell/712/sbrom_bsv_api.h> +#include <drivers/arm/cryptocell/712/secureboot_base_func.h> +#include <drivers/arm/cryptocell/712/secureboot_gen_defs.h> +#include <drivers/arm/cryptocell/712/util.h> #include <drivers/auth/crypto_mod.h> #include <drivers/auth/mbedtls/mbedtls_common.h> #include <lib/utils.h> #include <mbedtls/oid.h> -#define LIB_NAME "CryptoCell SBROM" +#define LIB_NAME "CryptoCell 712 SBROM" #define RSA_SALT_LEN 32 #define RSA_EXPONENT 65537 diff --git a/drivers/auth/cryptocell/cryptocell_plat_helpers.c b/drivers/auth/cryptocell/712/cryptocell_plat_helpers.c index 1bd9c6bc7..53d77dbe1 100644 --- a/drivers/auth/cryptocell/cryptocell_plat_helpers.c +++ b/drivers/auth/cryptocell/712/cryptocell_plat_helpers.c @@ -14,9 +14,9 @@ #include <tools_share/tbbr_oid.h> #include <common/debug.h> -#include <drivers/arm/cryptocell/sbrom_bsv_api.h> -#include <drivers/arm/cryptocell/nvm.h> -#include <drivers/arm/cryptocell/nvm_otp.h> +#include <drivers/arm/cryptocell/712/sbrom_bsv_api.h> +#include <drivers/arm/cryptocell/712/nvm.h> +#include <drivers/arm/cryptocell/712/nvm_otp.h> /* * Return the ROTPK hash diff --git a/drivers/auth/cryptocell/cryptocell_crypto.mk b/drivers/auth/cryptocell/cryptocell_crypto.mk index 27c1e8525..d42a2e7e1 100644 --- a/drivers/auth/cryptocell/cryptocell_crypto.mk +++ b/drivers/auth/cryptocell/cryptocell_crypto.mk @@ -17,11 +17,20 @@ ifeq (${CCSBROM_LIB_PATH},) $(error Error: CCSBROM_LIB_PATH not set) endif -TF_LDFLAGS += -L$(CCSBROM_LIB_PATH) -LDLIBS += -lcc_712sbromx509 +CRYPTOCELL_VERSION ?= 712 +ifeq (${CRYPTOCELL_VERSION},712) + CCSBROM_LIB_FILENAME := cc_712sbromx509 +else + $(error Error: CRYPTOCELL_VERSION set to invalid version) +endif + +CRYPTOCELL_SRC_DIR := drivers/auth/cryptocell/${CRYPTOCELL_VERSION}/ -CRYPTOCELL_SOURCES := drivers/auth/cryptocell/cryptocell_crypto.c \ - drivers/auth/cryptocell/cryptocell_plat_helpers.c +CRYPTOCELL_SOURCES := ${CRYPTOCELL_SRC_DIR}/cryptocell_crypto.c \ + ${CRYPTOCELL_SRC_DIR}/cryptocell_plat_helpers.c + +TF_LDFLAGS += -L$(CCSBROM_LIB_PATH) +LDLIBS += -l$(CCSBROM_LIB_FILENAME) BL1_SOURCES += ${CRYPTOCELL_SOURCES} BL2_SOURCES += ${CRYPTOCELL_SOURCES} diff --git a/include/drivers/arm/cryptocell/cc_crypto_boot_defs.h b/include/drivers/arm/cryptocell/712/cc_crypto_boot_defs.h index 2cb8938d2..2cb8938d2 100644 --- a/include/drivers/arm/cryptocell/cc_crypto_boot_defs.h +++ b/include/drivers/arm/cryptocell/712/cc_crypto_boot_defs.h diff --git a/include/drivers/arm/cryptocell/cc_pal_sb_plat.h b/include/drivers/arm/cryptocell/712/cc_pal_sb_plat.h index 212a710be..212a710be 100644 --- a/include/drivers/arm/cryptocell/cc_pal_sb_plat.h +++ b/include/drivers/arm/cryptocell/712/cc_pal_sb_plat.h diff --git a/include/drivers/arm/cryptocell/cc_pal_types.h b/include/drivers/arm/cryptocell/712/cc_pal_types.h index 8c09b23cc..8c09b23cc 100644 --- a/include/drivers/arm/cryptocell/cc_pal_types.h +++ b/include/drivers/arm/cryptocell/712/cc_pal_types.h diff --git a/include/drivers/arm/cryptocell/cc_pal_types_plat.h b/include/drivers/arm/cryptocell/712/cc_pal_types_plat.h index 84100245b..84100245b 100644 --- a/include/drivers/arm/cryptocell/cc_pal_types_plat.h +++ b/include/drivers/arm/cryptocell/712/cc_pal_types_plat.h diff --git a/include/drivers/arm/cryptocell/cc_sec_defs.h b/include/drivers/arm/cryptocell/712/cc_sec_defs.h index d41921855..d41921855 100644 --- a/include/drivers/arm/cryptocell/cc_sec_defs.h +++ b/include/drivers/arm/cryptocell/712/cc_sec_defs.h diff --git a/include/drivers/arm/cryptocell/crypto_driver.h b/include/drivers/arm/cryptocell/712/crypto_driver.h index 18104dd7d..18104dd7d 100644 --- a/include/drivers/arm/cryptocell/crypto_driver.h +++ b/include/drivers/arm/cryptocell/712/crypto_driver.h diff --git a/include/drivers/arm/cryptocell/nvm.h b/include/drivers/arm/cryptocell/712/nvm.h index a70289fb8..a70289fb8 100644 --- a/include/drivers/arm/cryptocell/nvm.h +++ b/include/drivers/arm/cryptocell/712/nvm.h diff --git a/include/drivers/arm/cryptocell/nvm_otp.h b/include/drivers/arm/cryptocell/712/nvm_otp.h index 390d62bc1..390d62bc1 100644 --- a/include/drivers/arm/cryptocell/nvm_otp.h +++ b/include/drivers/arm/cryptocell/712/nvm_otp.h diff --git a/include/drivers/arm/cryptocell/rsa.h b/include/drivers/arm/cryptocell/712/rsa.h index cd9925b32..cd9925b32 100644 --- a/include/drivers/arm/cryptocell/rsa.h +++ b/include/drivers/arm/cryptocell/712/rsa.h diff --git a/include/drivers/arm/cryptocell/sbrom_bsv_api.h b/include/drivers/arm/cryptocell/712/sbrom_bsv_api.h index de835461f..de835461f 100644 --- a/include/drivers/arm/cryptocell/sbrom_bsv_api.h +++ b/include/drivers/arm/cryptocell/712/sbrom_bsv_api.h diff --git a/include/drivers/arm/cryptocell/secureboot_base_func.h b/include/drivers/arm/cryptocell/712/secureboot_base_func.h index 6db596e0d..6db596e0d 100644 --- a/include/drivers/arm/cryptocell/secureboot_base_func.h +++ b/include/drivers/arm/cryptocell/712/secureboot_base_func.h diff --git a/include/drivers/arm/cryptocell/secureboot_gen_defs.h b/include/drivers/arm/cryptocell/712/secureboot_gen_defs.h index 68b9ef8ae..68b9ef8ae 100644 --- a/include/drivers/arm/cryptocell/secureboot_gen_defs.h +++ b/include/drivers/arm/cryptocell/712/secureboot_gen_defs.h diff --git a/include/drivers/arm/cryptocell/util.h b/include/drivers/arm/cryptocell/712/util.h index 18fb5999d..18fb5999d 100644 --- a/include/drivers/arm/cryptocell/util.h +++ b/include/drivers/arm/cryptocell/712/util.h |