blob: 2b523532692c840ac727b9cccba3561b38fa64f0 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001#!/usr/bin/env python3
2
3""" builtin_configs.py:
4
5 Default configuration files used as reference """
6
7from __future__ import print_function
8
9__copyright__ = """
10/*
Gergely Korcsákba0c5212024-04-03 18:21:49 +020011 * Copyright (c) 2018-2024, Arm Limited. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010012 *
13 * SPDX-License-Identifier: BSD-3-Clause
14 *
15 */
16 """
Karl Zhang08681e62020-10-30 13:56:03 +080017
18__author__ = "tf-m@lists.trustedfirmware.org"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010019__project__ = "Trusted Firmware-M Open CI"
Xinyu Zhang06286a92021-07-22 14:00:51 +080020__version__ = "1.4.0"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010021
Paul Sokolovsky3e8fce02022-04-07 01:23:30 +030022from copy import deepcopy
23
24
Minos Galanakisea421232019-06-20 17:11:28 +010025# common parameters for tf-m build system
26# This configuration template will be passed into the tfm-builder module after
27# the template evaluation is converted to a command
28
29_common_tfm_builder_cfg = {
30 "config_type": "tf-m",
31 "codebase_root_dir": "tf-m",
32 # Order to which the variants are evaluated. This affects the name of
33 # variant configuration and the wildcard replacement logic in invalid
34 # configuration tuples
Xinyu Zhangb708f572020-09-15 11:43:46 +080035 "sort_order": ["tfm_platform",
Xinyu Zhang433771e2022-04-01 16:49:17 +080036 "compiler",
Xinyu Zhangb708f572020-09-15 11:43:46 +080037 "isolation_level",
38 "test_regression",
39 "test_psa_api",
Minos Galanakisea421232019-06-20 17:11:28 +010040 "cmake_build_type",
Xinyu Zhangb708f572020-09-15 11:43:46 +080041 "with_bl2",
Xinyu Zhang9fd74242020-10-22 11:30:50 +080042 "profile",
Xinyu Zhangfd2e1152021-12-17 18:09:01 +080043 "extra_params"],
Minos Galanakisea421232019-06-20 17:11:28 +010044
45 # Keys for the templace will come from the combinations of parameters
46 # provided in the seed dictionary.
47
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080048 "spe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080049 "-S %(spe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080050 "-B %(ci_build_root_dir)s/spe " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080051 "-DTFM_PLATFORM=%(tfm_platform)s " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080052 "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(s_compiler)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080053 "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
Xinyu Zhangb18ae742023-04-25 14:33:27 +080054 "%(test_regression)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080055 "-DCMAKE_BUILD_TYPE=%(cmake_build_type)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080056 "-DTEST_PSA_API=%(test_psa_api)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080057 "-DBL2=%(with_bl2)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080058 "-DTFM_PROFILE=%(profile)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080059 "%(extra_params)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080060 "-DCONFIG_TFM_SOURCE_PATH=%(codebase_root_dir)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080061 "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
62 "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
63 "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
Xinyu Zhang1f21cb22023-06-26 17:56:49 +080064 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080065 "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras ",
66
67 "nspe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080068 "-S %(nspe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080069 "-B %(ci_build_root_dir)s/nspe " + \
70 "-DCONFIG_SPE_PATH=%(ci_build_root_dir)s/spe/api_ns " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080071 "-DTFM_TOOLCHAIN_FILE=%(ci_build_root_dir)s/spe/api_ns/cmake/%(ns_compiler)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080072 "%(extra_params)s " + \
73 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor ",
74
75 # CMake build commands will be executed for every build.
76 "spe_cmake_build": "cmake --build %(ci_build_root_dir)s/spe -- install",
77 "nspe_cmake_build": "cmake --build %(ci_build_root_dir)s/nspe --",
Karl Zhangaff558a2020-05-15 14:28:23 +010078
Xinyu Zhang433771e2022-04-01 16:49:17 +080079 "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
80
Minos Galanakisea421232019-06-20 17:11:28 +010081 # A small subset of string substitution params is allowed in commands.
82 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
83 # _tbm_target_platform_ with the paths set when building
84
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080085 "artifact_capture_rex": (r'%(ci_build_root_dir)s/nspe'
Minos Galanakisea421232019-06-20 17:11:28 +010086 r'/(\w+\.(?:axf|bin|hex))$'),
87
Xinyu Zhang46b37182023-06-30 15:36:44 +080088 # Keys will append extra commands when matching target_platform
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080089 "post_build": {"arm/corstone1000": ("dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_1.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=0;"
90 "dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_provisioning_bundle.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=40960;"
Xinyu Zhang09acfbf2023-10-30 18:30:48 +080091 "%(codebase_root_dir)s/platform/ext/target/arm/corstone1000/create-flash-image.sh %(ci_build_root_dir)s/spe/bin/ cs1000.bin;"),
Matthew Dalzell59ea18e2024-06-06 17:00:52 +010092 "arm/musca_b1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +010093 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080094 "%(ci_build_root_dir)s/spe/bin/"
95 "bl2.bin "
96 "-Binary -offset 0xA000000 "
97 "-fill 0xFF 0xA000000 0xA020000 "
98 "%(ci_build_root_dir)s/nspe/"
99 "tfm_s_ns_signed.bin "
100 "-Binary -offset 0xA020000 "
101 "-fill 0xFF 0xA020000 0xA200000 "
102 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100103 "spe/bin/tfm.hex -Intel;"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100104 "fi;"),
Matthew Dalzell59ea18e2024-06-06 17:00:52 +0100105 "arm/musca_s1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100106 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800107 "%(ci_build_root_dir)s/spe/bin/"
108 "bl2.bin "
109 "-Binary -offset 0xA000000 "
110 "-fill 0xFF 0xA000000 0xA020000 "
111 "%(ci_build_root_dir)s/nspe/"
112 "tfm_s_ns_signed.bin "
113 "-Binary -offset 0xA020000 "
114 "-fill 0xFF 0xA020000 0xA200000 "
115 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100116 "spe/bin/tfm.hex -Intel; "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100117 "fi;"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100118 "arm/rse/tc/tc3": ("if [ -f \"%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin\" ]; then "
Raef Colesf9a20742024-06-06 10:47:49 +0100119 "srec_cat "
120 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
121 "%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin -Binary -offset 0x10000 "
122 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
123 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
124 "else "
125 "srec_cat "
Jamie Fox9283cbc2024-04-22 13:40:01 +0100126 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
127 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
128 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
Raef Colesf9a20742024-06-06 10:47:49 +0100129 "fi;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100130 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fiptool https://downloads.trustedfirmware.org/tf-m/rse/tc/tc3/fiptool;"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100131 "chmod 755 fiptool;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100132 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fip.bin https://downloads.trustedfirmware.org/tf-m/rse/tc/tc3/fip.bin;"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100133 "./fiptool update "
Jamie Fox82a91d02024-09-27 14:54:14 +0100134 "--align 8192 --rse-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
135 "--align 8192 --rse-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
136 "--align 8192 --rse-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
137 "--align 8192 --rse-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
138 "--align 8192 --rse-sic-tables-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_sic_tables_signed.bin "
Jamie Fox9283cbc2024-04-22 13:40:01 +0100139 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
140 "fip.bin"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800141 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800142 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
143 "pushd %(ci_build_root_dir)s/spe/api_ns;"
144 "mkdir -p image_signing/scripts ;"
145 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
146 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
147 "bin/bl2.bin "
148 "bin/tfm_s_signed.bin "
149 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800150 "popd"),
151 "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800152 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
153 "pushd %(ci_build_root_dir)s/spe/api_ns;"
154 "mkdir -p image_signing/scripts ;"
155 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
156 "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
157 "bin/bl2.bin "
158 "bin/tfm_s_signed.bin "
159 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800160 "popd"),
Anton Komlev4164ab62024-02-23 10:59:56 +0100161 "stm/stm32h573i_dk": ("echo 'STM32H573I-DK board post process';"
162 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
163 "pushd %(ci_build_root_dir)s/spe/api_ns;"
164 "mkdir -p image_signing/scripts ;"
165 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
166 "tar jcf ./bin/stm32h573i_dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
167 "bin/bl2.bin "
168 "bin/tfm_s_signed.bin "
169 "image_signing/scripts/tfm_ns_signed.bin ;"
170 "popd"),
Matthew Dalzell0bdc0b22024-04-17 18:13:31 +0100171 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 bo.ard post process\n';"
172 "mkdir -p %(codebase_root_dir)s/build/bin ;"
173 # Workaround for flash_JLink.py
174 "cp %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(codebase_root_dir)s/build/bin ;"
175 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(codebase_root_dir)s/build/bin ;"
176 "cd %(codebase_root_dir)s/build/bin; "
177 "rm -f flash.jlink; "
178 "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then "
179 "echo r >> flash.jlink; "
180 "echo erase >> flash.jlink; "
181 "echo loadfile bl2.hex >> flash.jlink; "
182 "echo loadfile tfm_s_ns_signed.bin -0x8000 >> flash.jlink; "
183 "echo r >> flash.jlink; "
184 "echo go >> flash.jlink; "
185 "echo exit >> flash.jlink; "
186 "else "
187 "echo r >> flash.jlink; "
188 "echo erase >> flash.jlink; "
189 "echo loadfile tfm_s.hex >> flash.jlink; "
190 "echo loadfile tfm_ns.hex >> flash.jlink; "
191 "echo r >> flash.jlink; "
192 "echo go >> flash.jlink; "
193 "echo exit >> flash.jlink; "
194 "fi;"
195 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
196 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
197 "mv lpcxpresso55s69-tfm.tar.bz2 %(ci_build_root_dir)s/nspe/bin ;"
198 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800199 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800200 "pushd %(codebase_root_dir)s/;"
Arthur She87602dc2022-02-06 14:42:18 -0800201 "sudo /usr/local/bin/cysecuretools "
202 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
203 "--target cy8ckit-064s0s2-4343w "
204 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800205 "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800206 "--image-type BOOT --image-id 1;"
207 "sudo /usr/local/bin/cysecuretools "
208 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
209 "--target cy8ckit-064s0s2-4343w "
210 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800211 "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800212 "--image-type BOOT --image-id 16;"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800213 "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
214 "mv %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.hex;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800215 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100216 },
217
218 # (Optional) If set will fail if those artefacts are missing post build
219 "required_artefacts": {"all": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800220 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800221 "tfm_s.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800222 "%(ci_build_root_dir)s/nspe/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800223 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200224 "arm/musca_b1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800225 "%(ci_build_root_dir)s/tfm.hex",
226 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800227 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800228 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800229 "tfm_sign.bin"],
Summer Qin3c2b5722021-05-26 10:43:45 +0800230 "arm/musca_s1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800231 "%(ci_build_root_dir)s/tfm.hex",
232 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800233 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800234 "%(ci_build_root_dir)s/spe/bin/"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100235 "tfm_sign.bin"],
Jamie Fox82a91d02024-09-27 14:54:14 +0100236 "arm/rse/tc/tc3": [
Jamie Fox9283cbc2024-04-22 13:40:01 +0100237 "%(ci_build_root_dir)s/spe/bin/rom.bin",
238 "%(ci_build_root_dir)s/spe/bin/encrypted_cm_provisioning_bundle_0.bin",
239 "%(ci_build_root_dir)s/spe/bin/encrypted_dm_provisioning_bundle_0.bin",
240 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100241 }
242}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100243
Xinyu Zhangb708f572020-09-15 11:43:46 +0800244# List of all build configs that are impossible under all circumstances
245_common_tfm_invalid_configs = [
Xinyu Zhang459a1982021-07-21 22:34:49 +0800246 # LR_CODE size exceeds limit on MUSCA_B1 & MUSCA_S1 with regression tests in Debug mode built with ARMCLANG
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300247 ("arm/musca_b1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
248 ("arm/musca_s1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800249 # Load range overlap on Musca for IPC Debug type: T895
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300250 ("arm/musca_b1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
251 ("arm/musca_s1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300252 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800253 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800254 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800255 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
256 ("arm/musca_s1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800257 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800258 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
259 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
260 ("arm/musca_s1", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800261 ]
262
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100263# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800264# Config group for per-patch job
265config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800266 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800267 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300268 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800269 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800270 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800271 "test_psa_api": ["OFF"],
272 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800273 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800274 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800275 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800276 },
277 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800278 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800279 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300280 ("arm/mps2/an519", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800281 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800282 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800283 ("arm/mps2/an519", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800284 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
285 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800286 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800287 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
288 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300289 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800290 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
291 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300292 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800293 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Chris Branddc827302024-10-11 15:20:17 -0700294 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSCLEAR
295 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
296 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSCLEAR"),
297 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSLIMIT
298 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
299 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSLIMIT"),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800300 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300301 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen6984bef2023-07-25 10:36:56 +0800302 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800303 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300304 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800305 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
306 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300307 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800308 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800309 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800310 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800311 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100312 # AN521_GCC_2_RegBL2_RegS_RegNS_Debug_BL2_MEDIUM
Summer Qin379abb62022-10-08 16:41:54 +0800313 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800314 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
315 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800316 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800317 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
318 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800319 ("arm/mps2/an521", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800320 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800321 # AN521_GCC_1_FF_Release_BL2
322 ("arm/mps2/an521", "GCC_10_3", "1",
323 "OFF", "IPC", "Release", True, "", ""),
324 # AN521_ARMCLANG_2_STORAGE_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300325 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800326 "OFF", "STORAGE", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100327 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Bence Balogh1aa8d582023-08-29 13:10:02 +0200328 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800329 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100330 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Bence Balogh1aa8d582023-08-29 13:10:02 +0200331 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800332 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100333 # corstone310_ARMCLANG_1_Debug_BL2_PACBTI_STD
Nicola Mazzucatob4e19572024-08-21 12:26:14 +0100334 ("arm/mps3/corstone310/fvp", "ARMCLANG_6_21", "1",
Nicola Mazzucatob542f2b2024-05-23 10:13:43 +0100335 "OFF", "OFF", "Debug", True, "", "PACBTI_STD"),
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800336 # corstone1000_GCC_2_RegS_Debug_BL2_NSOFF_CS1K_TEST_FVP
337 ("arm/corstone1000", "GCC_10_3", "2",
338 "RegS", "OFF", "Debug", True, "", "NSOFF, CS1K_TEST, FVP"),
Matthew Dalzell397fb3c2024-06-21 11:03:38 +0100339 # corstone315_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
340 ("arm/mps4/corstone315", "ARMCLANG_6_21", "1",
341 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Gergely Korcsák78a4d142024-08-05 07:41:36 +0200342 # corstone320_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
343 ("arm/mps4/corstone320", "ARMCLANG_6_21", "1",
344 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800345 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800346 ("arm/musca_b1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800347 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
348 # MUSCA_S1_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300349 ("arm/musca_s1", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800350 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
351 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800352 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800353 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
354 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800355 ("arm/musca_s1", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800356 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800357 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Summer Qin379abb62022-10-08 16:41:54 +0800358 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800359 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Nicola Mazzucato8617ae92024-10-02 13:14:15 +0100360 # RSE_TC3_GCC_3_RegS_RegNS_Release_BL2_ATTESTATION_SCHEME_DPE
Jamie Foxc5b9e6a2024-10-10 17:07:57 +0100361 ("arm/rse/tc/tc3", "GCC_10_3", "3",
Nicola Mazzucato8617ae92024-10-02 13:14:15 +0100362 "RegS, RegNS", "OFF", "Release", True, "", "ATTESTATION_SCHEME_DPE"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100363 # RSE_TC3_GCC_2_RegBL1_1_Debug_BL2
364 ("arm/rse/tc/tc3", "GCC_10_3", "2",
Raef Colesf9a20742024-06-06 10:47:49 +0100365 "RegBL1_1", "OFF", "Debug", True, "", ""),
Nicola Mazzucatob4763262024-09-26 12:39:06 +0100366 # RSE_TC3_GCC_2_Release_BL2_ATTESTATION_SCHEME_CCA
367 ("arm/rse/tc/tc3", "GCC_10_3", "2",
368 "OFF", "OFF", "Release", True, "", "ATTESTATION_SCHEME_CCA"),
Jamie Fox9283cbc2024-04-22 13:40:01 +0100369 # RSE_RDFremont_GCC_2_Release_BL2_NSOFF_CFG0
Joel Goddard2dd81a12024-01-23 15:10:08 +0000370 ("arm/rse/rdfremont", "GCC_10_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100371 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100372 # RSE_RD1AE_GCC_2_Release_BL2_NSOFF
373 ("arm/rse/automotive_rd/rd1ae", "GCC_10_3", "2",
374 "OFF", "OFF", "Release", True, "", "NSOFF"),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800375 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300376 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800377 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
378 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Summer Qin379abb62022-10-08 16:41:54 +0800379 ("stm/stm32l562e_dk", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800380 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100381 # stm32l562e_dk_GCC_3_RegBL2_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800382 ("stm/stm32l562e_dk", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800383 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700384 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
385 ("stm/b_u585i_iot02a", "GCC_10_3", "1",
386 "RegS, RegNS", "OFF", "Release", True, "", ""),
387 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300388 ("stm/b_u585i_iot02a", "ARMCLANG_6_21", "2",
Arthur She4f08c152023-05-15 15:29:14 -0700389 "RegS, RegNS", "OFF", "Release", True, "", ""),
Anton Komlev4164ab62024-02-23 10:59:56 +0100390 # stm32h573i_dk_GCC_1_RegS_RegNS_Release_BL2
391 ("stm/stm32h573i_dk", "GCC_10_3", "1",
392 "RegS, RegNS", "OFF", "Release", True, "", ""),
393 # stm32h573i_dk_ARMCLANG_2_RegS_RegNS_Release_BL2
394 ("stm/stm32h573i_dk", "ARMCLANG_6_21", "2",
395 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800396 # psoc64_GCC_2_RegS_RegNS_Release
Summer Qin379abb62022-10-08 16:41:54 +0800397 ("cypress/psoc64", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800398 "RegS, RegNS", "OFF", "Release", False, "", ""),
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000399 # rp2350_GCC_2_RegBL2_RegS_RegNS_Release_BL2_MEDIUM
Dávid Házi0bd447f2024-10-24 19:44:31 +0000400 ("rpi/rp2350", "GCC_10_3", "2",
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000401 "RegBL2, RegS, RegNS", "OFF", "Release", True, "profile_medium", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800402 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800403 "invalid": _common_tfm_invalid_configs + []
404 }
405
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800406# Config group for nightly job
407config_nightly_test = {"seed_params": {
408 "tfm_platform": ["arm/mps2/an519",
409 "arm/mps2/an521",
410 "arm/mps3/an524",
411 "arm/musca_s1",
Mark Horvathef57baa2022-09-12 13:36:36 +0200412 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300413 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800414 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800415 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800416 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800417 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800418 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800419 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800420 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100421 },
422 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800423 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100424 }
425
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800426# Config group for release job
427config_release_test = {"seed_params": {
428 "tfm_platform": ["arm/mps2/an519",
429 "arm/mps2/an521",
430 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200431 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800432 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300433 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800434 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800435 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800436 "test_psa_api": ["OFF"],
437 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800438 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800439 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100440 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800441 },
442 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800443 "valid": [
444 # sanity test for GCC v11.2
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800445 # AN521_GCC_3_RegBL2_RegS_RegNS_Relwithdebinfo_BL2
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800446 ("arm/mps2/an521", "GCC_11_2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800447 "3", "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800448 True, "", ""),
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800449 ],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800450 "invalid": _common_tfm_invalid_configs + []
451 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800452
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800453# Config groups for TF-M features
454config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800455 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300456 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Huda27ae72022-03-28 15:32:19 +0800457 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800458 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800459 "test_psa_api": ["OFF"],
460 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800461 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800462 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800463 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800464 },
465 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800466 "invalid": _common_tfm_invalid_configs + [
Summer Qin379abb62022-10-08 16:41:54 +0800467 ("arm/mps2/an519", "GCC_10_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800468 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800469 ]
470 }
471
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800472config_profile_m = {"seed_params": {
473 "tfm_platform": ["arm/mps2/an519",
474 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200475 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300476 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800477 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800478 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800479 "test_psa_api": ["OFF"],
480 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800481 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800482 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800483 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800484 },
485 "common_params": _common_tfm_builder_cfg,
486 "invalid": _common_tfm_invalid_configs + []
487 }
488
David Hu3d333762022-10-27 18:12:33 +0800489config_profile_m_arotless = {"seed_params": {
490 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300491 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Hu3d333762022-10-27 18:12:33 +0800492 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800493 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800494 "test_psa_api": ["OFF"],
495 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
496 "with_bl2": [True],
497 "profile": ["profile_medium_arotless"],
498 "extra_params": ["", "PSOFF"]
499 },
500 "common_params": _common_tfm_builder_cfg,
501 "invalid": _common_tfm_invalid_configs + []
502 }
503
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800504config_profile_l = {"seed_params": {
505 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300506 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800507 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800508 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800509 "test_psa_api": ["OFF"],
510 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800511 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800512 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800513 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800514 },
515 "common_params": _common_tfm_builder_cfg,
516 "invalid": _common_tfm_invalid_configs + []
517 }
518
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800519config_ipc_backend = {"seed_params": {
520 "tfm_platform": ["arm/mps2/an519",
521 "arm/mps2/an521",
522 "arm/musca_s1",
523 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300524 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800525 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800526 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800527 "test_psa_api": ["OFF"],
528 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
529 "with_bl2": [True],
530 "profile": [""],
531 "extra_params": ["IPC"]
532 },
533 "common_params": _common_tfm_builder_cfg,
534 "invalid": _common_tfm_invalid_configs + []
535 }
536
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800537config_cc_driver_psa = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200538 "tfm_platform": ["arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800539 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800540 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800541 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800542 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800543 "test_psa_api": ["OFF"],
544 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800545 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800546 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800547 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800548 },
549 "common_params": _common_tfm_builder_cfg,
550 "invalid": _common_tfm_invalid_configs + []
551 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100552
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800553config_fp = {"seed_params": {
Xinyu Zhange91567c2023-09-13 14:10:11 +0800554 "tfm_platform": ["arm/mps2/an521",
555 "arm/mps3/corstone300/an552",
556 "arm/mps3/corstone300/fvp"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800557 "compiler": ["GCC_10_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800558 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800559 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800560 "test_psa_api": ["OFF"],
561 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800562 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800563 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200564 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800565 },
566 "common_params": _common_tfm_builder_cfg,
567 "invalid": _common_tfm_invalid_configs + []
568 }
Karl Zhangeffed972020-06-30 15:48:01 +0800569
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800570config_psa_api = {"seed_params": {
571 "tfm_platform": ["arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200572 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800573 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300574 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800575 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800576 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800577 "test_psa_api": ["IPC",
578 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800579 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800580 "STORAGE"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800581 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800582 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800583 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800584 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800585 },
586 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300587 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800588 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800589
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800590config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800591 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300592 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800593 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800594 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800595 "test_psa_api": ["OFF"],
596 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800597 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800598 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800599 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800600 },
601 "common_params": _common_tfm_builder_cfg,
602 "invalid": _common_tfm_invalid_configs + []
603 }
604
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800605config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800606 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300607 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800608 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800609 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800610 "test_psa_api": ["OFF"],
611 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800612 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800613 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800614 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800615 },
616 "common_params": _common_tfm_builder_cfg,
617 "invalid": _common_tfm_invalid_configs + []
618 }
619
Bence Balogh79fda442022-10-14 18:01:37 +0200620# Config groups for TF-M examples
621config_example_vad = {"seed_params": {
Bence Balogh1aa8d582023-08-29 13:10:02 +0200622 "tfm_platform": ["arm/mps3/corstone300/an552"],
Bence Balogh79fda442022-10-14 18:01:37 +0200623 "compiler": ["GCC_10_3"],
624 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800625 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200626 "test_psa_api": ["OFF"],
627 "cmake_build_type": ["Release"],
628 "with_bl2": [True],
629 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200630 "extra_params": ["EXTRAS_EXAMPLE_VAD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200631 },
632 "common_params": _common_tfm_builder_cfg,
633 "invalid": _common_tfm_invalid_configs + []
634 }
635
Bence Balogh852f8bd2023-08-07 14:46:54 +0200636config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200637 "tfm_platform": ["arm/mps3/corstone310/fvp"],
638 "compiler": ["GCC_10_3"],
639 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800640 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200641 "test_psa_api": ["OFF"],
642 "cmake_build_type": ["Release"],
643 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200644 "profile": ["profile_medium"],
645 "extra_params": ["EXTRAS_EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200646 },
647 "common_params": _common_tfm_builder_cfg,
648 "invalid": _common_tfm_invalid_configs + []
649 }
650
651config_example_dma350_s = {"seed_params": {
652 "tfm_platform": ["arm/mps3/corstone310/fvp"],
653 "compiler": ["GCC_10_3"],
654 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200655 "test_regression": ["RegS"],
Bence Balogh79fda442022-10-14 18:01:37 +0200656 "test_psa_api": ["OFF"],
657 "cmake_build_type": ["Release"],
658 "with_bl2": [True],
659 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200660 "extra_params": ["EXTRAS_EXAMPLE_DMA350_S"]
Bence Balogh79fda442022-10-14 18:01:37 +0200661 },
662 "common_params": _common_tfm_builder_cfg,
663 "invalid": _common_tfm_invalid_configs + []
664 }
665
Bence Baloghd23cbda2023-08-07 15:30:58 +0200666config_example_dma350_ns = {"seed_params": {
667 "tfm_platform": ["arm/mps3/corstone310/fvp"],
668 "compiler": ["GCC_10_3"],
669 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200670 "test_regression": ["RegS, RegNS"],
Bence Baloghd23cbda2023-08-07 15:30:58 +0200671 "test_psa_api": ["OFF"],
672 "cmake_build_type": ["Release"],
673 "with_bl2": [True],
674 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200675 "extra_params": ["EXTRAS_EXAMPLE_DMA350_NS"]
Bence Baloghd23cbda2023-08-07 15:30:58 +0200676 },
677 "common_params": _common_tfm_builder_cfg,
678 "invalid": _common_tfm_invalid_configs + []
679 }
680
Bence Balogh79fda442022-10-14 18:01:37 +0200681config_example_dma350_trigger = {"seed_params": {
682 "tfm_platform": ["arm/mps3/corstone310/fvp"],
683 "compiler": ["GCC_10_3"],
684 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800685 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200686 "test_psa_api": ["OFF"],
687 "cmake_build_type": ["Release"],
688 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200689 "profile": ["profile_medium"],
690 "extra_params": ["EXTRAS_EXAMPLE_DMA350_TRIGGER"]
Bence Balogh79fda442022-10-14 18:01:37 +0200691 },
692 "common_params": _common_tfm_builder_cfg,
693 "invalid": _common_tfm_invalid_configs + []
694 }
695
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300696config_misra = {"seed_params": {
697 "tfm_platform": ["arm/musca_b1"],
698 "compiler": ["GCC_10_3"],
699 "isolation_level": ["1"],
700 "test_regression": ["OFF"],
701 "test_psa_api": ["OFF"],
702 "cmake_build_type": ["Debug"],
703 "with_bl2": [True],
Matthew Dalzell0d108612024-06-21 21:12:06 +0100704 "profile": ["profile_medium_arotless"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300705 "extra_params": ["PSOFF"]
706 },
707 "common_params": _common_tfm_builder_cfg,
Xinyu Zhange17926f2023-08-14 11:00:43 +0800708 "valid": [
709 # MUSCA_B1_GCC_2_Debug_BL2_MEDIUM_PSOFF
710 ("arm/musca_b1", "GCC_10_3", "2", "OFF",
711 "OFF", "Debug", True, "profile_medium", "PSOFF"),
712 # MUSCA_B1_GCC_3_Debug_BL2_LARGE_PSOFF
713 ("arm/musca_b1", "GCC_10_3", "3", "OFF",
714 "OFF", "Debug", True, "profile_large", "PSOFF"),
715 ],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300716 "invalid": _common_tfm_invalid_configs + []
717 }
718
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300719config_misra_debug = {"seed_params": {
720 "tfm_platform": ["arm/musca_b1"],
721 "compiler": ["GCC_10_3"],
722 "isolation_level": ["1"],
723 "test_regression": ["OFF"],
724 "test_psa_api": ["OFF"],
725 "cmake_build_type": ["Debug"],
726 "with_bl2": [True],
727 "profile": ["profile_small"],
728 "extra_params": ["PSOFF"]
729 },
730 "common_params": _common_tfm_builder_cfg,
731 "invalid": _common_tfm_invalid_configs + []
732 }
733
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800734# Config groups for code coverage
735config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800736config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800737config_cov_profile_s["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800738
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800739config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800740config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800741config_cov_profile_m["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800742
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800743config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800744config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800745config_cov_profile_l["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800746
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800747config_cov_ipc_backend = deepcopy(config_ipc_backend)
748config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
749config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_10_3"]
750
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800751config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800752config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800753config_cov_nsce["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800754
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800755config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800756config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800757config_cov_mmio["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800758
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800759config_cov_fp = deepcopy(config_fp)
760config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang778424e2023-02-27 11:39:57 +0800761config_cov_fp["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800762
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800763# Config groups for platforms
764config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800765 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300766 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800767 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800768 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800769 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800770 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800771 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800772 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800773 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800774 },
775 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800776 "invalid": _common_tfm_invalid_configs + []
777 }
778
779config_an521 = {"seed_params": {
780 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300781 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800782 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800783 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800784 "test_psa_api": ["OFF"],
785 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800786 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800787 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800788 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800789 },
790 "common_params": _common_tfm_builder_cfg,
791 "invalid": _common_tfm_invalid_configs + []
792 }
793
794config_an524 = {"seed_params": {
795 "tfm_platform": ["arm/mps3/an524"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300796 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800797 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800798 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800799 "test_psa_api": ["OFF"],
800 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800801 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800802 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800803 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800804 },
805 "common_params": _common_tfm_builder_cfg,
806 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800807 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000808
Bence Balogh1aa8d582023-08-29 13:10:02 +0200809config_cs300_an547 = {"seed_params": {
810 "tfm_platform": ["arm/mps3/corstone300/an547"],
811 "compiler": ["GCC_10_3"],
812 "isolation_level": ["1"],
813 "test_regression": ["OFF"],
814 "test_psa_api": ["OFF"],
815 "cmake_build_type": ["Debug"],
816 "with_bl2": [True],
817 "profile": [""],
818 "extra_params": [""]
819 },
820 "common_params": _common_tfm_builder_cfg,
821 "invalid": _common_tfm_invalid_configs + []
822 }
Xinyu Zhang38b76742021-11-11 13:57:56 +0800823
Bence Balogh1aa8d582023-08-29 13:10:02 +0200824config_cs300_an552 = {"seed_params": {
825 "tfm_platform": ["arm/mps3/corstone300/an552"],
826 "compiler": ["GCC_10_3"],
827 "isolation_level": ["1", "2"],
828 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
829 "test_psa_api": ["OFF"],
830 "cmake_build_type": ["Debug", "Release"],
831 "with_bl2": [True],
832 "profile": [""],
833 "extra_params": [""]
834 },
835 "common_params": _common_tfm_builder_cfg,
836 "invalid": _common_tfm_invalid_configs + []
837 }
838
839config_cs300_fvp = {"seed_params": {
840 "tfm_platform": ["arm/mps3/corstone300/fvp"],
841 "compiler": ["GCC_10_3"],
842 "isolation_level": ["1", "2"],
843 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
844 "test_psa_api": ["OFF"],
845 "cmake_build_type": ["Debug", "Release"],
846 "with_bl2": [True],
847 "profile": [""],
848 "extra_params": [""]
849 },
850 "common_params": _common_tfm_builder_cfg,
851 "invalid": _common_tfm_invalid_configs + []
852 }
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800853
854config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200855 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300856 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800857 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800858 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800859 "test_psa_api": ["OFF"],
860 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800861 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800862 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800863 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800864 },
865 "common_params": _common_tfm_builder_cfg,
866 "invalid": _common_tfm_invalid_configs + []
867 }
868
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800869config_musca_s1 = {"seed_params": {
870 "tfm_platform": ["arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300871 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800872 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800873 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800874 "test_psa_api": ["OFF"],
875 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800876 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800877 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800878 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800879 },
880 "common_params": _common_tfm_builder_cfg,
881 "invalid": _common_tfm_invalid_configs + []
882 }
883
Bence Balogh8731a092022-05-24 17:24:54 +0200884config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +0100885 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Bence Balogh176b78f2022-02-22 13:49:34 +0100886 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800887 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800888 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800889 "test_psa_api": ["OFF"],
890 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800891 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800892 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800893 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800894 },
895 "common_params": _common_tfm_builder_cfg,
896 "invalid": _common_tfm_invalid_configs + []
897 }
898
Nicola Mazzucatobde5d432024-05-20 11:43:18 +0100899config_corstone310_pacbti = {"seed_params": {
900 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Nicola Mazzucatob4e19572024-08-21 12:26:14 +0100901 "compiler": ["ARMCLANG_6_21"],
Nicola Mazzucatobde5d432024-05-20 11:43:18 +0100902 "isolation_level": ["1"],
903 "test_regression": ["OFF"],
904 "test_psa_api": ["OFF"],
905 "cmake_build_type": ["Debug"],
906 "with_bl2": [True],
907 "profile": [""],
908 "extra_params": ["PACBTI_STD"]
909 },
910 "common_params": _common_tfm_builder_cfg,
911 "invalid": _common_tfm_invalid_configs + []
912 }
913
Gergely Korcsákba0c5212024-04-03 18:21:49 +0200914config_corstone315 = {"seed_params": {
915 "tfm_platform": ["arm/mps4/corstone315"],
916 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
917 "isolation_level": ["1"],
Gergely Korcsáka403e222024-04-09 10:51:00 +0200918 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Gergely Korcsákba0c5212024-04-03 18:21:49 +0200919 "test_psa_api": ["OFF"],
920 "cmake_build_type": ["Debug", "Release"],
921 "with_bl2": [True],
922 "profile": [""],
923 "extra_params": [""]
924 },
925 "common_params": _common_tfm_builder_cfg,
926 "invalid": _common_tfm_invalid_configs + []
927 }
928
Gergely Korcsák78a4d142024-08-05 07:41:36 +0200929config_corstone320 = {"seed_params": {
930 "tfm_platform": ["arm/mps4/corstone320"],
931 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
932 "isolation_level": ["1"],
933 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
934 "test_psa_api": ["OFF"],
935 "cmake_build_type": ["Debug", "Release"],
936 "with_bl2": [True],
937 "profile": [""],
938 "extra_params": [""]
939 },
940 "common_params": _common_tfm_builder_cfg,
941 "invalid": _common_tfm_invalid_configs + []
942 }
943
Jamie Fox82a91d02024-09-27 14:54:14 +0100944config_rse_tc3 = {"seed_params": {
945 "tfm_platform": ["arm/rse/tc/tc3"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100946 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +0100947 "isolation_level": ["1", "2", "3"],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100948 "test_regression": ["OFF", "RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100949 "test_psa_api": ["OFF"],
950 "cmake_build_type": ["Debug", "Release"],
951 "with_bl2": [True],
952 "profile": [""],
Nicola Mazzucato551c5f32024-10-02 09:43:04 +0100953 "extra_params": ["ATTESTATION_SCHEME_DPE"]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100954 },
955 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +0000956 "invalid": _common_tfm_invalid_configs + [
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000957 # BL2 is too large for RSE in Debug builds with tests
Jamie Fox82a91d02024-09-27 14:54:14 +0100958 ("arm/rse/tc/tc3", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +0000959 "Debug", True, "*", "*"),
960 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100961 }
962
Joel Goddard2dd81a12024-01-23 15:10:08 +0000963config_rse_rdfremont = {"seed_params": {
964 "tfm_platform": ["arm/rse/rdfremont"],
965 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +0100966 "isolation_level": ["1", "2", "3"],
Joel Goddard2dd81a12024-01-23 15:10:08 +0000967 "test_regression": ["OFF"],
968 "test_psa_api": ["OFF"],
969 "cmake_build_type": ["Debug", "Release"],
970 "with_bl2": [True],
971 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100972 "extra_params": ["NSOFF, CFG0"]
Joel Goddard2dd81a12024-01-23 15:10:08 +0000973 },
974 "common_params": _common_tfm_builder_cfg,
975 "invalid": _common_tfm_invalid_configs + []
976 }
977
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100978config_rse_rd1ae = {"seed_params": {
979 "tfm_platform": ["arm/rse/automotive_rd/rd1ae"],
980 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +0100981 "isolation_level": ["1", "2", "3"],
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100982 "test_regression": ["OFF"],
983 "test_psa_api": ["OFF"],
984 "cmake_build_type": ["Debug", "Release"],
985 "with_bl2": [True],
986 "profile": [""],
987 "extra_params": ["NSOFF"]
988 },
989 "common_params": _common_tfm_builder_cfg,
990 "invalid": _common_tfm_invalid_configs + []
991 }
992
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800993config_psoc64 = {"seed_params": {
994 "tfm_platform": ["cypress/psoc64"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300995 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800996 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800997 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800998 "test_psa_api": ["OFF"],
999 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001000 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001001 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001002 "extra_params": [""]
1003 },
1004 "common_params": _common_tfm_builder_cfg,
1005 "invalid": _common_tfm_invalid_configs + []
1006 }
1007
1008config_corstone1000 = {"seed_params": {
1009 "tfm_platform": ["arm/corstone1000"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001010 "compiler": ["GCC_10_3"],
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001011 "isolation_level": ["1", "2"],
Emekcan Arasf8b39802023-04-24 10:15:22 +01001012 "test_regression": ["RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001013 "test_psa_api": ["OFF"],
Matthew Dalzell5cf10c62024-09-19 11:22:48 +01001014 "cmake_build_type": ["Release"], # previously Debug
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001015 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001016 "profile": [""],
Xinyu Zhang09acfbf2023-10-30 18:30:48 +08001017 "extra_params": ["NSOFF, CS1K_TEST, FVP", "NSOFF, CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001018 },
1019 "common_params": _common_tfm_builder_cfg,
1020 "invalid": _common_tfm_invalid_configs + []
1021 }
1022
1023config_stm32l562e_dk = {"seed_params": {
1024 "tfm_platform": ["stm/stm32l562e_dk"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001025 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001026 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001027 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001028 "test_psa_api": ["OFF"],
1029 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001030 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001031 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001032 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
1033 },
1034 "common_params": _common_tfm_builder_cfg,
1035 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001036 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001037 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001038 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001039 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001040 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001041 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001042 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001043 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001044 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001045 ]
1046 }
1047
1048config_b_u585i_iot02a = {"seed_params": {
1049 "tfm_platform": ["stm/b_u585i_iot02a"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001050 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Arthur She026ebb62023-02-08 18:47:39 -08001051 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -07001052 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001053 "test_psa_api": ["OFF"],
1054 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001055 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001056 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -08001057 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001058 },
1059 "common_params": _common_tfm_builder_cfg,
1060 "invalid": _common_tfm_invalid_configs + []
1061 }
1062
Anton Komlev4164ab62024-02-23 10:59:56 +01001063config_stm32h573i_dk = {"seed_params": {
1064 "tfm_platform": ["stm/stm32h573i_dk"],
1065 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1066 "isolation_level": ["1", "2"],
1067 "test_regression": ["OFF", "RegS, RegNS"],
1068 "test_psa_api": ["OFF"],
1069 "cmake_build_type": ["Release"],
1070 "with_bl2": [True],
1071 "profile": [""],
1072 "extra_params": [""]
1073 },
1074 "common_params": _common_tfm_builder_cfg,
1075 "invalid": _common_tfm_invalid_configs + []
1076 }
1077
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001078config_nucleo_l552ze_q = {"seed_params": {
1079 "tfm_platform": ["stm/nucleo_l552ze_q"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001080 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001081 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001082 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001083 "test_psa_api": ["OFF"],
1084 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001085 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001086 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001087 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001088 },
1089 "common_params": _common_tfm_builder_cfg,
1090 "invalid": _common_tfm_invalid_configs + []
1091 }
1092
1093config_lpcxpresso55s69 = {"seed_params": {
1094 "tfm_platform": ["nxp/lpcxpresso55s69"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001095 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001096 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001097 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001098 "test_psa_api": ["OFF"],
1099 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001100 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001101 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001102 "extra_params": [""]
1103 },
1104 "common_params": _common_tfm_builder_cfg,
1105 "invalid": _common_tfm_invalid_configs + []
1106 }
1107
Xinyu Zhang38b76742021-11-11 13:57:56 +08001108config_bl5340 = {"seed_params": {
1109 "tfm_platform": ["lairdconnectivity/bl5340_dvk_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001110 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001111 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001112 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001113 "test_psa_api": ["OFF"],
1114 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001115 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001116 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001117 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001118 },
1119 "common_params": _common_tfm_builder_cfg,
1120 "invalid": _common_tfm_invalid_configs + []
1121 }
1122
1123config_nrf5340dk = {"seed_params": {
1124 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001125 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001126 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001127 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001128 "test_psa_api": ["OFF"],
1129 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001130 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001131 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001132 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001133 },
1134 "common_params": _common_tfm_builder_cfg,
1135 "invalid": _common_tfm_invalid_configs + []
1136 }
1137
1138config_nrf9160dk = {"seed_params": {
1139 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001140 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001141 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001142 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001143 "test_psa_api": ["OFF"],
1144 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001145 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001146 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001147 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001148 },
1149 "common_params": _common_tfm_builder_cfg,
1150 "invalid": _common_tfm_invalid_configs + []
1151 }
1152
1153config_m2351 = {"seed_params": {
1154 "tfm_platform": ["nuvoton/m2351"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001155 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001156 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001157 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001158 "test_psa_api": ["OFF"],
1159 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001160 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001161 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001162 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001163 },
1164 "common_params": _common_tfm_builder_cfg,
1165 "invalid": _common_tfm_invalid_configs + []
1166 }
1167
1168config_m2354 = {"seed_params": {
1169 "tfm_platform": ["nuvoton/m2354"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001170 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001171 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001172 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001173 "test_psa_api": ["OFF"],
1174 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001175 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001176 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001177 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001178 },
1179 "common_params": _common_tfm_builder_cfg,
1180 "invalid": _common_tfm_invalid_configs + []
1181 }
1182
Dávid Házi0bd447f2024-10-24 19:44:31 +00001183config_rp2350 = {"seed_params": {
1184 "tfm_platform": ["rpi/rp2350"],
1185 "compiler": ["GCC_10_3"],
1186 "isolation_level": ["2"],
1187 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1188 "test_psa_api": ["OFF"],
1189 "cmake_build_type": ["RelWithDebInfo", "Release"],
1190 "with_bl2": [True],
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +00001191 "profile": ["profile_medium"],
Dávid Házi0bd447f2024-10-24 19:44:31 +00001192 "extra_params": [""]
1193 },
1194 "common_params": _common_tfm_builder_cfg,
1195 "invalid": _common_tfm_invalid_configs + []
1196 }
1197
Jianliang Shen48704152023-10-17 17:06:00 +08001198config_mem_footprint = {"seed_params": {
1199 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001200 "compiler": ["ARMCLANG_6_21"],
Jianliang Shen48704152023-10-17 17:06:00 +08001201 "isolation_level": ["1"],
1202 "test_regression": ["OFF"],
1203 "test_psa_api": ["OFF"],
1204 "cmake_build_type": ["Minsizerel"],
1205 "with_bl2": [True],
1206 "profile": [""],
1207 "extra_params": [""]
1208 },
1209 "common_params": _common_tfm_builder_cfg,
1210 "valid": [
1211 # AN521_ARMCLANG_1_Minsizerel_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001212 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen48704152023-10-17 17:06:00 +08001213 "OFF", "OFF", "Minsizerel", True, "profile_small", "PSOFF"),
1214 # AN521_ARMCLANG_2_Minsizerel_BL2_MEDIUM_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001215 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Jianliang Shen48704152023-10-17 17:06:00 +08001216 "OFF", "OFF", "Minsizerel", True, "profile_medium", "PSOFF"),
1217 # AN521_ARMCLANG_3_Minsizerel_BL2_LARGE_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001218 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Jianliang Shen48704152023-10-17 17:06:00 +08001219 "OFF", "OFF", "Minsizerel", True, "profile_large", "PSOFF"),
1220 ],
1221 "invalid": _common_tfm_invalid_configs + []
1222 }
1223
Jianliang Shen5492f752023-07-27 15:59:01 +08001224config_prof = {"seed_params": {
1225 "tfm_platform": ["arm/mps2/an521"],
1226 "compiler": ["GCC_10_3"],
1227 "isolation_level": ["1"],
1228 "test_regression": ["OFF"],
1229 "test_psa_api": ["OFF"],
1230 "cmake_build_type": ["Release"],
1231 "with_bl2": [True],
1232 "profile": [""],
1233 "extra_params": ["PROF"]
1234 },
1235 "common_params": _common_tfm_builder_cfg,
1236 "valid": [
1237 # AN521_GNUARM_1_Release_BL2_IPC_PROF
1238 ("arm/mps2/an521", "GCC_10_3", "1",
1239 "OFF", "OFF", "Release", True, "", "IPC, PROF"),
1240 # AN521_GNUARM_2_Release_BL2_PROF
1241 ("arm/mps2/an521", "GCC_10_3", "2",
1242 "OFF", "OFF", "Release", True, "", "PROF"),
1243 # AN521_GNUARM_3_Release_BL2_PROF
1244 ("arm/mps2/an521", "GCC_10_3", "3",
1245 "OFF", "OFF", "Release", True, "", "PROF"),
1246 ],
1247 "invalid": _common_tfm_invalid_configs + []
1248 }
1249
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001250# Config groups for debug
1251config_debug = {"seed_params": {
1252 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001253 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001254 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001255 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001256 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001257 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001258 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001259 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001260 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001261 },
1262 "common_params": _common_tfm_builder_cfg,
1263 "invalid": _common_tfm_invalid_configs + []
1264 }
1265
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001266config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001267config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001268
1269config_debug_PSA_API = {"seed_params": {
1270 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001271 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001272 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001273 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001274 "test_psa_api": ["CRYPTO",
1275 "INITIAL_ATTESTATION",
1276 "STORAGE",
1277 "IPC"],
1278 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001279 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001280 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001281 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001282 },
1283 "common_params": _common_tfm_builder_cfg,
1284 "invalid": _common_tfm_invalid_configs + []
1285 }
1286
Karl Zhangaff558a2020-05-15 14:28:23 +01001287_builtin_configs = {
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001288 # per-patch test group
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001289 "pp_test": config_pp_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001290
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001291 # nightly test groups
1292 "nightly_test": config_nightly_test,
1293 "nightly_profile_s": config_profile_s,
1294 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001295 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001296 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001297 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001298 "nightly_cc_driver_psa": config_cc_driver_psa,
1299 "nightly_fp":config_fp,
1300 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +08001301 "nightly_nsce": config_nsce,
1302 "nightly_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001303 "nightly_cs300_an547": config_cs300_an547,
1304 "nightly_cs300_an552": config_cs300_an552,
1305 "nightly_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001306 "nightly_corstone310": config_corstone310,
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001307 "nightly_corstone310_pacbti" : config_corstone310_pacbti,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001308 "nightly_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001309 "nightly_corstone320": config_corstone320,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001310 "nightly_corstone1000": config_corstone1000,
Jamie Fox82a91d02024-09-27 14:54:14 +01001311 "nightly_rse_tc3": config_rse_tc3,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001312 "nightly_rse_rdfremont": config_rse_rdfremont,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001313 "nightly_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001314 "nightly_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001315 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001316 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001317 "nightly_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001318 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001319 "nightly_rp2350": config_rp2350,
Karl Zhang14573bc2020-06-08 09:23:21 +08001320
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001321 # release test groups
1322 "release_test": config_release_test,
1323 "release_profile_s": config_profile_s,
1324 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001325 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001326 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001327 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001328 "release_cc_driver_psa": config_cc_driver_psa,
1329 "release_fp": config_fp,
1330 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001331 "release_nsce": config_nsce,
1332 "release_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001333 "release_cs300_an547": config_cs300_an547,
1334 "release_cs300_an552": config_cs300_an552,
1335 "release_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001336 "release_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001337 "release_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001338 "release_corstone320": config_corstone320,
Jamie Fox82a91d02024-09-27 14:54:14 +01001339 "release_rse_tc3": config_rse_tc3,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001340 "release_rse_rdfremont": config_rse_rdfremont,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001341 "release_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001342 "release_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001343 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001344 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001345 "release_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001346 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001347 "release_rp2350": config_rp2350,
Karl Zhang14573bc2020-06-08 09:23:21 +08001348
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001349 # code coverage test groups
1350 "coverage_profile_s": config_cov_profile_s,
1351 "coverage_profile_m": config_cov_profile_m,
1352 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001353 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001354 "coverage_nsce": config_cov_nsce,
1355 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001356 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001357
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001358 # MISRA analysis
1359 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001360 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001361
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001362 # platform groups
1363 "an521": config_an521,
1364 "an519": config_an519,
1365 "an524": config_an524,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001366 "cs300_an547": config_cs300_an547,
1367 "cs300_an552": config_cs300_an552,
1368 "cs300_fvp": config_cs300_fvp,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001369 "musca_b1": config_musca_b1,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001370 "musca_s1": config_musca_s1,
Bence Balogh8731a092022-05-24 17:24:54 +02001371 "corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001372 "corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001373 "corstone320": config_corstone320,
Jamie Fox82a91d02024-09-27 14:54:14 +01001374 "rse_tc3": config_rse_tc3,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001375 "rse_rdfremont": config_rse_rdfremont,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001376 "rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001377 "cypress_psoc64": config_psoc64,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001378 "corstone1000": config_corstone1000,
Anton Komlev55c3c022024-03-05 16:24:17 +01001379 "stm_stm32l562e_dk": config_stm32l562e_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001380 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001381 "stm_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001382 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1383 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001384 "laird_bl5340": config_bl5340,
1385 "nordic_nrf5340dk": config_nrf5340dk,
1386 "nordic_nrf9160dk": config_nrf9160dk,
1387 "nuvoton_m2351": config_m2351,
1388 "nuvoton_m2354": config_m2354,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001389 "rp2350": config_rp2350,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001390
Bence Balogh79fda442022-10-14 18:01:37 +02001391 # config groups for tf-m-extras examples
1392 "example_vad": config_example_vad,
1393 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001394 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001395 "example_dma350_s": config_example_dma350_s,
Bence Baloghd23cbda2023-08-07 15:30:58 +02001396 "example_dma350_ns": config_example_dma350_ns,
Bence Balogh79fda442022-10-14 18:01:37 +02001397
Jianliang Shen48704152023-10-17 17:06:00 +08001398 # config groups for tf-m performance monitor
1399 "mem_footprint": config_mem_footprint,
Jianliang Shen5492f752023-07-27 15:59:01 +08001400 "profiling": config_prof,
1401
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001402 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001403 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001404 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001405 "debug_PSA_API": config_debug_PSA_API,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001406 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001407
1408if __name__ == '__main__':
1409 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001410
Minos Galanakisea421232019-06-20 17:11:28 +01001411 # Default behavior is to export refference config when called
1412 _dir = os.getcwd()
1413 from utils import save_json
1414 for _cname, _cfg in _builtin_configs.items():
1415 _fname = os.path.join(_dir, _cname + ".json")
1416 print("Exporting config %s" % _fname)
1417 save_json(_fname, _cfg)