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 /drivers/auth | |
parent | 36ec2bb0bcb43b012c1211d73665eebc6012fb48 (diff) |
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
Diffstat (limited to 'drivers/auth')
-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 |
3 files changed, 23 insertions, 14 deletions
diff --git a/drivers/auth/cryptocell/cryptocell_crypto.c b/drivers/auth/cryptocell/712/cryptocell_crypto.c index 6bf27a95..395c5508 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 1bd9c6bc..53d77dbe 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 27c1e852..d42a2e7e 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} |