From bd9fc4bbfca00be91b1cedde986adb9582ea60a9 Mon Sep 17 00:00:00 2001 From: Harsimran Singh Tungal Date: Tue, 18 Jun 2024 16:27:24 +0100 Subject: [PATCH] ci,arm-bsp: corstone1000: New MACHINE_FEATURES for Corstone-1000 FVP multicore Introduce `corstone1000_fvp_smp` as a value of the `MACHINE_FEATURES` variable to support Corstone-1000 FVP Symmetric Multiprocessing. A new YAML file is created to add this new machine only for the FVP variant of the target platform. The multicore feature is enabled in TrustedFirmware-A, TrustedFirmware-M, and OP-TEE based on this machine feature. Signed-off-by: Harsimran Singh Tungal --- kas/corstone1000-fvp-multicore.yml | 8 ++++++++ .../trusted-firmware-a-corstone1000.inc | 1 + .../trusted-firmware-m-corstone1000.inc | 1 + .../optee/optee-os-corstone1000-common.inc | 2 ++ 4 files changed, 12 insertions(+) create mode 100644 kas/corstone1000-fvp-multicore.yml diff --git a/kas/corstone1000-fvp-multicore.yml b/kas/corstone1000-fvp-multicore.yml new file mode 100644 index 00000000..d806bb11 --- /dev/null +++ b/kas/corstone1000-fvp-multicore.yml @@ -0,0 +1,8 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/siemens/kas/master/kas/schema-kas.json + +header: + version: 14 + +local_conf_header: + fvp-multicore: | + MACHINE_FEATURES += "corstone1000_fvp_smp" diff --git a/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-corstone1000.inc b/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-corstone1000.inc index b19e52aa..c53bc6cd 100644 --- a/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-corstone1000.inc +++ b/meta-arm-bsp/recipes-bsp/trusted-firmware-a/trusted-firmware-a-corstone1000.inc @@ -55,3 +55,4 @@ EXTRA_OEMAKE:append = " \ BL32=${RECIPE_SYSROOT}/${nonarch_base_libdir}/firmware/tee-pager_v2.bin \ FVP_USE_GIC_DRIVER=FVP_GICV2 \ " +EXTRA_OEMAKE:append:corstone1000-fvp = "${@bb.utils.contains('MACHINE_FEATURES', 'corstone1000_fvp_smp', ' ENABLE_MULTICORE=1', '', d)}" diff --git a/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc b/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc index b362461e..4777251d 100644 --- a/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc +++ b/meta-arm-bsp/recipes-bsp/trusted-firmware-m/trusted-firmware-m-corstone1000.inc @@ -10,6 +10,7 @@ TFM_DEBUG = "1" TFM_PLATFORM_IS_FVP ?= "FALSE" EXTRA_OECMAKE += "-DPLATFORM_IS_FVP=${TFM_PLATFORM_IS_FVP}" EXTRA_OECMAKE += "-DCC312_LEGACY_DRIVER_API_ENABLED=OFF" +EXTRA_OECMAKE:append:corstone1000-fvp = " -DENABLE_MULTICORE=${@bb.utils.contains('MACHINE_FEATURES', 'corstone1000_fvp_smp', 'TRUE', 'FALSE', d)}" SRC_URI += " \ file://0001-arm-trusted-firmware-m-disable-address-warnings-into.patch \ diff --git a/meta-arm-bsp/recipes-security/optee/optee-os-corstone1000-common.inc b/meta-arm-bsp/recipes-security/optee/optee-os-corstone1000-common.inc index 4f4ed12a..22289087 100644 --- a/meta-arm-bsp/recipes-security/optee/optee-os-corstone1000-common.inc +++ b/meta-arm-bsp/recipes-security/optee/optee-os-corstone1000-common.inc @@ -17,3 +17,5 @@ EXTRA_OEMAKE += " CFG_TEE_BENCHMARK=n" EXTRA_OEMAKE += " CFG_CORE_SEL1_SPMC=y CFG_CORE_FFA=y" EXTRA_OEMAKE += " CFG_WITH_SP=y" + +EXTRA_OEMAKE:append:corstone1000-fvp = "${@bb.utils.contains('MACHINE_FEATURES', 'corstone1000_fvp_smp', ' CFG_TEE_CORE_NB_CORE=4', '', d)}"