blob: 93db0b01b6e861cc541f871b690381c369bfb505 [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/*
Raef Colesaac84bc2025-01-09 14:20:12 +000011 * SPDX-FileCopyrightText: Copyright The TrustedFirmware-M Contributors
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 " + \
David Vinczefaa61ff2025-01-09 16:02:06 +000065 "-DT_COSE_PATH=%(codebase_root_dir)s/../t_cose " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080066 "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras ",
67
68 "nspe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080069 "-S %(nspe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080070 "-B %(ci_build_root_dir)s/nspe " + \
71 "-DCONFIG_SPE_PATH=%(ci_build_root_dir)s/spe/api_ns " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080072 "-DTFM_TOOLCHAIN_FILE=%(ci_build_root_dir)s/spe/api_ns/cmake/%(ns_compiler)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080073 "%(extra_params)s " + \
David Vinczefaa61ff2025-01-09 16:02:06 +000074 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
75 "-DT_COSE_PATH=%(codebase_root_dir)s/../t_cose ",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080076
77 # CMake build commands will be executed for every build.
78 "spe_cmake_build": "cmake --build %(ci_build_root_dir)s/spe -- install",
79 "nspe_cmake_build": "cmake --build %(ci_build_root_dir)s/nspe --",
Karl Zhangaff558a2020-05-15 14:28:23 +010080
Xinyu Zhang433771e2022-04-01 16:49:17 +080081 "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
82
Minos Galanakisea421232019-06-20 17:11:28 +010083 # A small subset of string substitution params is allowed in commands.
84 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
85 # _tbm_target_platform_ with the paths set when building
86
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080087 "artifact_capture_rex": (r'%(ci_build_root_dir)s/nspe'
Minos Galanakisea421232019-06-20 17:11:28 +010088 r'/(\w+\.(?:axf|bin|hex))$'),
89
Xinyu Zhang46b37182023-06-30 15:36:44 +080090 # Keys will append extra commands when matching target_platform
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080091 "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;"
Harsimran Singh Tungala0b03722025-08-28 11:00:21 +000092 "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=59392;"
Xinyu Zhang09acfbf2023-10-30 18:30:48 +080093 "%(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 +010094 "arm/musca_b1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +010095 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080096 "%(ci_build_root_dir)s/spe/bin/"
97 "bl2.bin "
98 "-Binary -offset 0xA000000 "
99 "-fill 0xFF 0xA000000 0xA020000 "
100 "%(ci_build_root_dir)s/nspe/"
101 "tfm_s_ns_signed.bin "
102 "-Binary -offset 0xA020000 "
103 "-fill 0xFF 0xA020000 0xA200000 "
104 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100105 "spe/bin/tfm.hex -Intel;"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100106 "fi;"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100107 "arm/rse/tc/tc3": ("if [ -f \"%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin\" ]; then "
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100108 "cp %(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin %(ci_build_root_dir)s/spe/bin/sram.bin;"
Raef Colesf9a20742024-06-06 10:47:49 +0100109 "else "
Raef Coles28948402025-07-28 10:34:50 +0100110 # dummy file with no data to keep the FVP happy
111 "touch %(ci_build_root_dir)s/spe/bin/sram.bin;"
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100112 "fi;"
Raef Colesf9a20742024-06-06 10:47:49 +0100113 "srec_cat "
Jamie Fox9283cbc2024-04-22 13:40:01 +0100114 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
115 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
116 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100117 "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 +0100118 "chmod 755 fiptool;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100119 "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 +0100120 "./fiptool update "
Jamie Fox82a91d02024-09-27 14:54:14 +0100121 "--align 8192 --rse-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
122 "--align 8192 --rse-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
123 "--align 8192 --rse-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
124 "--align 8192 --rse-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
125 "--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 +0100126 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
127 "fip.bin"),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000128 "arm/rse/tc/tc4": ("if [ -f \"%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin\" ]; then "
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100129 "cp %(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin %(ci_build_root_dir)s/spe/bin/sram.bin;"
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000130 "else "
Raef Coles28948402025-07-28 10:34:50 +0100131 # dummy file with no data to keep the FVP happy
132 "touch %(ci_build_root_dir)s/spe/bin/sram.bin;"
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100133 "fi;"
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000134 "srec_cat "
135 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
136 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
137 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000138 # fiptool in tc3 directory also compatible with tc4 fip.bin
139 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fiptool https://downloads.trustedfirmware.org/tf-m/rse/tc/tc3/fiptool;"
140 "chmod 755 fiptool;"
141 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fip.bin https://downloads.trustedfirmware.org/tf-m/rse/tc/tc4/4806a3a08/fip.bin;"
142 "./fiptool update "
143 "--align 8192 --rse-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
144 "--align 8192 --rse-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
145 "--align 8192 --rse-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
146 "--align 8192 --rse-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
147 "--align 8192 --rse-sic-tables-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_sic_tables_signed.bin "
148 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
149 "fip.bin"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800150 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800151 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
152 "pushd %(ci_build_root_dir)s/spe/api_ns;"
153 "mkdir -p image_signing/scripts ;"
154 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
155 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
156 "bin/bl2.bin "
157 "bin/tfm_s_signed.bin "
158 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800159 "popd"),
160 "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800161 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
162 "pushd %(ci_build_root_dir)s/spe/api_ns;"
163 "mkdir -p image_signing/scripts ;"
164 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
165 "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
166 "bin/bl2.bin "
167 "bin/tfm_s_signed.bin "
168 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800169 "popd"),
Anton Komlev4164ab62024-02-23 10:59:56 +0100170 "stm/stm32h573i_dk": ("echo 'STM32H573I-DK board post process';"
171 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
172 "pushd %(ci_build_root_dir)s/spe/api_ns;"
173 "mkdir -p image_signing/scripts ;"
174 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
175 "tar jcf ./bin/stm32h573i_dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
176 "bin/bl2.bin "
177 "bin/tfm_s_signed.bin "
178 "image_signing/scripts/tfm_ns_signed.bin ;"
179 "popd"),
Matthew Dalzell0bdc0b22024-04-17 18:13:31 +0100180 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 bo.ard post process\n';"
181 "mkdir -p %(codebase_root_dir)s/build/bin ;"
182 # Workaround for flash_JLink.py
183 "cp %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(codebase_root_dir)s/build/bin ;"
184 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(codebase_root_dir)s/build/bin ;"
185 "cd %(codebase_root_dir)s/build/bin; "
186 "rm -f flash.jlink; "
187 "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then "
188 "echo r >> flash.jlink; "
189 "echo erase >> flash.jlink; "
190 "echo loadfile bl2.hex >> flash.jlink; "
191 "echo loadfile tfm_s_ns_signed.bin -0x8000 >> flash.jlink; "
192 "echo r >> flash.jlink; "
193 "echo go >> flash.jlink; "
194 "echo exit >> flash.jlink; "
195 "else "
196 "echo r >> flash.jlink; "
197 "echo erase >> flash.jlink; "
198 "echo loadfile tfm_s.hex >> flash.jlink; "
199 "echo loadfile tfm_ns.hex >> flash.jlink; "
200 "echo r >> flash.jlink; "
201 "echo go >> flash.jlink; "
202 "echo exit >> flash.jlink; "
203 "fi;"
204 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
205 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
206 "mv lpcxpresso55s69-tfm.tar.bz2 %(ci_build_root_dir)s/nspe/bin ;"
207 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800208 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800209 "pushd %(codebase_root_dir)s/;"
Matthew Dalzell0060be62025-08-18 16:47:10 +0100210 "cysecuretools "
Arthur She87602dc2022-02-06 14:42:18 -0800211 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
212 "--target cy8ckit-064s0s2-4343w "
213 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800214 "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800215 "--image-type BOOT --image-id 1;"
Matthew Dalzell0060be62025-08-18 16:47:10 +0100216 "cysecuretools "
Arthur She87602dc2022-02-06 14:42:18 -0800217 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
218 "--target cy8ckit-064s0s2-4343w "
219 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800220 "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800221 "--image-type BOOT --image-id 16;"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800222 "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
223 "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 +0800224 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100225 },
226
227 # (Optional) If set will fail if those artefacts are missing post build
228 "required_artefacts": {"all": [
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100229 "%(ci_build_root_dir)s/spe/bin/"
230 "tfm_s.bin",
231 "%(ci_build_root_dir)s/nspe/"
232 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200233 "arm/musca_b1": [
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100234 "%(ci_build_root_dir)s/tfm.hex",
235 "%(ci_build_root_dir)s/spe/bin/"
236 "bl2.bin",
237 "%(ci_build_root_dir)s/spe/bin/"
238 "tfm_sign.bin"],
Jamie Fox82a91d02024-09-27 14:54:14 +0100239 "arm/rse/tc/tc3": [
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100240 "%(ci_build_root_dir)s/spe/bin/rom.bin",
Raef Coles28948402025-07-28 10:34:50 +0100241 "%(ci_build_root_dir)s/spe/bin/provisioning/combined_provisioning_message.bin",
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100242 "%(ci_build_root_dir)s/spe/bin/sram.bin",
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100243 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"],
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000244 "arm/rse/tc/tc4": [
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100245 "%(ci_build_root_dir)s/spe/bin/rom.bin",
Raef Coles28948402025-07-28 10:34:50 +0100246 "%(ci_build_root_dir)s/spe/bin/provisioning/combined_provisioning_message.bin",
Jackson Cooper-Driverc034b912025-08-06 15:06:36 +0100247 "%(ci_build_root_dir)s/spe/bin/sram.bin",
Antonio de Angelis9a3bd142025-06-27 21:37:31 +0100248 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100249 }
250}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100251
Xinyu Zhangb708f572020-09-15 11:43:46 +0800252# List of all build configs that are impossible under all circumstances
253_common_tfm_invalid_configs = [
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100254 # LR_CODE size exceeds limit on MUSCA_B1 with regression tests in Debug mode built with ARMCLANG
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300255 ("arm/musca_b1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800256 # Load range overlap on Musca for IPC Debug type: T895
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300257 ("arm/musca_b1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300258 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800259 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800260 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800261 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800262 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800263 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
264 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800265 ]
266
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100267# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800268# Config group for per-patch job
269config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800270 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800271 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300272 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800273 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800274 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800275 "test_psa_api": ["OFF"],
276 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800277 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800278 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800279 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800280 },
281 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800282 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800283 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300284 ("arm/mps2/an519", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800285 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800286 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100287 ("arm/mps2/an519", "GCC_14_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800288 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
289 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100290 ("arm/mps2/an519", "GCC_14_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800291 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
292 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300293 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800294 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
295 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300296 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800297 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Chris Branddc827302024-10-11 15:20:17 -0700298 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSCLEAR
299 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
300 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSCLEAR"),
301 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSLIMIT
302 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
303 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSLIMIT"),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800304 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300305 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen6984bef2023-07-25 10:36:56 +0800306 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800307 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300308 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800309 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
310 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300311 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800312 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800313 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100314 ("arm/mps2/an521", "GCC_14_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800315 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Umair Khan80332b62025-09-25 14:06:24 +0100316 # AN521_GCC_1_RegBL2_RegS_RegNS_RegFihHigh_Debug_BL2
317 ("arm/mps2/an521", "GCC_13_2", "1",
318 "RegBL2, RegS, RegNS, RegFihHigh", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100319 # AN521_GCC_2_RegBL2_RegS_RegNS_Debug_BL2_MEDIUM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100320 ("arm/mps2/an521", "GCC_14_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800321 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
322 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100323 ("arm/mps2/an521", "GCC_14_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800324 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
325 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100326 ("arm/mps2/an521", "GCC_14_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800327 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800328 # AN521_GCC_1_FF_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100329 ("arm/mps2/an521", "GCC_14_3", "1",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800330 "OFF", "IPC", "Release", True, "", ""),
331 # AN521_ARMCLANG_2_STORAGE_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300332 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800333 "OFF", "STORAGE", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100334 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100335 ("arm/mps3/corstone300/fvp", "GCC_14_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800336 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100337 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100338 ("arm/mps3/corstone300/fvp", "GCC_14_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800339 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100340 # corstone310_ARMCLANG_1_Debug_BL2_PACBTI_STD
Nicola Mazzucatob4e19572024-08-21 12:26:14 +0100341 ("arm/mps3/corstone310/fvp", "ARMCLANG_6_21", "1",
Nicola Mazzucatob542f2b2024-05-23 10:13:43 +0100342 "OFF", "OFF", "Debug", True, "", "PACBTI_STD"),
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800343 # corstone1000_GCC_2_RegS_Debug_BL2_NSOFF_CS1K_TEST_FVP
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100344 ("arm/corstone1000", "GCC_14_3", "2",
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800345 "RegS", "OFF", "Debug", True, "", "NSOFF, CS1K_TEST, FVP"),
Matthew Dalzell397fb3c2024-06-21 11:03:38 +0100346 # corstone315_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
347 ("arm/mps4/corstone315", "ARMCLANG_6_21", "1",
348 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Gergely Korcsák78a4d142024-08-05 07:41:36 +0200349 # corstone320_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
350 ("arm/mps4/corstone320", "ARMCLANG_6_21", "1",
351 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800352 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100353 ("arm/musca_b1", "GCC_14_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800354 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100355 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100356 ("arm/musca_b1", "GCC_14_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800357 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Nicola Mazzucato8617ae92024-10-02 13:14:15 +0100358 # RSE_TC3_GCC_3_RegS_RegNS_Release_BL2_ATTESTATION_SCHEME_DPE
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100359 #("arm/rse/tc/tc3", "GCC_14_3", "3",
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000360 # "RegS, RegNS", "OFF", "Release", True, "", "ATTESTATION_SCHEME_DPE"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100361 # RSE_TC3_GCC_2_RegBL1_1_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100362 #("arm/rse/tc/tc3", "GCC_14_3", "2",
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000363 # "RegBL1_1", "OFF", "Debug", True, "", ""),
Nicola Mazzucatob4763262024-09-26 12:39:06 +0100364 # RSE_TC3_GCC_2_Release_BL2_ATTESTATION_SCHEME_CCA
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100365 #("arm/rse/tc/tc3", "GCC_14_3", "2",
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000366 # "OFF", "OFF", "Release", True, "", "ATTESTATION_SCHEME_CCA"),
Tamas Ban33b2e382025-03-17 12:23:08 +0100367 # RSE_TC4_GCC_3_RegS_RegNS_Release_BL2_ATTESTATION_SCHEME_DPE
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100368 ("arm/rse/tc/tc4", "GCC_14_3", "3",
Tamas Ban33b2e382025-03-17 12:23:08 +0100369 "RegS, RegNS", "OFF", "Release", True, "", "ATTESTATION_SCHEME_DPE"),
Jackson Cooper-Driver49350442025-05-29 14:13:45 +0100370 # RSE_TC4_GCC_3_RegS_RegNS_Release_BL2_RSE_PROVISIONING_SYMMETRIC
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100371 ("arm/rse/tc/tc4", "GCC_14_3", "3",
Jackson Cooper-Driver49350442025-05-29 14:13:45 +0100372 "RegS, RegNS", "OFF", "Release", True, "", "RSE_PROVISIONING_SYMMETRIC"),
Jackson Cooper-Driver0ac3fe02025-02-20 09:23:03 +0000373 # RSE_TC4_GCC_2_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100374 ("arm/rse/tc/tc4", "GCC_14_3", "2",
Tamas Ban33b2e382025-03-17 12:23:08 +0100375 "OFF", "OFF", "Debug", True, "", ""),
Jackson Cooper-Driver042d0fa2025-03-03 12:45:54 +0000376 # RSE_TC4_GCC_2_RegBL1_1_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100377 ("arm/rse/tc/tc4", "GCC_14_3", "2",
Tamas Ban33b2e382025-03-17 12:23:08 +0100378 "RegBL1_1", "OFF", "Debug", True, "", ""),
Jackson Cooper-Driver2fb4d5a2025-07-16 15:55:10 +0100379 # RSE_TC4_GCC_2_RegBL1_1_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100380 ("arm/rse/tc/tc4", "GCC_14_3", "2",
Jackson Cooper-Driver2fb4d5a2025-07-16 15:55:10 +0100381 "RegBL1_1", "OFF", "Debug", True, "", "RSE_RUN_BL1_1_TESTS_IN_PCI"),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000382 # RSE_TC4_GCC_2_Release_BL2_ATTESTATION_SCHEME_CCA
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100383 ("arm/rse/tc/tc4", "GCC_14_3", "2",
Tamas Ban33b2e382025-03-17 12:23:08 +0100384 "OFF", "OFF", "Release", True, "", "ATTESTATION_SCHEME_CCA"),
Jackson Cooper-Drivere6e1db02025-05-16 10:45:20 +0100385 # RSE_TC4_GCC_2_RegS_RegNS_MinSizeRel_BL2_RSE_COPY_USE_ROM_LIB_IN_SRAM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100386 # ("arm/rse/tc/tc4", "GCC_14_3", "2",
Jackson Cooper-Driver79d46f52025-08-19 11:35:01 +0100387 # "RegS, RegNS", "OFF", "MinSizeRel", True, "", "RSE_COPY_USE_ROM_LIB_IN_SRAM"),
Ishan Deshpande80d840e2025-01-09 18:46:56 +0530388 # RSE_RDV3_GCC_2_Release_BL2_NSOFF_CFG0
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100389 ("arm/rse/neoverse_rd/rdv3", "GCC_14_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100390 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Nicola Mazzucato75b76af2025-02-07 15:20:59 +0000391 # RSE_RDV3R1_GCC_2_Release_BL2_NSOFF_CFG0
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100392 ("arm/rse/neoverse_rd/rdv3r1", "GCC_14_3", "2",
Nicola Mazzucato75b76af2025-02-07 15:20:59 +0000393 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Ambroise Vincenteba3c5c2025-08-26 08:46:23 +0100394 # RSE_CSSAspen_GCC_2_Release_BL2_NSOFF
395 ("arm/rse/automotive_rd/css-aspen", "GCC_13_2", "2",
396 "OFF", "OFF", "Release", True, "", "NSOFF"),
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100397 # RSE_RD1AE_GCC_2_Release_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100398 ("arm/rse/automotive_rd/rd1ae", "GCC_14_3", "2",
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100399 "OFF", "OFF", "Release", True, "", "NSOFF"),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800400 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300401 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800402 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
403 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100404 ("stm/stm32l562e_dk", "GCC_14_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800405 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100406 # stm32l562e_dk_GCC_3_RegBL2_RegS_RegNS_Release_BL2_CRYPTO_OFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100407 ("stm/stm32l562e_dk", "GCC_14_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800408 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700409 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100410 ("stm/b_u585i_iot02a", "GCC_14_3", "1",
Arthur She4f08c152023-05-15 15:29:14 -0700411 "RegS, RegNS", "OFF", "Release", True, "", ""),
412 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300413 ("stm/b_u585i_iot02a", "ARMCLANG_6_21", "2",
Arthur She4f08c152023-05-15 15:29:14 -0700414 "RegS, RegNS", "OFF", "Release", True, "", ""),
Anton Komlev4164ab62024-02-23 10:59:56 +0100415 # stm32h573i_dk_GCC_1_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100416 ("stm/stm32h573i_dk", "GCC_14_3", "1",
Anton Komlev4164ab62024-02-23 10:59:56 +0100417 "RegS, RegNS", "OFF", "Release", True, "", ""),
418 # stm32h573i_dk_ARMCLANG_2_RegS_RegNS_Release_BL2
419 ("stm/stm32h573i_dk", "ARMCLANG_6_21", "2",
420 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800421 # psoc64_GCC_2_RegS_RegNS_Release
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100422 ("cypress/psoc64", "GCC_14_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800423 "RegS, RegNS", "OFF", "Release", False, "", ""),
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000424 # rp2350_GCC_2_RegBL2_RegS_RegNS_Release_BL2_MEDIUM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100425 ("rpi/rp2350", "GCC_14_3", "2",
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000426 "RegBL2, RegS, RegNS", "OFF", "Release", True, "profile_medium", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800427 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800428 "invalid": _common_tfm_invalid_configs + []
429 }
430
Umair Khan80332b62025-09-25 14:06:24 +0100431# Config group for FIH testing
432config_fih_test = {"seed_params": {
433 "tfm_platform": ["arm/mps2/an521"],
434 "compiler": ["GCC_13_2", "ARMCLANG_6_21"],
435 "isolation_level": ["1", "2", "3"],
436 "test_regression": ["RegFihLow", "RegFihMedium", "RegFihHigh"],
437 "test_psa_api": ["OFF"],
438 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
439 "with_bl2": [True],
440 "profile": [""],
441 "extra_params": [""]
442 },
443 "common_params": _common_tfm_builder_cfg,
444 "invalid": _common_tfm_invalid_configs + []
445 }
446
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800447# Config group for nightly job
448config_nightly_test = {"seed_params": {
449 "tfm_platform": ["arm/mps2/an519",
450 "arm/mps2/an521",
451 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200452 "arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100453 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800454 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800455 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800456 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800457 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800458 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800459 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800460 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100461 },
462 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800463 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100464 }
465
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000466config_all_plat = {
467 # corstone1000_GCC_2_RegS_Release_BL2_NSOFF_CS1K_TEST_FVP
468 "seed_params": {
469 "tfm_platform": ["arm/corstone1000"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100470 "compiler": ["GCC_14_3"],
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000471 "isolation_level": ["2"],
472 "test_regression": ["RegS"],
473 "test_psa_api": ["OFF"],
474 "cmake_build_type": ["Release"],
475 "with_bl2": [True],
476 "profile": [""],
477 "extra_params": ["NSOFF, CS1K_TEST, FVP"]
478 },
479 "common_params": _common_tfm_builder_cfg,
480 "valid": [
481 # AN521_GCC_3_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100482 ("arm/mps2/an521", "GCC_14_3", "3",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000483 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
484 # AN519_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100485 ("arm/mps2/an519", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000486 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
487 # AN524_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100488 ("arm/mps3/an524", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000489 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
490 # CS300_AN547_GCC_1_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100491 ("arm/mps3/corstone300/an547", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000492 "OFF", "OFF", "Debug", True, "", ""),
493 # CS300_AN552_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100494 ("arm/mps3/corstone300/an552", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000495 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
496 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100497 ("arm/mps3/corstone300/fvp", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000498 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
499 # corstone310_GCC_1_Debug_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100500 ("arm/mps3/corstone310/fvp", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000501 "OFF", "OFF", "Debug", True, "", "NSOFF"),
502 # corstone315_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100503 ("arm/mps4/corstone315", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000504 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
505 # corstone320_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100506 ("arm/mps4/corstone320", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000507 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
508 # MUSCA_B1_GCC_3_RegBL2_RegS_RegNS_Debug_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100509 ("arm/musca_b1", "GCC_14_3", "3",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000510 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000511 # RSE_TC3_GCC_3_RegS_RegNS_Debug_BL2_ATTESTATION_SCHEME_DPE
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100512 ("arm/rse/tc/tc3", "GCC_14_3", "3",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000513 "RegS, RegNS", "OFF", "Debug", True, "", "ATTESTATION_SCHEME_DPE"),
514 # psoc64_GCC_2_RegS_RegNS_Release
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100515 ("cypress/psoc64", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000516 "RegS, RegNS", "OFF", "Release", False, "", ""),
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000517 ## nrf5340dk_GCC_1_Debug_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100518 #("nordic_nrf/nrf5340dk_nrf5340_cpuapp", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000519 # "OFF", "OFF", "Release", True, "", "NSOFF"),
520 ## nrf9160dk_GCC_1_Debug_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100521 #("nordic_nrf/nrf9160dk_nrf9160", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000522 # "OFF", "OFF", "Release", True, "", "NSOFF"),
523 ## M2351_GCC_1_Release_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100524 #("nuvoton/m2351", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000525 # "OFF", "OFF", "Release", True, "", "NSOFF"),
Matthew Dalzell815fc832025-10-01 17:00:49 +0100526 # M2354_GCC_1_Debug_BL2_NSOFF
527 ("nuvoton/m2354", "GCC_14_3", "1",
528 "OFF", "OFF", "Debug", True, "", "NSOFF"),
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000529 # lpcxpresso55s69_GCC_2_RegS_RegNS_Relwithdebinfo_MEDIUM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100530 ("nxp/lpcxpresso55s69", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000531 "RegS, RegNS", "OFF", "Relwithdebinfo", False, "profile_medium", ""),
532 # rp2350_GCC_2_RegBL2_RegS_RegNS_RelWithDebInfo_BL2_MEDIUM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100533 ("rpi/rp2350", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000534 "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo", True, "profile_medium", ""),
535 # b_u585i_iot02a_GCC_2_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100536 ("stm/b_u585i_iot02a", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000537 "RegS, RegNS", "OFF", "Release", True, "", ""),
538 # nucleo_l552ze_q_GCC_1_Release_BL2_NSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100539 ("stm/nucleo_l552ze_q", "GCC_14_3", "1",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000540 "OFF", "OFF", "Release", True, "", "NSOFF"),
541 # stm32h573i_dk_GCC_2_RegS_RegNS_Release_BL2
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100542 ("stm/stm32h573i_dk", "GCC_14_3", "2",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000543 "RegS, RegNS", "OFF", "Release", True, "", ""),
544 # stm32l562e_dk_GCC_3_RegBL2_RegS_RegNS_Release_BL2_CRYPTO_OFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100545 ("stm/stm32l562e_dk", "GCC_14_3", "3",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000546 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
547 # stm32l562e_dk_GCC_3_Release_BL2_CRYPTO_ON
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100548 ("stm/stm32l562e_dk", "GCC_14_3", "3",
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000549 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
Matthew Dalzell8fbf3562025-05-13 14:46:50 +0100550 # stm32wba65i_dk_GCC_2_RegS_RegNS_Release_MEDIUM
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100551 ("stm/stm32wba65i_dk", "GCC_14_3", "2",
Matthew Dalzell8fbf3562025-05-13 14:46:50 +0100552 "RegS, RegNS", "OFF", "Release", False, "profile_medium", ""),
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000553 ],
554 "invalid": _common_tfm_invalid_configs + []
555 }
556
557
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800558# Config group for release job
559config_release_test = {"seed_params": {
560 "tfm_platform": ["arm/mps2/an519",
561 "arm/mps2/an521",
562 "arm/mps3/an524",
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100563 "arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100564 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800565 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800566 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800567 "test_psa_api": ["OFF"],
568 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800569 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800570 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100571 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800572 },
573 "common_params": _common_tfm_builder_cfg,
Matthew Dalzell767a95b2025-08-18 14:35:39 +0100574 "valid": [],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800575 "invalid": _common_tfm_invalid_configs + []
576 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800577
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800578# Config groups for TF-M features
579config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800580 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100581 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
David Huda27ae72022-03-28 15:32:19 +0800582 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800583 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800584 "test_psa_api": ["OFF"],
585 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800586 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800587 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800588 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800589 },
590 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800591 "invalid": _common_tfm_invalid_configs + [
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100592 ("arm/mps2/an519", "GCC_14_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800593 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800594 ]
595 }
596
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800597config_profile_m = {"seed_params": {
598 "tfm_platform": ["arm/mps2/an519",
599 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200600 "arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100601 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800602 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800603 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800604 "test_psa_api": ["OFF"],
605 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800606 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800607 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800608 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800609 },
610 "common_params": _common_tfm_builder_cfg,
Matthew Dalzell8ee3e5d2025-10-10 10:50:19 +0100611 "invalid": _common_tfm_invalid_configs + [
612 # MUSCA_B1_GCC_2_RegBL2_RegS_RegNS_Minsizerel_BL2_MEDIUM
613 ("arm/musca_b1", "GCC_14_3", "2",
614 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "profile_medium", ""),
615 ]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800616 }
617
David Hu3d333762022-10-27 18:12:33 +0800618config_profile_m_arotless = {"seed_params": {
619 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100620 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
David Hu3d333762022-10-27 18:12:33 +0800621 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800622 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800623 "test_psa_api": ["OFF"],
624 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
625 "with_bl2": [True],
626 "profile": ["profile_medium_arotless"],
627 "extra_params": ["", "PSOFF"]
628 },
629 "common_params": _common_tfm_builder_cfg,
630 "invalid": _common_tfm_invalid_configs + []
631 }
632
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800633config_profile_l = {"seed_params": {
634 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100635 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800636 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800637 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800638 "test_psa_api": ["OFF"],
639 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800640 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800641 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800642 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800643 },
644 "common_params": _common_tfm_builder_cfg,
645 "invalid": _common_tfm_invalid_configs + []
646 }
647
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800648config_ipc_backend = {"seed_params": {
649 "tfm_platform": ["arm/mps2/an519",
650 "arm/mps2/an521",
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800651 "arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100652 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800653 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800654 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800655 "test_psa_api": ["OFF"],
656 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
657 "with_bl2": [True],
658 "profile": [""],
659 "extra_params": ["IPC"]
660 },
661 "common_params": _common_tfm_builder_cfg,
662 "invalid": _common_tfm_invalid_configs + []
663 }
664
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800665config_cc_driver_psa = {"seed_params": {
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100666 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100667 "compiler": ["GCC_14_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800668 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800669 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800670 "test_psa_api": ["OFF"],
671 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800672 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800673 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800674 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800675 },
676 "common_params": _common_tfm_builder_cfg,
677 "invalid": _common_tfm_invalid_configs + []
678 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100679
Antonio de Angelis9d7f0842025-06-27 22:23:51 +0100680config_cc3xx_runtime_enabled = {"seed_params": {
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100681 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100682 "compiler": ["GCC_14_3"],
Antonio de Angelis9d7f0842025-06-27 22:23:51 +0100683 "isolation_level": ["1"],
684 "test_regression": ["RegBL2, RegS, RegNS"],
685 "test_psa_api": ["OFF"],
686 "cmake_build_type": ["Release"],
687 "with_bl2": [True],
688 "profile": [""],
689 "extra_params": ["CC3XX_RUNTIME_ENABLED"]
690 },
691 "common_params": _common_tfm_builder_cfg,
692 "invalid": _common_tfm_invalid_configs + []
693 }
694
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800695config_fp = {"seed_params": {
Xinyu Zhange91567c2023-09-13 14:10:11 +0800696 "tfm_platform": ["arm/mps2/an521",
697 "arm/mps3/corstone300/an552",
698 "arm/mps3/corstone300/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100699 "compiler": ["GCC_14_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800700 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800701 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800702 "test_psa_api": ["OFF"],
703 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800704 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800705 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200706 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800707 },
708 "common_params": _common_tfm_builder_cfg,
709 "invalid": _common_tfm_invalid_configs + []
710 }
Karl Zhangeffed972020-06-30 15:48:01 +0800711
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800712config_psa_api = {"seed_params": {
713 "tfm_platform": ["arm/mps2/an521",
Antonio de Angelis6ce8d722025-07-06 21:38:15 +0100714 "arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100715 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800716 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800717 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800718 "test_psa_api": ["IPC",
719 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800720 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800721 "STORAGE"],
Antonio de Angelis240495b2025-03-30 22:46:54 +0100722 "cmake_build_type": ["Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800723 "with_bl2": [True],
Antonio de Angelis240495b2025-03-30 22:46:54 +0100724 "profile": ["profile_large"],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800725 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800726 },
727 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300728 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800729 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800730
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800731config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800732 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100733 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800734 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800735 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800736 "test_psa_api": ["OFF"],
737 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800738 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800739 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800740 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800741 },
742 "common_params": _common_tfm_builder_cfg,
743 "invalid": _common_tfm_invalid_configs + []
744 }
745
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800746config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800747 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100748 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800749 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800750 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800751 "test_psa_api": ["OFF"],
752 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800753 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800754 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800755 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800756 },
757 "common_params": _common_tfm_builder_cfg,
758 "invalid": _common_tfm_invalid_configs + []
759 }
760
Bence Balogh79fda442022-10-14 18:01:37 +0200761# Config groups for TF-M examples
762config_example_vad = {"seed_params": {
Bence Balogh1aa8d582023-08-29 13:10:02 +0200763 "tfm_platform": ["arm/mps3/corstone300/an552"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100764 "compiler": ["GCC_14_3"],
Bence Balogh79fda442022-10-14 18:01:37 +0200765 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800766 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200767 "test_psa_api": ["OFF"],
768 "cmake_build_type": ["Release"],
769 "with_bl2": [True],
770 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200771 "extra_params": ["EXTRAS_EXAMPLE_VAD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200772 },
773 "common_params": _common_tfm_builder_cfg,
774 "invalid": _common_tfm_invalid_configs + []
775 }
776
Bence Balogh852f8bd2023-08-07 14:46:54 +0200777config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200778 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100779 "compiler": ["GCC_14_3"],
Bence Balogh79fda442022-10-14 18:01:37 +0200780 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800781 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200782 "test_psa_api": ["OFF"],
783 "cmake_build_type": ["Release"],
784 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200785 "profile": ["profile_medium"],
786 "extra_params": ["EXTRAS_EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200787 },
788 "common_params": _common_tfm_builder_cfg,
789 "invalid": _common_tfm_invalid_configs + []
790 }
791
792config_example_dma350_s = {"seed_params": {
793 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100794 "compiler": ["GCC_14_3"],
Bence Balogh79fda442022-10-14 18:01:37 +0200795 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200796 "test_regression": ["RegS"],
Bence Balogh79fda442022-10-14 18:01:37 +0200797 "test_psa_api": ["OFF"],
798 "cmake_build_type": ["Release"],
799 "with_bl2": [True],
800 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200801 "extra_params": ["EXTRAS_EXAMPLE_DMA350_S"]
Bence Balogh79fda442022-10-14 18:01:37 +0200802 },
803 "common_params": _common_tfm_builder_cfg,
804 "invalid": _common_tfm_invalid_configs + []
805 }
806
Bence Baloghd23cbda2023-08-07 15:30:58 +0200807config_example_dma350_ns = {"seed_params": {
808 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100809 "compiler": ["GCC_14_3"],
Bence Baloghd23cbda2023-08-07 15:30:58 +0200810 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200811 "test_regression": ["RegS, RegNS"],
Bence Baloghd23cbda2023-08-07 15:30:58 +0200812 "test_psa_api": ["OFF"],
813 "cmake_build_type": ["Release"],
814 "with_bl2": [True],
815 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200816 "extra_params": ["EXTRAS_EXAMPLE_DMA350_NS"]
Bence Baloghd23cbda2023-08-07 15:30:58 +0200817 },
818 "common_params": _common_tfm_builder_cfg,
819 "invalid": _common_tfm_invalid_configs + []
820 }
821
Bence Balogh79fda442022-10-14 18:01:37 +0200822config_example_dma350_trigger = {"seed_params": {
823 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100824 "compiler": ["GCC_14_3"],
Bence Balogh79fda442022-10-14 18:01:37 +0200825 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800826 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200827 "test_psa_api": ["OFF"],
828 "cmake_build_type": ["Release"],
829 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200830 "profile": ["profile_medium"],
831 "extra_params": ["EXTRAS_EXAMPLE_DMA350_TRIGGER"]
Bence Balogh79fda442022-10-14 18:01:37 +0200832 },
833 "common_params": _common_tfm_builder_cfg,
834 "invalid": _common_tfm_invalid_configs + []
835 }
836
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300837config_misra = {"seed_params": {
838 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100839 "compiler": ["GCC_14_3"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300840 "isolation_level": ["1"],
841 "test_regression": ["OFF"],
842 "test_psa_api": ["OFF"],
843 "cmake_build_type": ["Debug"],
844 "with_bl2": [True],
Matthew Dalzellb7895ae2025-04-10 12:30:01 +0100845 "profile": ["profile_small", "profile_medium_arotless"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300846 "extra_params": ["PSOFF"]
847 },
848 "common_params": _common_tfm_builder_cfg,
Xinyu Zhange17926f2023-08-14 11:00:43 +0800849 "valid": [
850 # MUSCA_B1_GCC_2_Debug_BL2_MEDIUM_PSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100851 ("arm/musca_b1", "GCC_14_3", "2", "OFF",
Xinyu Zhange17926f2023-08-14 11:00:43 +0800852 "OFF", "Debug", True, "profile_medium", "PSOFF"),
853 # MUSCA_B1_GCC_3_Debug_BL2_LARGE_PSOFF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100854 ("arm/musca_b1", "GCC_14_3", "3", "OFF",
Xinyu Zhange17926f2023-08-14 11:00:43 +0800855 "OFF", "Debug", True, "profile_large", "PSOFF"),
856 ],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300857 "invalid": _common_tfm_invalid_configs + []
858 }
859
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300860config_misra_debug = {"seed_params": {
861 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100862 "compiler": ["GCC_14_3"],
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300863 "isolation_level": ["1"],
864 "test_regression": ["OFF"],
865 "test_psa_api": ["OFF"],
866 "cmake_build_type": ["Debug"],
867 "with_bl2": [True],
868 "profile": ["profile_small"],
869 "extra_params": ["PSOFF"]
870 },
871 "common_params": _common_tfm_builder_cfg,
872 "invalid": _common_tfm_invalid_configs + []
873 }
874
Matthew Dalzell735fd502025-08-11 15:48:38 +0100875config_erpc_test = {"seed_params": {
876 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100877 "compiler": ["GCC_14_3"],
Matthew Dalzell735fd502025-08-11 15:48:38 +0100878 "isolation_level": ["1"],
879 "test_regression": ["RegNS"],
880 "test_psa_api": ["OFF"],
881 "cmake_build_type": ["Debug"],
882 "with_bl2": [True],
883 "profile": [""],
884 "extra_params": ["ERPC"]
885 },
886 "common_params": _common_tfm_builder_cfg,
887 "invalid": _common_tfm_invalid_configs + []
888 }
889
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800890# Config groups for code coverage
891config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800892config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100893config_cov_profile_s["seed_params"]["compiler"] = ["GCC_14_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800894
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800895config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800896config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100897config_cov_profile_m["seed_params"]["compiler"] = ["GCC_14_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800898
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800899config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800900config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100901config_cov_profile_l["seed_params"]["compiler"] = ["GCC_14_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800902
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800903config_cov_ipc_backend = deepcopy(config_ipc_backend)
904config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100905config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_14_3"]
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800906
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800907config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800908config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100909config_cov_nsce["seed_params"]["compiler"] = ["GCC_14_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800910
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800911config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800912config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100913config_cov_mmio["seed_params"]["compiler"] = ["GCC_14_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800914
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800915config_cov_fp = deepcopy(config_fp)
916config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100917config_cov_fp["seed_params"]["compiler"] = ["GCC_14_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800918
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800919# Config groups for platforms
920config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800921 "tfm_platform": ["arm/mps2/an519"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100922 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800923 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800924 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800925 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800926 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800927 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800928 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800929 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800930 },
931 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800932 "invalid": _common_tfm_invalid_configs + []
933 }
934
935config_an521 = {"seed_params": {
936 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100937 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800938 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800939 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800940 "test_psa_api": ["OFF"],
941 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800942 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800943 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800944 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800945 },
946 "common_params": _common_tfm_builder_cfg,
947 "invalid": _common_tfm_invalid_configs + []
948 }
949
950config_an524 = {"seed_params": {
951 "tfm_platform": ["arm/mps3/an524"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100952 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800953 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800954 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800955 "test_psa_api": ["OFF"],
956 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800957 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800958 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800959 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800960 },
961 "common_params": _common_tfm_builder_cfg,
962 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800963 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000964
Bence Balogh1aa8d582023-08-29 13:10:02 +0200965config_cs300_an547 = {"seed_params": {
966 "tfm_platform": ["arm/mps3/corstone300/an547"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100967 "compiler": ["GCC_14_3"],
Bence Balogh1aa8d582023-08-29 13:10:02 +0200968 "isolation_level": ["1"],
969 "test_regression": ["OFF"],
970 "test_psa_api": ["OFF"],
971 "cmake_build_type": ["Debug"],
972 "with_bl2": [True],
973 "profile": [""],
974 "extra_params": [""]
975 },
976 "common_params": _common_tfm_builder_cfg,
977 "invalid": _common_tfm_invalid_configs + []
978 }
Xinyu Zhang38b76742021-11-11 13:57:56 +0800979
Bence Balogh1aa8d582023-08-29 13:10:02 +0200980config_cs300_an552 = {"seed_params": {
981 "tfm_platform": ["arm/mps3/corstone300/an552"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100982 "compiler": ["GCC_14_3"],
Bence Balogh1aa8d582023-08-29 13:10:02 +0200983 "isolation_level": ["1", "2"],
984 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
985 "test_psa_api": ["OFF"],
986 "cmake_build_type": ["Debug", "Release"],
987 "with_bl2": [True],
988 "profile": [""],
989 "extra_params": [""]
990 },
991 "common_params": _common_tfm_builder_cfg,
992 "invalid": _common_tfm_invalid_configs + []
993 }
994
995config_cs300_fvp = {"seed_params": {
996 "tfm_platform": ["arm/mps3/corstone300/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +0100997 "compiler": ["GCC_14_3"],
Bence Balogh1aa8d582023-08-29 13:10:02 +0200998 "isolation_level": ["1", "2"],
999 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1000 "test_psa_api": ["OFF"],
1001 "cmake_build_type": ["Debug", "Release"],
1002 "with_bl2": [True],
1003 "profile": [""],
1004 "extra_params": [""]
1005 },
1006 "common_params": _common_tfm_builder_cfg,
1007 "invalid": _common_tfm_invalid_configs + []
1008 }
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001009
1010config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +02001011 "tfm_platform": ["arm/musca_b1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001012 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001013 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001014 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001015 "test_psa_api": ["OFF"],
1016 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001017 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001018 "profile": [""],
Antonio de Angelis9a3bd142025-06-27 21:37:31 +01001019 "extra_params": [""]
1020 },
1021 "common_params": _common_tfm_builder_cfg,
1022 "invalid": _common_tfm_invalid_configs + []
1023 }
1024
Bence Balogh8731a092022-05-24 17:24:54 +02001025config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +01001026 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001027 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001028 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001029 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001030 "test_psa_api": ["OFF"],
1031 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001032 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001033 "profile": [""],
Gergely Korcsák6abc66c2025-04-29 14:55:33 +02001034 "extra_params": ["NSOFF", "PROV_TFM_DUMMY", "PROV_MCUBOOT_GEN_KEYS"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001035 },
1036 "common_params": _common_tfm_builder_cfg,
1037 "invalid": _common_tfm_invalid_configs + []
1038 }
1039
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001040config_corstone310_pacbti = {"seed_params": {
1041 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Nicola Mazzucatob4e19572024-08-21 12:26:14 +01001042 "compiler": ["ARMCLANG_6_21"],
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001043 "isolation_level": ["1"],
1044 "test_regression": ["OFF"],
1045 "test_psa_api": ["OFF"],
1046 "cmake_build_type": ["Debug"],
1047 "with_bl2": [True],
1048 "profile": [""],
1049 "extra_params": ["PACBTI_STD"]
1050 },
1051 "common_params": _common_tfm_builder_cfg,
1052 "invalid": _common_tfm_invalid_configs + []
1053 }
1054
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001055config_corstone315 = {"seed_params": {
1056 "tfm_platform": ["arm/mps4/corstone315"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001057 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001058 "isolation_level": ["1"],
Gergely Korcsáka403e222024-04-09 10:51:00 +02001059 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001060 "test_psa_api": ["OFF"],
1061 "cmake_build_type": ["Debug", "Release"],
1062 "with_bl2": [True],
1063 "profile": [""],
1064 "extra_params": [""]
1065 },
1066 "common_params": _common_tfm_builder_cfg,
1067 "invalid": _common_tfm_invalid_configs + []
1068 }
1069
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001070config_corstone320 = {"seed_params": {
1071 "tfm_platform": ["arm/mps4/corstone320"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001072 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001073 "isolation_level": ["1"],
1074 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1075 "test_psa_api": ["OFF"],
1076 "cmake_build_type": ["Debug", "Release"],
1077 "with_bl2": [True],
1078 "profile": [""],
1079 "extra_params": [""]
1080 },
1081 "common_params": _common_tfm_builder_cfg,
1082 "invalid": _common_tfm_invalid_configs + []
1083 }
1084
Jamie Fox82a91d02024-09-27 14:54:14 +01001085config_rse_tc3 = {"seed_params": {
1086 "tfm_platform": ["arm/rse/tc/tc3"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001087 "compiler": ["GCC_14_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001088 "isolation_level": ["1", "2", "3"],
Jamie Fox9283cbc2024-04-22 13:40:01 +01001089 "test_regression": ["OFF", "RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001090 "test_psa_api": ["OFF"],
1091 "cmake_build_type": ["Debug", "Release"],
1092 "with_bl2": [True],
1093 "profile": [""],
Nicola Mazzucato551c5f32024-10-02 09:43:04 +01001094 "extra_params": ["ATTESTATION_SCHEME_DPE"]
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001095 },
1096 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +00001097 "invalid": _common_tfm_invalid_configs + [
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001098 # BL2 is too large for RSE in Debug builds with tests
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001099 ("arm/rse/tc/tc3", "GCC_14_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +00001100 "Debug", True, "*", "*"),
1101 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001102 }
1103
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001104config_rse_tc4 = {"seed_params": {
1105 "tfm_platform": ["arm/rse/tc/tc4"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001106 "compiler": ["GCC_14_3"],
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001107 "isolation_level": ["1", "2", "3"],
Jackson Cooper-Driver042d0fa2025-03-03 12:45:54 +00001108 "test_regression": ["OFF", "RegS, RegNS", "RegBL1_1"],
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001109 "test_psa_api": ["OFF"],
1110 "cmake_build_type": ["Debug", "Release"],
1111 "with_bl2": [True],
1112 "profile": [""],
Jackson Cooper-Driver49350442025-05-29 14:13:45 +01001113 "extra_params": ["ATTESTATION_SCHEME_DPE", "RSE_PROVISIONING_SYMMETRIC"]
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001114 },
1115 "common_params": _common_tfm_builder_cfg,
1116 "invalid": _common_tfm_invalid_configs + [
1117 # BL2 is too large for RSE in Debug builds with tests
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001118 ("arm/rse/tc/tc4", "GCC_14_3", "*", "RegBL2, RegS, RegNS", "*",
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001119 "Debug", True, "*", "*"),
Jackson Cooper-Drivere6e1db02025-05-16 10:45:20 +01001120 ],
1121 "valid": [
Jackson Cooper-Driver79d46f52025-08-19 11:35:01 +01001122 # BL1_1 code is too large to copy into VM1 without overwriting
1123 # persistent data
1124 # ("arm/rse/tc/tc4", "*", "*", "*", "*",
1125 # "MinSizeRel", True, "*", "RSE_COPY_USE_ROM_LIB_IN_SRAM"),
Jackson Cooper-Driver2fb4d5a2025-07-16 15:55:10 +01001126 # RSE_RUN_BL1_1_TESTS_IN_PCI only relevant when running BL1_1 tests
1127 ("arm/rse/tc/tc4", "*", "*", "RegBL1_1", "*",
1128 "*", True, "*", "RSE_RUN_BL1_1_TESTS_IN_PCI"),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001129 ]
1130 }
1131
Nicola Mazzucatoe932bd72025-04-14 17:11:10 +01001132# RSE-specific build-only cases.
1133# New cases should be better added in the valid section
1134# This group is only consumed in "tf-m-extra-build" CI job
1135config_rse_build_only = {"seed_params": {
1136 "tfm_platform": ["arm/rse/tc/tc4"],
1137 "compiler": ["ARMCLANG_6_21"],
1138 "isolation_level": ["2"],
1139 "test_regression": ["OFF"],
1140 "test_psa_api": ["OFF"],
1141 "cmake_build_type": ["Release"],
1142 "with_bl2": [True],
1143 "profile": [""],
1144 "extra_params": ["ATTESTATION_SCHEME_CCA, RSE_SUPPORT_ROM_LIB_RELOCATION_OFF"]
1145 },
1146 "common_params": _common_tfm_builder_cfg,
1147 "invalid": _common_tfm_invalid_configs + []
1148 }
1149
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301150config_rse_rdv3 = {"seed_params": {
Antonio de Angelis373187e2025-01-11 22:09:30 +00001151 "tfm_platform": ["arm/rse/neoverse_rd/rdv3"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001152 "compiler": ["GCC_14_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001153 "isolation_level": ["1", "2", "3"],
Joel Goddard2dd81a12024-01-23 15:10:08 +00001154 "test_regression": ["OFF"],
1155 "test_psa_api": ["OFF"],
1156 "cmake_build_type": ["Debug", "Release"],
1157 "with_bl2": [True],
1158 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +01001159 "extra_params": ["NSOFF, CFG0"]
Joel Goddard2dd81a12024-01-23 15:10:08 +00001160 },
1161 "common_params": _common_tfm_builder_cfg,
1162 "invalid": _common_tfm_invalid_configs + []
1163 }
1164
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001165config_rse_rdv3r1 = {"seed_params": {
1166 "tfm_platform": ["arm/rse/neoverse_rd/rdv3r1"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001167 "compiler": ["GCC_14_3"],
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001168 "isolation_level": ["1", "2"],
1169 "test_regression": ["OFF"],
1170 "test_psa_api": ["OFF"],
1171 "cmake_build_type": ["Debug", "Release"],
1172 "with_bl2": [True],
1173 "profile": [""],
1174 "extra_params": ["NSOFF, CFG0"]
1175 },
1176 "common_params": _common_tfm_builder_cfg,
1177 "invalid": _common_tfm_invalid_configs + []
1178 }
1179
Ambroise Vincenteba3c5c2025-08-26 08:46:23 +01001180config_rse_cssaspen = {"seed_params": {
1181 "tfm_platform": ["arm/rse/automotive_rd/css-aspen"],
1182 "compiler": ["GCC_13_2"],
1183 "isolation_level": ["1", "2", "3"],
1184 "test_regression": ["OFF"],
1185 "test_psa_api": ["OFF"],
1186 "cmake_build_type": ["Debug", "Release"],
1187 "with_bl2": [True],
1188 "profile": [""],
1189 "extra_params": ["NSOFF"]
1190 },
1191 "common_params": _common_tfm_builder_cfg,
1192 "invalid": _common_tfm_invalid_configs + []
1193 }
1194
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001195config_rse_rd1ae = {"seed_params": {
1196 "tfm_platform": ["arm/rse/automotive_rd/rd1ae"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001197 "compiler": ["GCC_14_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001198 "isolation_level": ["1", "2", "3"],
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001199 "test_regression": ["OFF"],
1200 "test_psa_api": ["OFF"],
1201 "cmake_build_type": ["Debug", "Release"],
1202 "with_bl2": [True],
1203 "profile": [""],
1204 "extra_params": ["NSOFF"]
1205 },
1206 "common_params": _common_tfm_builder_cfg,
1207 "invalid": _common_tfm_invalid_configs + []
1208 }
1209
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001210config_psoc64 = {"seed_params": {
1211 "tfm_platform": ["cypress/psoc64"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001212 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001213 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001214 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001215 "test_psa_api": ["OFF"],
1216 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001217 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001218 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001219 "extra_params": [""]
1220 },
1221 "common_params": _common_tfm_builder_cfg,
1222 "invalid": _common_tfm_invalid_configs + []
1223 }
1224
1225config_corstone1000 = {"seed_params": {
1226 "tfm_platform": ["arm/corstone1000"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001227 "compiler": ["GCC_14_3"],
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001228 "isolation_level": ["1", "2"],
Emekcan Arasf8b39802023-04-24 10:15:22 +01001229 "test_regression": ["RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001230 "test_psa_api": ["OFF"],
Matthew Dalzellfc808ea2025-04-16 18:42:16 +01001231 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001232 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001233 "profile": [""],
Xinyu Zhang09acfbf2023-10-30 18:30:48 +08001234 "extra_params": ["NSOFF, CS1K_TEST, FVP", "NSOFF, CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001235 },
1236 "common_params": _common_tfm_builder_cfg,
1237 "invalid": _common_tfm_invalid_configs + []
1238 }
1239
1240config_stm32l562e_dk = {"seed_params": {
1241 "tfm_platform": ["stm/stm32l562e_dk"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001242 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001243 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001244 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001245 "test_psa_api": ["OFF"],
1246 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001247 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001248 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001249 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
1250 },
1251 "common_params": _common_tfm_builder_cfg,
1252 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001253 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001254 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001255 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001256 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001257 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001258 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001259 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001260 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001261 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001262 ]
1263 }
1264
1265config_b_u585i_iot02a = {"seed_params": {
1266 "tfm_platform": ["stm/b_u585i_iot02a"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001267 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Arthur She026ebb62023-02-08 18:47:39 -08001268 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -07001269 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001270 "test_psa_api": ["OFF"],
1271 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001272 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001273 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -08001274 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001275 },
1276 "common_params": _common_tfm_builder_cfg,
1277 "invalid": _common_tfm_invalid_configs + []
1278 }
1279
Anton Komlev4164ab62024-02-23 10:59:56 +01001280config_stm32h573i_dk = {"seed_params": {
1281 "tfm_platform": ["stm/stm32h573i_dk"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001282 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Anton Komlev4164ab62024-02-23 10:59:56 +01001283 "isolation_level": ["1", "2"],
1284 "test_regression": ["OFF", "RegS, RegNS"],
1285 "test_psa_api": ["OFF"],
1286 "cmake_build_type": ["Release"],
1287 "with_bl2": [True],
1288 "profile": [""],
1289 "extra_params": [""]
1290 },
1291 "common_params": _common_tfm_builder_cfg,
1292 "invalid": _common_tfm_invalid_configs + []
1293 }
1294
Matthew Dalzelld5325dd2025-04-17 14:46:10 +01001295config_stm32wba65i_dk = {"seed_params": {
1296 "tfm_platform": ["stm/stm32wba65i_dk"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001297 "compiler": ["GCC_14_3", "ARMCLANG_6_21"],
Matthew Dalzelld5325dd2025-04-17 14:46:10 +01001298 "isolation_level": ["1", "2"],
1299 "test_regression": ["OFF", "RegS, RegNS"],
1300 "test_psa_api": ["OFF"],
1301 "cmake_build_type": ["Release"],
1302 "with_bl2": [False],
1303 "profile": ["profile_small","profile_medium"],
1304 "extra_params": [""]
1305 },
1306 "common_params": _common_tfm_builder_cfg,
1307 "invalid": _common_tfm_invalid_configs + [
1308 ("stm/stm32wba65i_dk", "*", "2", "*",
1309 "*", "*", "*", "profile_small", "*"),
1310 ]
1311 }
1312
1313
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001314config_nucleo_l552ze_q = {"seed_params": {
1315 "tfm_platform": ["stm/nucleo_l552ze_q"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001316 "compiler": ["GCC_14_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001317 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001318 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001319 "test_psa_api": ["OFF"],
1320 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001321 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001322 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001323 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001324 },
1325 "common_params": _common_tfm_builder_cfg,
1326 "invalid": _common_tfm_invalid_configs + []
1327 }
1328
1329config_lpcxpresso55s69 = {"seed_params": {
1330 "tfm_platform": ["nxp/lpcxpresso55s69"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001331 "compiler": ["GCC_14_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001332 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001333 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001334 "test_psa_api": ["OFF"],
1335 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001336 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001337 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001338 "extra_params": [""]
1339 },
1340 "common_params": _common_tfm_builder_cfg,
1341 "invalid": _common_tfm_invalid_configs + []
1342 }
1343
Xinyu Zhang38b76742021-11-11 13:57:56 +08001344config_nrf5340dk = {"seed_params": {
1345 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001346 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001347 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001348 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001349 "test_psa_api": ["OFF"],
1350 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001351 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001352 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001353 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001354 },
1355 "common_params": _common_tfm_builder_cfg,
1356 "invalid": _common_tfm_invalid_configs + []
1357 }
1358
1359config_nrf9160dk = {"seed_params": {
1360 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001361 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001362 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001363 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001364 "test_psa_api": ["OFF"],
1365 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001366 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001367 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001368 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001369 },
1370 "common_params": _common_tfm_builder_cfg,
1371 "invalid": _common_tfm_invalid_configs + []
1372 }
1373
1374config_m2351 = {"seed_params": {
1375 "tfm_platform": ["nuvoton/m2351"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001376 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001377 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001378 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001379 "test_psa_api": ["OFF"],
1380 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001381 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001382 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001383 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001384 },
1385 "common_params": _common_tfm_builder_cfg,
1386 "invalid": _common_tfm_invalid_configs + []
1387 }
1388
1389config_m2354 = {"seed_params": {
1390 "tfm_platform": ["nuvoton/m2354"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001391 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001392 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001393 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001394 "test_psa_api": ["OFF"],
1395 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001396 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001397 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001398 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001399 },
1400 "common_params": _common_tfm_builder_cfg,
1401 "invalid": _common_tfm_invalid_configs + []
1402 }
1403
Dávid Házi0bd447f2024-10-24 19:44:31 +00001404config_rp2350 = {"seed_params": {
1405 "tfm_platform": ["rpi/rp2350"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001406 "compiler": ["GCC_14_3"],
Dávid Házi0bd447f2024-10-24 19:44:31 +00001407 "isolation_level": ["2"],
1408 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1409 "test_psa_api": ["OFF"],
1410 "cmake_build_type": ["RelWithDebInfo", "Release"],
1411 "with_bl2": [True],
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +00001412 "profile": ["profile_medium"],
Dávid Házi0bd447f2024-10-24 19:44:31 +00001413 "extra_params": [""]
1414 },
1415 "common_params": _common_tfm_builder_cfg,
1416 "invalid": _common_tfm_invalid_configs + []
1417 }
1418
Jianliang Shen48704152023-10-17 17:06:00 +08001419config_mem_footprint = {"seed_params": {
1420 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001421 "compiler": ["ARMCLANG_6_21"],
Jianliang Shen48704152023-10-17 17:06:00 +08001422 "isolation_level": ["1"],
1423 "test_regression": ["OFF"],
1424 "test_psa_api": ["OFF"],
1425 "cmake_build_type": ["Minsizerel"],
1426 "with_bl2": [True],
1427 "profile": [""],
1428 "extra_params": [""]
1429 },
1430 "common_params": _common_tfm_builder_cfg,
1431 "valid": [
1432 # AN521_ARMCLANG_1_Minsizerel_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001433 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen48704152023-10-17 17:06:00 +08001434 "OFF", "OFF", "Minsizerel", True, "profile_small", "PSOFF"),
1435 # AN521_ARMCLANG_2_Minsizerel_BL2_MEDIUM_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001436 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Jianliang Shen48704152023-10-17 17:06:00 +08001437 "OFF", "OFF", "Minsizerel", True, "profile_medium", "PSOFF"),
1438 # AN521_ARMCLANG_3_Minsizerel_BL2_LARGE_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001439 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Jianliang Shen48704152023-10-17 17:06:00 +08001440 "OFF", "OFF", "Minsizerel", True, "profile_large", "PSOFF"),
1441 ],
1442 "invalid": _common_tfm_invalid_configs + []
1443 }
1444
Jianliang Shen5492f752023-07-27 15:59:01 +08001445config_prof = {"seed_params": {
1446 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001447 "compiler": ["GCC_14_3"],
Jianliang Shen5492f752023-07-27 15:59:01 +08001448 "isolation_level": ["1"],
1449 "test_regression": ["OFF"],
1450 "test_psa_api": ["OFF"],
1451 "cmake_build_type": ["Release"],
1452 "with_bl2": [True],
1453 "profile": [""],
1454 "extra_params": ["PROF"]
1455 },
1456 "common_params": _common_tfm_builder_cfg,
1457 "valid": [
1458 # AN521_GNUARM_1_Release_BL2_IPC_PROF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001459 ("arm/mps2/an521", "GCC_14_3", "1",
Jianliang Shen5492f752023-07-27 15:59:01 +08001460 "OFF", "OFF", "Release", True, "", "IPC, PROF"),
1461 # AN521_GNUARM_2_Release_BL2_PROF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001462 ("arm/mps2/an521", "GCC_14_3", "2",
Jianliang Shen5492f752023-07-27 15:59:01 +08001463 "OFF", "OFF", "Release", True, "", "PROF"),
1464 # AN521_GNUARM_3_Release_BL2_PROF
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001465 ("arm/mps2/an521", "GCC_14_3", "3",
Jianliang Shen5492f752023-07-27 15:59:01 +08001466 "OFF", "OFF", "Release", True, "", "PROF"),
1467 ],
1468 "invalid": _common_tfm_invalid_configs + []
1469 }
1470
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001471# Config groups for debug
1472config_debug = {"seed_params": {
1473 "tfm_platform": ["arm/mps2/an521"],
Matthew Dalzella8e4cf42025-09-23 11:04:49 +01001474 "compiler": ["GCC_14_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001475 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001476 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001477 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001478 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001479 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001480 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001481 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001482 },
1483 "common_params": _common_tfm_builder_cfg,
1484 "invalid": _common_tfm_invalid_configs + []
1485 }
1486
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001487config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001488config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001489
1490config_debug_PSA_API = {"seed_params": {
1491 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001492 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001493 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001494 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001495 "test_psa_api": ["CRYPTO",
1496 "INITIAL_ATTESTATION",
1497 "STORAGE",
1498 "IPC"],
1499 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001500 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001501 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001502 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001503 },
1504 "common_params": _common_tfm_builder_cfg,
1505 "invalid": _common_tfm_invalid_configs + []
1506 }
1507
Matthew Dalzell06e8f692024-11-09 00:55:06 +00001508
1509
Karl Zhangaff558a2020-05-15 14:28:23 +01001510_builtin_configs = {
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001511 # per-patch test group
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001512 "pp_test": config_pp_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001513
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001514 # nightly test groups
1515 "nightly_test": config_nightly_test,
Umair Khan80332b62025-09-25 14:06:24 +01001516 "nightly_fih_test": config_fih_test,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001517 "nightly_profile_s": config_profile_s,
1518 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001519 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001520 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001521 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001522 "nightly_cc_driver_psa": config_cc_driver_psa,
Antonio de Angelis9d7f0842025-06-27 22:23:51 +01001523 "nightly_cc3xx_runtime_enabled": config_cc3xx_runtime_enabled,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001524 "nightly_fp":config_fp,
1525 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +08001526 "nightly_nsce": config_nsce,
1527 "nightly_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001528 "nightly_cs300_an547": config_cs300_an547,
1529 "nightly_cs300_an552": config_cs300_an552,
1530 "nightly_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001531 "nightly_corstone310": config_corstone310,
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001532 "nightly_corstone310_pacbti" : config_corstone310_pacbti,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001533 "nightly_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001534 "nightly_corstone320": config_corstone320,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001535 "nightly_corstone1000": config_corstone1000,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001536 #"nightly_rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001537 "nightly_rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301538 "nightly_rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001539 "nightly_rse_rdv3r1": config_rse_rdv3r1,
Ambroise Vincenteba3c5c2025-08-26 08:46:23 +01001540 "nightly_rse_cssaspen": config_rse_cssaspen,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001541 "nightly_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001542 "nightly_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001543 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001544 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001545 "nightly_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001546 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001547 "nightly_rp2350": config_rp2350,
Matthew Dalzell06e8f692024-11-09 00:55:06 +00001548 "nightly_all_plat": config_all_plat,
Matthew Dalzella4a5dc72025-09-10 16:25:34 +01001549 "nightly_erpc" : config_erpc_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001550
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001551 # release test groups
1552 "release_test": config_release_test,
1553 "release_profile_s": config_profile_s,
1554 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001555 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001556 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001557 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001558 "release_cc_driver_psa": config_cc_driver_psa,
1559 "release_fp": config_fp,
1560 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001561 "release_nsce": config_nsce,
1562 "release_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001563 "release_cs300_an547": config_cs300_an547,
1564 "release_cs300_an552": config_cs300_an552,
1565 "release_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001566 "release_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001567 "release_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001568 "release_corstone320": config_corstone320,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001569 #"release_rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001570 "release_rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301571 "release_rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001572 "release_rse_rdv3r1": config_rse_rdv3r1,
Ambroise Vincenteba3c5c2025-08-26 08:46:23 +01001573 "release_rse_cssaspen": config_rse_cssaspen,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001574 "release_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001575 "release_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001576 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001577 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001578 "release_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001579 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001580 "release_rp2350": config_rp2350,
Matthew Dalzella4a5dc72025-09-10 16:25:34 +01001581 "release_erpc" : config_erpc_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001582
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001583 # code coverage test groups
1584 "coverage_profile_s": config_cov_profile_s,
1585 "coverage_profile_m": config_cov_profile_m,
1586 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001587 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001588 "coverage_nsce": config_cov_nsce,
1589 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001590 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001591
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001592 # MISRA analysis
1593 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001594 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001595
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001596 # platform groups
1597 "an521": config_an521,
1598 "an519": config_an519,
1599 "an524": config_an524,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001600 "cs300_an547": config_cs300_an547,
1601 "cs300_an552": config_cs300_an552,
1602 "cs300_fvp": config_cs300_fvp,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001603 "musca_b1": config_musca_b1,
Bence Balogh8731a092022-05-24 17:24:54 +02001604 "corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001605 "corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001606 "corstone320": config_corstone320,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001607 #"rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001608 "rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301609 "rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001610 "rse_rdv3r1": config_rse_rdv3r1,
Ambroise Vincenteba3c5c2025-08-26 08:46:23 +01001611 "rse_cssaspen": config_rse_cssaspen,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001612 "rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001613 "cypress_psoc64": config_psoc64,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001614 "corstone1000": config_corstone1000,
Anton Komlev55c3c022024-03-05 16:24:17 +01001615 "stm_stm32l562e_dk": config_stm32l562e_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001616 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001617 "stm_stm32h573i_dk": config_stm32h573i_dk,
Matthew Dalzelld5325dd2025-04-17 14:46:10 +01001618 "stm_stm32wba65i_dk" : config_stm32wba65i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001619 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1620 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001621 "nordic_nrf5340dk": config_nrf5340dk,
1622 "nordic_nrf9160dk": config_nrf9160dk,
1623 "nuvoton_m2351": config_m2351,
1624 "nuvoton_m2354": config_m2354,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001625 "rp2350": config_rp2350,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001626
Bence Balogh79fda442022-10-14 18:01:37 +02001627 # config groups for tf-m-extras examples
1628 "example_vad": config_example_vad,
1629 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001630 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001631 "example_dma350_s": config_example_dma350_s,
Bence Baloghd23cbda2023-08-07 15:30:58 +02001632 "example_dma350_ns": config_example_dma350_ns,
Bence Balogh79fda442022-10-14 18:01:37 +02001633
Jianliang Shen48704152023-10-17 17:06:00 +08001634 # config groups for tf-m performance monitor
1635 "mem_footprint": config_mem_footprint,
Jianliang Shen5492f752023-07-27 15:59:01 +08001636 "profiling": config_prof,
1637
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001638 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001639 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001640 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001641 "debug_PSA_API": config_debug_PSA_API,
Nicola Mazzucatoe932bd72025-04-14 17:11:10 +01001642
Matthew Dalzella4a5dc72025-09-10 16:25:34 +01001643 # config groups for eRPC
1644 "erpc_test" : config_erpc_test,
1645
Nicola Mazzucatoe932bd72025-04-14 17:11:10 +01001646 # groups for build-only
1647 "rse_build_only": config_rse_build_only,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001648 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001649
1650if __name__ == '__main__':
1651 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001652
Nicola Mazzucato935f9cb2025-05-16 17:21:07 +01001653 # Default behavior is to export reference config when called
Minos Galanakisea421232019-06-20 17:11:28 +01001654 _dir = os.getcwd()
1655 from utils import save_json
1656 for _cname, _cfg in _builtin_configs.items():
1657 _fname = os.path.join(_dir, _cname + ".json")
1658 print("Exporting config %s" % _fname)
1659 save_json(_fname, _cfg)