| /* |
| * Copyright (c) 2024, Arm Limited. All rights reserved. |
| * |
| * SPDX-License-Identifier: BSD-3-Clause |
| */ |
| |
| #ifndef METADATA_H |
| #define METADATA_H |
| |
| /* Minimum measurement value size that can be requested to store */ |
| #define MEASUREMENT_VALUE_MIN_SIZE 32U |
| /* Maximum measurement value size that can be requested to store */ |
| #define MEASUREMENT_VALUE_MAX_SIZE 64U |
| /* Minimum signer id size that can be requested to store */ |
| #define SIGNER_ID_MIN_SIZE MEASUREMENT_VALUE_MIN_SIZE |
| /* Maximum signer id size that can be requested to store */ |
| #define SIGNER_ID_MAX_SIZE MEASUREMENT_VALUE_MAX_SIZE |
| /* The theoretical maximum image version is: "255.255.65535\0" */ |
| #define VERSION_MAX_SIZE 14U |
| /* Example sw_type: "BL_2, BL_33, etc." */ |
| #define SW_TYPE_MAX_SIZE 32U |
| |
| /* |
| * Images, measured during the boot process, have some associated metadata. |
| * One of these types of metadata is the image identifier strings. These macros |
| * define these strings. They are used across the different measured boot |
| * backends. |
| * Note that these strings follow the standardization recommendations |
| * defined in the Arm Server Base Security Guide (a.k.a. SBSG, Arm DEN 0086), |
| * where applicable. They should not be changed in the code. |
| * Where the SBSG does not make recommendations, we are free to choose any |
| * naming convention. |
| * The key thing is to choose meaningful strings so that when the measured boot |
| * metadata is used in attestation, the different components can be identified. |
| */ |
| #define MBOOT_BL2_IMAGE_STRING "BL_2" |
| #define MBOOT_BL31_IMAGE_STRING "SECURE_RT_EL3" |
| #if defined(SPD_opteed) |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_OPTEE" |
| #elif defined(SPD_tspd) |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_TSPD" |
| #elif defined(SPD_tlkd) |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_TLKD" |
| #elif defined(SPD_trusty) |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_TRUSTY" |
| #elif defined(SPD_spmd) |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_SPMD" |
| #else |
| #define MBOOT_BL32_IMAGE_STRING "SECURE_RT_EL1_UNKNOWN" |
| #endif /* SPD_opteed */ |
| #define MBOOT_BL32_EXTRA1_IMAGE_STRING "SECURE_RT_EL1_OPTEE_EXTRA1" |
| #define MBOOT_BL32_EXTRA2_IMAGE_STRING "SECURE_RT_EL1_OPTEE_EXTRA2" |
| #define MBOOT_BL33_IMAGE_STRING "BL_33" |
| #define MBOOT_FW_CONFIG_STRING "FW_CONFIG" |
| #define MBOOT_HW_CONFIG_STRING "HW_CONFIG" |
| #define MBOOT_NT_FW_CONFIG_STRING "NT_FW_CONFIG" |
| #define MBOOT_SCP_BL2_IMAGE_STRING "SYS_CTRL_2" |
| #define MBOOT_SOC_FW_CONFIG_STRING "SOC_FW_CONFIG" |
| #define MBOOT_STM32_STRING "STM32" |
| #define MBOOT_TB_FW_CONFIG_STRING "TB_FW_CONFIG" |
| #define MBOOT_TOS_FW_CONFIG_STRING "TOS_FW_CONFIG" |
| #define MBOOT_RMM_IMAGE_STRING "RMM" |
| #define MBOOT_SP1_STRING "SP1" |
| #define MBOOT_SP2_STRING "SP2" |
| #define MBOOT_SP3_STRING "SP3" |
| #define MBOOT_SP4_STRING "SP4" |
| #define MBOOT_SP5_STRING "SP5" |
| #define MBOOT_SP6_STRING "SP6" |
| #define MBOOT_SP7_STRING "SP7" |
| #define MBOOT_SP8_STRING "SP8" |
| |
| #endif /* METADATA_H */ |