1# 2# Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved. 3# 4# SPDX-License-Identifier: BSD-3-Clause 5# 6 7include drivers/auth/mbedtls/mbedtls_common.mk 8 9# The platform may define the variable 'MBEDTLS_KEY_ALG' to select the key 10# algorithm to use. Default algorithm is RSA. 11ifeq (${MBEDTLS_KEY_ALG},) 12 MBEDTLS_KEY_ALG := rsa 13endif 14 15MBEDTLS_CRYPTO_SOURCES := drivers/auth/mbedtls/mbedtls_crypto.c \ 16 $(addprefix ${MBEDTLS_DIR}/library/, \ 17 bignum.c \ 18 md.c \ 19 md_wrap.c \ 20 pk.c \ 21 pk_wrap.c \ 22 pkparse.c \ 23 pkwrite.c \ 24 sha256.c \ 25 ) 26 27# Key algorithm specific files 28ifeq (${MBEDTLS_KEY_ALG},ecdsa) 29 MBEDTLS_CRYPTO_SOURCES += $(addprefix ${MBEDTLS_DIR}/library/, \ 30 ecdsa.c \ 31 ecp_curves.c \ 32 ecp.c \ 33 ) 34 TBBR_KEY_ALG_ID := TBBR_ECDSA 35else ifeq (${MBEDTLS_KEY_ALG},rsa) 36 MBEDTLS_CRYPTO_SOURCES += $(addprefix ${MBEDTLS_DIR}/library/, \ 37 rsa.c \ 38 ) 39 TBBR_KEY_ALG_ID := TBBR_RSA 40else 41 $(error "MBEDTLS_KEY_ALG=${MBEDTLS_KEY_ALG} not supported on mbed TLS") 42endif 43 44# Needs to be set to drive mbed TLS configuration correctly 45$(eval $(call add_define,TBBR_KEY_ALG_ID)) 46 47BL1_SOURCES += ${MBEDTLS_CRYPTO_SOURCES} 48BL2_SOURCES += ${MBEDTLS_CRYPTO_SOURCES} 49