diff options
author | Javier Almansa Sobrino <javier.almansasobrino@arm.com> | 2022-12-01 17:20:45 +0000 |
---|---|---|
committer | Javier Almansa Sobrino <javier.almansasobrino@arm.com> | 2022-12-07 18:54:28 +0000 |
commit | dc0ca64e4b6c86090eee025293e7ae7f1fe1cf12 (patch) | |
tree | 1b3e9da1f17af2c595aa4254a2883c877c70913e /plat | |
parent | 10f4d1a2d053b0740644d704d7583666913e5092 (diff) | |
download | arm-trusted-firmware-dc0ca64e4b6c86090eee025293e7ae7f1fe1cf12.tar.gz |
fix(rmmd): add missing padding to RMM Boot Manifest and initialize it
This patch also:
* Enforces the check of RES0 fields on EL3-RMM boot interface
and manifest
* Fixes a couple of nits on the EL3-RMM Boot Interface
documentation.
Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: Idb9e38f9fcda2ba0655646a1e2c4fdbabd5cdc40
Diffstat (limited to 'plat')
-rw-r--r-- | plat/arm/board/fvp/fvp_common.c | 1 | ||||
-rw-r--r-- | plat/arm/common/trp/arm_trp_setup.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/plat/arm/board/fvp/fvp_common.c b/plat/arm/board/fvp/fvp_common.c index f8463f14c..f5d9940f0 100644 --- a/plat/arm/board/fvp/fvp_common.c +++ b/plat/arm/board/fvp/fvp_common.c @@ -536,6 +536,7 @@ int plat_rmmd_load_manifest(rmm_manifest_t *manifest) assert(manifest != NULL); manifest->version = RMMD_MANIFEST_VERSION; + manifest->padding = 0U; /* RES0 */ manifest->plat_data = (uintptr_t)NULL; return 0; diff --git a/plat/arm/common/trp/arm_trp_setup.c b/plat/arm/common/trp/arm_trp_setup.c index 59b4c06e9..aeacd1054 100644 --- a/plat/arm/common/trp/arm_trp_setup.c +++ b/plat/arm/common/trp/arm_trp_setup.c @@ -28,6 +28,9 @@ static console_t arm_trp_runtime_console; static int arm_trp_process_manifest(rmm_manifest_t *manifest) { + /* padding field on the manifest must be RES0 */ + assert(manifest->padding == 0U); + /* Verify the Boot Manifest Version. Only the Major is considered */ if (RMMD_MANIFEST_VERSION_MAJOR != RMMD_GET_MANIFEST_VERSION_MAJOR(manifest->version)) { |