xref: /rk3399_ARM-atf/plat/arm/board/juno/include/plat_juno_mbedtls_config.h (revision a0723de7b4e65169a81e7a7a856cd1c74b917782)
1 /*
2  * Copyright (c) 2025, Arm Limited.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef PLAT_JUNO_MBEDTLS_CONFIG_H
8 #define PLAT_JUNO_MBEDTLS_CONFIG_H
9 
10 #include <export/lib/utils_def_exp.h>
11 #include <default_mbedtls_config.h>
12 
13 /*
14  * Limit the enabled hash algorithm to the one selected via HASH_ALG when
15  * measured boot is enabled in order to avoid pulling unused digests into the
16  * build.
17  */
18 #if MEASURED_BOOT
19 #if TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA256
20 #undef MBEDTLS_SHA384_C
21 #undef MBEDTLS_SHA512_C
22 #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA384
23 #undef MBEDTLS_SHA256_C
24 #undef MBEDTLS_SHA256_SMALLER
25 #undef MBEDTLS_SHA512_C
26 #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA512
27 #undef MBEDTLS_SHA256_C
28 #undef MBEDTLS_SHA256_SMALLER
29 #undef MBEDTLS_SHA384_C
30 #else
31 #error "Unsupported TF_MBEDTLS_HASH_ALG_ID for Juno measured boot"
32 #endif
33 #endif /* MEASURED_BOOT */
34 
35 #endif /* PLAT_JUNO_MBEDTLS_CONFIG_H */
36