xref: /rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_crypto.mk (revision 4df2246943af8568564b4732de02794b2fd8bd39)
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 'TF_MBEDTLS_KEY_ALG' to select the key
10# algorithm to use. Default algorithm is RSA.
11ifeq (${TF_MBEDTLS_KEY_ALG},)
12    TF_MBEDTLS_KEY_ALG		:=	rsa
13endif
14
15# If MBEDTLS_KEY_ALG build flag is defined use it to set TF_MBEDTLS_KEY_ALG for
16# backward compatibility
17ifdef MBEDTLS_KEY_ALG
18    ifeq (${ERROR_DEPRECATED},1)
19        $(error "MBEDTLS_KEY_ALG is deprecated. Please use the new build flag TF_MBEDTLS_KEY_ALG")
20    endif
21    $(warning "MBEDTLS_KEY_ALG is deprecated. Please use the new build flag TF_MBEDTLS_KEY_ALG")
22    TF_MBEDTLS_KEY_ALG	:= ${MBEDTLS_KEY_ALG}
23endif
24
25MBEDTLS_CRYPTO_SOURCES		:=	drivers/auth/mbedtls/mbedtls_crypto.c	\
26					$(addprefix ${MBEDTLS_DIR}/library/,	\
27					bignum.c				\
28					md.c					\
29					md_wrap.c				\
30					pk.c 					\
31					pk_wrap.c 				\
32					pkparse.c 				\
33					pkwrite.c 				\
34					sha256.c				\
35					)
36
37# Key algorithm specific files
38ifeq (${TF_MBEDTLS_KEY_ALG},ecdsa)
39    MBEDTLS_CRYPTO_SOURCES	+=	$(addprefix ${MBEDTLS_DIR}/library/,	\
40    					ecdsa.c					\
41    					ecp_curves.c				\
42    					ecp.c					\
43    					)
44    TF_MBEDTLS_KEY_ALG_ID	:=	TF_MBEDTLS_ECDSA
45else ifeq (${TF_MBEDTLS_KEY_ALG},rsa)
46    MBEDTLS_CRYPTO_SOURCES	+=	$(addprefix ${MBEDTLS_DIR}/library/,	\
47    					rsa.c					\
48    					)
49    TF_MBEDTLS_KEY_ALG_ID	:=	TF_MBEDTLS_RSA
50else
51    $(error "TF_MBEDTLS_KEY_ALG=${TF_MBEDTLS_KEY_ALG} not supported on mbed TLS")
52endif
53
54# Needs to be set to drive mbed TLS configuration correctly
55$(eval $(call add_define,TF_MBEDTLS_KEY_ALG_ID))
56
57BL1_SOURCES			+=	${MBEDTLS_CRYPTO_SOURCES}
58BL2_SOURCES			+=	${MBEDTLS_CRYPTO_SOURCES}
59