summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSami Mujawar <sami.mujawar@arm.com>2025-09-26 14:10:55 +0100
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2026-07-03 09:26:33 +0000
commit3b2350f2c15233aa8f1f89202e183ab4cdf715b2 (patch)
treee5fee67467e3f843338d4aacc9c536b61af412e6
parent4cd01151fc1f6881677d82e6e57e04db02aa7cef (diff)
downloadedk2-3b2350f2c15233aa8f1f89202e183ab4cdf715b2.tar.gz
edk2-3b2350f2c15233aa8f1f89202e183ab4cdf715b2.zip
MdePkg: Define CC Measurement register to Arm CCA REM mapping
The edk2 Code First proposal "[Code First] Add supporting details of Arm Confidential Compute Architecture in UEFI spec" (#11383) https://github.com/tianocore/edk2/issues/11383 introduces a new section 38.4.3 'Arm Confidential Compute Architecture Extension' that defines the mapping between the TPM PCR indices, the CC event log measurement registers and the corresponding Arm CCA measurement registers where: - RIM means Realm Initial Measurement Register and - REM means Realm Extensible Measurement Register. TPM PCR Index | CC Measurement | Arm CCA-measurement | | Register Index | register | ------------------------------------------------------- 0 | 0 | RIM | 1, 7 | 1 | REM[0] | 2~6 | 2 | REM[1] | 8~15 | 3 | REM[2] | Therefore, add these definitions to the CC measurement header file to align with the updated specification. Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
-rw-r--r--MdePkg/Include/Protocol/CcMeasurement.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/MdePkg/Include/Protocol/CcMeasurement.h b/MdePkg/Include/Protocol/CcMeasurement.h
index af9d8d1bc6..5d9772ebe9 100644
--- a/MdePkg/Include/Protocol/CcMeasurement.h
+++ b/MdePkg/Include/Protocol/CcMeasurement.h
@@ -10,6 +10,7 @@
capability.
Copyright (c) 2020 - 2021, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2025, Arm Limited. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -59,6 +60,33 @@ typedef UINT32 EFI_CC_MR_INDEX;
#define TDX_MR_INDEX_RTMR2 3
#define TDX_MR_INDEX_RTMR3 4
+/**
+ Macro definitions for mapping CC Measurement indices to Arm CCA
+ Realm measurement registers.
+
+ The mapping between the TPM PCR index and the Arm CCA Realm
+ Extensible measurement as defined by the UEFI specification
+ in section 38.4.3 Arm Confidential Compute Architecture Extension.
+
+ The following table shows the TPM PCR index mapping and CC event log
+ measurement register index interpretation for Arm CCA where:
+ - RIM means Realm Initial Measurement Register and
+ - REM means Realm Extensible Measurement Register
+
+ TPM PCR Index | CC Measurement | Arm CCA-measurement |
+ | Register Index | register |
+ -------------------------------------------------------
+ 0 | 0 | RIM |
+ 1, 7 | 1 | REM[0] |
+ 2~6 | 2 | REM[1] |
+ 8~15 | 3 | REM[2] |
+*/
+#define ARMCCA_MR_INDEX_0_RIM 0
+#define ARMCCA_MR_INDEX_1_REM0 1
+#define ARMCCA_MR_INDEX_2_REM1 2
+#define ARMCCA_MR_INDEX_3_REM2 3
+#define ARMCCA_MR_INDEX_INVALID 4
+
#define EFI_CC_EVENT_LOG_FORMAT_TCG_2 0x00000002
#define EFI_CC_BOOT_HASH_ALG_SHA384 0x00000004