| /* |
| * Copyright (c) 2015-2023, ARM Limited and Contributors. All rights reserved. |
| * |
| * SPDX-License-Identifier: BSD-3-Clause |
| */ |
| |
| #ifndef COT_DEF_H |
| #define COT_DEF_H |
| |
| /* |
| * Guard here with availability of mbedtls config since PLAT=lx2162aqds |
| * uses custom tbbr from 'drivers/nxp/auth/tbbr/tbbr_cot.c' and also may |
| * build without mbedtls folder only with TRUSTED_BOOT enabled. |
| */ |
| #ifdef MBEDTLS_CONFIG_FILE |
| #include <mbedtls/version.h> |
| #endif |
| |
| /* TBBR CoT definitions */ |
| #if defined(SPD_spmd) |
| #define COT_MAX_VERIFIED_PARAMS 8 |
| #elif defined(ARM_COT_cca) |
| #define COT_MAX_VERIFIED_PARAMS 8 |
| #else |
| #define COT_MAX_VERIFIED_PARAMS 4 |
| #endif |
| |
| /* |
| * Maximum key and hash sizes (in DER format). |
| * |
| * Both RSA and ECDSA keys may be used at the same time. In this case, the key |
| * buffers must be big enough to hold either. As RSA keys are bigger than ECDSA |
| * ones for all key sizes we support, they impose the minimum size of these |
| * buffers. |
| */ |
| #if TF_MBEDTLS_USE_RSA |
| #if TF_MBEDTLS_KEY_SIZE == 1024 |
| #define PK_DER_LEN 162 |
| #elif TF_MBEDTLS_KEY_SIZE == 2048 |
| #define PK_DER_LEN 294 |
| #elif TF_MBEDTLS_KEY_SIZE == 3072 |
| #define PK_DER_LEN 422 |
| #elif TF_MBEDTLS_KEY_SIZE == 4096 |
| #define PK_DER_LEN 550 |
| #else |
| #error "Invalid value for TF_MBEDTLS_KEY_SIZE" |
| #endif |
| #else /* Only using ECDSA keys. */ |
| #define PK_DER_LEN 92 |
| #endif |
| |
| #if TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA256 |
| #define HASH_DER_LEN 51 |
| #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA384 |
| #define HASH_DER_LEN 67 |
| #elif TF_MBEDTLS_HASH_ALG_ID == TF_MBEDTLS_SHA512 |
| #define HASH_DER_LEN 83 |
| #else |
| #error "Invalid value for TF_MBEDTLS_HASH_ALG_ID" |
| #endif |
| |
| #endif /* COT_DEF_H */ |