lib/bootmem: Add memory type for Armv9 MTE tag storage

The Armv9-A architecture introduces the Memory Tagging Extension (MTE),
which uses a dedicated memory region for tag storage.

This patch adds a new memory type, BM_MEM_TAG, to allow for the proper
accounting and reservation of this memory region. This ensures that the
payload, e.g. depthcharge, can correctly identify and utilize the tag
storage area.

BUG=b:438666196

Change-Id: I2f6d2b3c2c1a8e1f0e9b2c3d4e5f6a7b8c9d0e1f
Signed-off-by: Yidi Lin <yidilin@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90470
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
This commit is contained in:
Yidi Lin 2025-12-11 12:03:46 +08:00 committed by Matt DeVillier
commit 3d5135fdd0
3 changed files with 5 additions and 0 deletions

View file

@ -29,6 +29,7 @@ enum bootmem_type {
BM_MEM_VENDOR_RSVD, /* Vendor Reserved */
BM_MEM_OPENSBI, /* Risc-V OpenSBI */
BM_MEM_BL31, /* Arm64 BL31 executable */
BM_MEM_TAG, /* Armv9-A tag storage for MTE */
BM_MEM_TABLE, /* Ram configuration tables are kept in */
/* Tags below this point are ignored for the OS table. */
BM_MEM_OS_CUTOFF = BM_MEM_TABLE,