diff options
author | Ryan Roberts <ryan.roberts@arm.com> | 2023-02-10 15:22:07 +0000 |
---|---|---|
committer | Ryan Roberts <ryan.roberts@arm.com> | 2023-02-10 15:22:07 +0000 |
commit | df661686af674eb9d801d29ef29c562d5fcce48c (patch) | |
tree | b6fd72d59ea028583e698f4fed8671a2595de2fc /config/cca-4world.yaml | |
parent | ec1a6465a64bea565ae937a90ddc50feab062c87 (diff) |
config: Split cca.yaml into 3-world and 4-world variants
4-world requires Hafnium, whose build system only works on x86_64. So by
splitting, we can build and run the 3-world variant on both x86_64 and
aarch64, whereas the 4-world config is limitted x86_64.
Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
Diffstat (limited to 'config/cca-4world.yaml')
-rw-r--r-- | config/cca-4world.yaml | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/config/cca-4world.yaml b/config/cca-4world.yaml new file mode 100644 index 0000000..c879d42 --- /dev/null +++ b/config/cca-4world.yaml @@ -0,0 +1,54 @@ +# Copyright (c) 2022, Arm Limited. +# SPDX-License-Identifier: MIT + +%YAML 1.2 +--- +description: >- + Brings together a software stack to demonstrate Arm CCA running on FVP in a + four-world configuration. Includes TF-A in root world, Hafnium and some demo + secure partitions in secure world, RMM in realm world, and Linux in Normal + world. + + In order to launch realm VMs, the user must bring their own rootfs that + contains a realm-aware kvmtool and an RSI-aware guest kernel image. + +concrete: true + +layers: + - cca-3world.yaml + - hafnium-base.yaml + +build: + tfa: + params: + SPD: spmd + SPMD_SPM_AT_SEL2: 1 + SP_LAYOUT_FILE: ${artifact:SP_LAYOUT} + BL32: ${artifact:HAFNIUM} + + # Provides secure partitions that run under Hafnium for demonstration. + tfa-tests: + repo: + remote: https://git.trustedfirmware.org/TF-A/tf-a-tests.git + revision: v2.8 + + toolchain: aarch64-none-elf- + + params: + PLAT: fvp + DEBUG: 1 + + build: + # TODO: tfa-tests has makefile dependency bug that prevents parallel make (-j > 1). + - make BUILD_BASE=${param:builddir} ${param:join_equal} all pack_realm + + clean: + - make BUILD_BASE=${param:builddir} realclean + + artifacts: + SP_LAYOUT: ${param:builddir}/fvp/debug/sp_layout.json + +run: + terminals: + bp.terminal_2: + friendly: hafnium |