blob: 0312ab25114d43268b7de452e26c3cebe75ca74d [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;"
Bence Baloghb0580a62025-03-10 15:15:42 +010092 "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=51200;"
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;"),
Matthew Dalzell59ea18e2024-06-06 17:00:52 +0100107 "arm/musca_s1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100108 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800109 "%(ci_build_root_dir)s/spe/bin/"
110 "bl2.bin "
111 "-Binary -offset 0xA000000 "
112 "-fill 0xFF 0xA000000 0xA020000 "
113 "%(ci_build_root_dir)s/nspe/"
114 "tfm_s_ns_signed.bin "
115 "-Binary -offset 0xA020000 "
116 "-fill 0xFF 0xA020000 0xA200000 "
117 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100118 "spe/bin/tfm.hex -Intel; "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100119 "fi;"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100120 "arm/rse/tc/tc3": ("if [ -f \"%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin\" ]; then "
Raef Colesf9a20742024-06-06 10:47:49 +0100121 "srec_cat "
122 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
123 "%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin -Binary -offset 0x10000 "
124 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
125 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
126 "else "
127 "srec_cat "
Jamie Fox9283cbc2024-04-22 13:40:01 +0100128 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
129 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
130 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
Raef Colesf9a20742024-06-06 10:47:49 +0100131 "fi;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100132 "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 +0100133 "chmod 755 fiptool;"
Jamie Fox82a91d02024-09-27 14:54:14 +0100134 "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 +0100135 "./fiptool update "
Jamie Fox82a91d02024-09-27 14:54:14 +0100136 "--align 8192 --rse-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
137 "--align 8192 --rse-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
138 "--align 8192 --rse-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
139 "--align 8192 --rse-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
140 "--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 +0100141 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
142 "fip.bin"),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000143 "arm/rse/tc/tc4": ("if [ -f \"%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin\" ]; then "
144 "srec_cat "
145 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
Jackson Cooper-Driver042d0fa2025-03-03 12:45:54 +0000146 "%(ci_build_root_dir)s/spe/bin/rse_bl1_tests.bin -Binary -offset 0x17000 "
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000147 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
148 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
149 "else "
150 "srec_cat "
151 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
152 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
153 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
154 "fi;"
155 # fiptool in tc3 directory also compatible with tc4 fip.bin
156 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fiptool https://downloads.trustedfirmware.org/tf-m/rse/tc/tc3/fiptool;"
157 "chmod 755 fiptool;"
158 "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;"
159 "./fiptool update "
160 "--align 8192 --rse-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
161 "--align 8192 --rse-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
162 "--align 8192 --rse-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
163 "--align 8192 --rse-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
164 "--align 8192 --rse-sic-tables-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_sic_tables_signed.bin "
165 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
166 "fip.bin"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800167 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800168 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
169 "pushd %(ci_build_root_dir)s/spe/api_ns;"
170 "mkdir -p image_signing/scripts ;"
171 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
172 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
173 "bin/bl2.bin "
174 "bin/tfm_s_signed.bin "
175 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800176 "popd"),
177 "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800178 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
179 "pushd %(ci_build_root_dir)s/spe/api_ns;"
180 "mkdir -p image_signing/scripts ;"
181 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
182 "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
183 "bin/bl2.bin "
184 "bin/tfm_s_signed.bin "
185 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800186 "popd"),
Anton Komlev4164ab62024-02-23 10:59:56 +0100187 "stm/stm32h573i_dk": ("echo 'STM32H573I-DK board post process';"
188 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
189 "pushd %(ci_build_root_dir)s/spe/api_ns;"
190 "mkdir -p image_signing/scripts ;"
191 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
192 "tar jcf ./bin/stm32h573i_dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
193 "bin/bl2.bin "
194 "bin/tfm_s_signed.bin "
195 "image_signing/scripts/tfm_ns_signed.bin ;"
196 "popd"),
Matthew Dalzell0bdc0b22024-04-17 18:13:31 +0100197 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 bo.ard post process\n';"
198 "mkdir -p %(codebase_root_dir)s/build/bin ;"
199 # Workaround for flash_JLink.py
200 "cp %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(codebase_root_dir)s/build/bin ;"
201 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(codebase_root_dir)s/build/bin ;"
202 "cd %(codebase_root_dir)s/build/bin; "
203 "rm -f flash.jlink; "
204 "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then "
205 "echo r >> flash.jlink; "
206 "echo erase >> flash.jlink; "
207 "echo loadfile bl2.hex >> flash.jlink; "
208 "echo loadfile tfm_s_ns_signed.bin -0x8000 >> flash.jlink; "
209 "echo r >> flash.jlink; "
210 "echo go >> flash.jlink; "
211 "echo exit >> flash.jlink; "
212 "else "
213 "echo r >> flash.jlink; "
214 "echo erase >> flash.jlink; "
215 "echo loadfile tfm_s.hex >> flash.jlink; "
216 "echo loadfile tfm_ns.hex >> flash.jlink; "
217 "echo r >> flash.jlink; "
218 "echo go >> flash.jlink; "
219 "echo exit >> flash.jlink; "
220 "fi;"
221 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
222 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
223 "mv lpcxpresso55s69-tfm.tar.bz2 %(ci_build_root_dir)s/nspe/bin ;"
224 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800225 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800226 "pushd %(codebase_root_dir)s/;"
Arthur She87602dc2022-02-06 14:42:18 -0800227 "sudo /usr/local/bin/cysecuretools "
228 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
229 "--target cy8ckit-064s0s2-4343w "
230 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800231 "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800232 "--image-type BOOT --image-id 1;"
233 "sudo /usr/local/bin/cysecuretools "
234 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
235 "--target cy8ckit-064s0s2-4343w "
236 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800237 "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800238 "--image-type BOOT --image-id 16;"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800239 "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
240 "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 +0800241 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100242 },
243
244 # (Optional) If set will fail if those artefacts are missing post build
245 "required_artefacts": {"all": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800246 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800247 "tfm_s.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800248 "%(ci_build_root_dir)s/nspe/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800249 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200250 "arm/musca_b1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800251 "%(ci_build_root_dir)s/tfm.hex",
252 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800253 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800254 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800255 "tfm_sign.bin"],
Summer Qin3c2b5722021-05-26 10:43:45 +0800256 "arm/musca_s1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800257 "%(ci_build_root_dir)s/tfm.hex",
258 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800259 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800260 "%(ci_build_root_dir)s/spe/bin/"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100261 "tfm_sign.bin"],
Jamie Fox82a91d02024-09-27 14:54:14 +0100262 "arm/rse/tc/tc3": [
Jamie Fox9283cbc2024-04-22 13:40:01 +0100263 "%(ci_build_root_dir)s/spe/bin/rom.bin",
Raef Colesaac84bc2025-01-09 14:20:12 +0000264 "%(ci_build_root_dir)s/spe/bin/provisioning/combined_provisioning_message.bin",
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000265 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"],
266 "arm/rse/tc/tc4": [
267 "%(ci_build_root_dir)s/spe/bin/rom.bin",
Raef Colesaac84bc2025-01-09 14:20:12 +0000268 "%(ci_build_root_dir)s/spe/bin/provisioning/combined_provisioning_message.bin",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100269 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100270 }
271}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100272
Xinyu Zhangb708f572020-09-15 11:43:46 +0800273# List of all build configs that are impossible under all circumstances
274_common_tfm_invalid_configs = [
Xinyu Zhang459a1982021-07-21 22:34:49 +0800275 # LR_CODE size exceeds limit on MUSCA_B1 & MUSCA_S1 with regression tests in Debug mode built with ARMCLANG
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300276 ("arm/musca_b1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
277 ("arm/musca_s1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800278 # Load range overlap on Musca for IPC Debug type: T895
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300279 ("arm/musca_b1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
280 ("arm/musca_s1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300281 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800282 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800283 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800284 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
285 ("arm/musca_s1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800286 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800287 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
288 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
289 ("arm/musca_s1", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800290 ]
291
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100292# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800293# Config group for per-patch job
294config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800295 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800296 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300297 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800298 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800299 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800300 "test_psa_api": ["OFF"],
301 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800302 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800303 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800304 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800305 },
306 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800307 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800308 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300309 ("arm/mps2/an519", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800310 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800311 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800312 ("arm/mps2/an519", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800313 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
314 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800315 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800316 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
317 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300318 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800319 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
320 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300321 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800322 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Chris Branddc827302024-10-11 15:20:17 -0700323 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSCLEAR
324 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
325 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSCLEAR"),
326 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_PSLIMIT
327 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
328 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "PSLIMIT"),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800329 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300330 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen6984bef2023-07-25 10:36:56 +0800331 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800332 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300333 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800334 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
335 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300336 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800337 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800338 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800339 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800340 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100341 # AN521_GCC_2_RegBL2_RegS_RegNS_Debug_BL2_MEDIUM
Summer Qin379abb62022-10-08 16:41:54 +0800342 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800343 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
344 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800345 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800346 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
347 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800348 ("arm/mps2/an521", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800349 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800350 # AN521_GCC_1_FF_Release_BL2
351 ("arm/mps2/an521", "GCC_10_3", "1",
352 "OFF", "IPC", "Release", True, "", ""),
353 # AN521_ARMCLANG_2_STORAGE_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300354 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800355 "OFF", "STORAGE", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100356 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
Bence Balogh1aa8d582023-08-29 13:10:02 +0200357 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800358 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100359 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Bence Balogh1aa8d582023-08-29 13:10:02 +0200360 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800361 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100362 # corstone310_ARMCLANG_1_Debug_BL2_PACBTI_STD
Nicola Mazzucatob4e19572024-08-21 12:26:14 +0100363 ("arm/mps3/corstone310/fvp", "ARMCLANG_6_21", "1",
Nicola Mazzucatob542f2b2024-05-23 10:13:43 +0100364 "OFF", "OFF", "Debug", True, "", "PACBTI_STD"),
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800365 # corstone1000_GCC_2_RegS_Debug_BL2_NSOFF_CS1K_TEST_FVP
366 ("arm/corstone1000", "GCC_10_3", "2",
367 "RegS", "OFF", "Debug", True, "", "NSOFF, CS1K_TEST, FVP"),
Matthew Dalzell397fb3c2024-06-21 11:03:38 +0100368 # corstone315_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
369 ("arm/mps4/corstone315", "ARMCLANG_6_21", "1",
370 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Gergely Korcsák78a4d142024-08-05 07:41:36 +0200371 # corstone320_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
372 ("arm/mps4/corstone320", "ARMCLANG_6_21", "1",
373 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800374 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800375 ("arm/musca_b1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800376 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
377 # MUSCA_S1_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300378 ("arm/musca_s1", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800379 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
380 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800381 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800382 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
383 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800384 ("arm/musca_s1", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800385 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800386 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Summer Qin379abb62022-10-08 16:41:54 +0800387 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800388 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Nicola Mazzucato8617ae92024-10-02 13:14:15 +0100389 # RSE_TC3_GCC_3_RegS_RegNS_Release_BL2_ATTESTATION_SCHEME_DPE
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000390 #("arm/rse/tc/tc3", "GCC_10_3", "3",
391 # "RegS, RegNS", "OFF", "Release", True, "", "ATTESTATION_SCHEME_DPE"),
Jamie Fox82a91d02024-09-27 14:54:14 +0100392 # RSE_TC3_GCC_2_RegBL1_1_Debug_BL2
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000393 #("arm/rse/tc/tc3", "GCC_10_3", "2",
394 # "RegBL1_1", "OFF", "Debug", True, "", ""),
Nicola Mazzucatob4763262024-09-26 12:39:06 +0100395 # RSE_TC3_GCC_2_Release_BL2_ATTESTATION_SCHEME_CCA
Antonio de Angelis78a01fc2025-02-06 11:11:25 +0000396 #("arm/rse/tc/tc3", "GCC_10_3", "2",
397 # "OFF", "OFF", "Release", True, "", "ATTESTATION_SCHEME_CCA"),
Tamas Ban33b2e382025-03-17 12:23:08 +0100398 # RSE_TC4_GCC_3_RegS_RegNS_Release_BL2_ATTESTATION_SCHEME_DPE
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000399 ("arm/rse/tc/tc4", "GCC_10_3", "3",
Tamas Ban33b2e382025-03-17 12:23:08 +0100400 "RegS, RegNS", "OFF", "Release", True, "", "ATTESTATION_SCHEME_DPE"),
Jackson Cooper-Driverc5541ca2025-02-13 13:42:35 +0000401 # RSE_TC4_GCC_3_RegS_RegNS_Release_BL2_RSE_PROVISIONING_ASYMMETRIC
402 ("arm/rse/tc/tc4", "GCC_10_3", "3",
403 "RegS, RegNS", "OFF", "Release", True, "", "RSE_PROVISIONING_ASYMMETRIC"),
Jackson Cooper-Driver0ac3fe02025-02-20 09:23:03 +0000404 # RSE_TC4_GCC_2_Debug_BL2
405 ("arm/rse/tc/tc4", "GCC_10_3", "2",
Tamas Ban33b2e382025-03-17 12:23:08 +0100406 "OFF", "OFF", "Debug", True, "", ""),
Jackson Cooper-Driver042d0fa2025-03-03 12:45:54 +0000407 # RSE_TC4_GCC_2_RegBL1_1_Debug_BL2
408 ("arm/rse/tc/tc4", "GCC_10_3", "2",
Tamas Ban33b2e382025-03-17 12:23:08 +0100409 "RegBL1_1", "OFF", "Debug", True, "", ""),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +0000410 # RSE_TC4_GCC_2_Release_BL2_ATTESTATION_SCHEME_CCA
Tamas Ban33b2e382025-03-17 12:23:08 +0100411 ("arm/rse/tc/tc4", "GCC_10_3", "2",
412 "OFF", "OFF", "Release", True, "", "ATTESTATION_SCHEME_CCA"),
Ishan Deshpande80d840e2025-01-09 18:46:56 +0530413 # RSE_RDV3_GCC_2_Release_BL2_NSOFF_CFG0
Antonio de Angelis373187e2025-01-11 22:09:30 +0000414 ("arm/rse/neoverse_rd/rdv3", "GCC_10_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100415 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Nicola Mazzucato75b76af2025-02-07 15:20:59 +0000416 # RSE_RDV3R1_GCC_2_Release_BL2_NSOFF_CFG0
417 ("arm/rse/neoverse_rd/rdv3r1", "GCC_10_3", "2",
418 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Ziad Elhanafy937333f2024-05-22 14:17:40 +0100419 # RSE_RD1AE_GCC_2_Release_BL2_NSOFF
420 ("arm/rse/automotive_rd/rd1ae", "GCC_10_3", "2",
421 "OFF", "OFF", "Release", True, "", "NSOFF"),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800422 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300423 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800424 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
425 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Summer Qin379abb62022-10-08 16:41:54 +0800426 ("stm/stm32l562e_dk", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800427 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
Matthew Dalzell276318d2024-09-12 15:59:31 +0100428 # stm32l562e_dk_GCC_3_RegBL2_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800429 ("stm/stm32l562e_dk", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800430 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700431 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
432 ("stm/b_u585i_iot02a", "GCC_10_3", "1",
433 "RegS, RegNS", "OFF", "Release", True, "", ""),
434 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300435 ("stm/b_u585i_iot02a", "ARMCLANG_6_21", "2",
Arthur She4f08c152023-05-15 15:29:14 -0700436 "RegS, RegNS", "OFF", "Release", True, "", ""),
Anton Komlev4164ab62024-02-23 10:59:56 +0100437 # stm32h573i_dk_GCC_1_RegS_RegNS_Release_BL2
438 ("stm/stm32h573i_dk", "GCC_10_3", "1",
439 "RegS, RegNS", "OFF", "Release", True, "", ""),
440 # stm32h573i_dk_ARMCLANG_2_RegS_RegNS_Release_BL2
441 ("stm/stm32h573i_dk", "ARMCLANG_6_21", "2",
442 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800443 # psoc64_GCC_2_RegS_RegNS_Release
Summer Qin379abb62022-10-08 16:41:54 +0800444 ("cypress/psoc64", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800445 "RegS, RegNS", "OFF", "Release", False, "", ""),
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000446 # rp2350_GCC_2_RegBL2_RegS_RegNS_Release_BL2_MEDIUM
Dávid Házi0bd447f2024-10-24 19:44:31 +0000447 ("rpi/rp2350", "GCC_10_3", "2",
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +0000448 "RegBL2, RegS, RegNS", "OFF", "Release", True, "profile_medium", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800449 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800450 "invalid": _common_tfm_invalid_configs + []
451 }
452
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800453# Config group for nightly job
454config_nightly_test = {"seed_params": {
455 "tfm_platform": ["arm/mps2/an519",
456 "arm/mps2/an521",
457 "arm/mps3/an524",
458 "arm/musca_s1",
Mark Horvathef57baa2022-09-12 13:36:36 +0200459 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300460 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800461 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800462 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800463 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800464 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800465 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800466 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800467 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100468 },
469 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800470 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100471 }
472
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000473config_all_plat = {
474 # corstone1000_GCC_2_RegS_Release_BL2_NSOFF_CS1K_TEST_FVP
475 "seed_params": {
476 "tfm_platform": ["arm/corstone1000"],
477 "compiler": ["GCC_10_3"],
478 "isolation_level": ["2"],
479 "test_regression": ["RegS"],
480 "test_psa_api": ["OFF"],
481 "cmake_build_type": ["Release"],
482 "with_bl2": [True],
483 "profile": [""],
484 "extra_params": ["NSOFF, CS1K_TEST, FVP"]
485 },
486 "common_params": _common_tfm_builder_cfg,
487 "valid": [
488 # AN521_GCC_3_RegBL2_RegS_RegNS_Debug_BL2
489 ("arm/mps2/an521", "GCC_10_3", "3",
490 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
491 # AN519_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
492 ("arm/mps2/an519", "GCC_10_3", "2",
493 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
494 # AN524_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
495 ("arm/mps3/an524", "GCC_10_3", "2",
496 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
497 # CS300_AN547_GCC_1_Debug_BL2
498 ("arm/mps3/corstone300/an547", "GCC_10_3", "1",
499 "OFF", "OFF", "Debug", True, "", ""),
500 # CS300_AN552_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
501 ("arm/mps3/corstone300/an552", "GCC_10_3", "2",
502 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
503 # CS300_FVP_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
504 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
505 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
506 # corstone310_GCC_1_Debug_BL2_NSOFF
507 ("arm/mps3/corstone310/fvp", "GCC_10_3", "1",
508 "OFF", "OFF", "Debug", True, "", "NSOFF"),
509 # corstone315_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
510 ("arm/mps4/corstone315", "GCC_10_3", "1",
511 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
512 # corstone320_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
513 ("arm/mps4/corstone320", "GCC_10_3", "1",
514 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
515 # MUSCA_B1_GCC_3_RegBL2_RegS_RegNS_Debug_BL2
516 ("arm/musca_b1", "GCC_10_3", "3",
517 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
518 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Debug_BL2
519 ("arm/musca_s1", "GCC_10_3", "2",
520 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
521 # RSE_TC3_GCC_3_RegS_RegNS_Debug_BL2_ATTESTATION_SCHEME_DPE
522 ("arm/rse/tc/tc3", "GCC_10_3", "3",
523 "RegS, RegNS", "OFF", "Debug", True, "", "ATTESTATION_SCHEME_DPE"),
524 # psoc64_GCC_2_RegS_RegNS_Release
525 ("cypress/psoc64", "GCC_10_3", "2",
526 "RegS, RegNS", "OFF", "Release", False, "", ""),
527 ## BL5340_GCC_1_Debug_BL2_NSOFF
528 #("lairdconnectivity/bl5340_dvk_cpuapp", "GCC_10_3", "1",
529 # "OFF", "OFF", "Debug", True, "", "NSOFF"),
530 ## nrf5340dk_GCC_1_Debug_BL2_NSOFF
531 #("nordic_nrf/nrf5340dk_nrf5340_cpuapp", "GCC_10_3", "1",
532 # "OFF", "OFF", "Release", True, "", "NSOFF"),
533 ## nrf9160dk_GCC_1_Debug_BL2_NSOFF
534 #("nordic_nrf/nrf9160dk_nrf9160", "GCC_10_3", "1",
535 # "OFF", "OFF", "Release", True, "", "NSOFF"),
536 ## M2351_GCC_1_Release_BL2_NSOFF
537 #("nuvoton/m2351", "GCC_10_3", "1",
538 # "OFF", "OFF", "Release", True, "", "NSOFF"),
539 # M2354_GCC_1_Debug_BL2_NSOFF
540 ("nuvoton/m2354", "GCC_10_3", "1",
541 "OFF", "OFF", "Debug", True, "", "NSOFF"),
542 # lpcxpresso55s69_GCC_2_RegS_RegNS_Relwithdebinfo_MEDIUM
543 ("nxp/lpcxpresso55s69", "GCC_10_3", "2",
544 "RegS, RegNS", "OFF", "Relwithdebinfo", False, "profile_medium", ""),
545 # rp2350_GCC_2_RegBL2_RegS_RegNS_RelWithDebInfo_BL2_MEDIUM
546 ("rpi/rp2350", "GCC_10_3", "2",
547 "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo", True, "profile_medium", ""),
548 # b_u585i_iot02a_GCC_2_RegS_RegNS_Release_BL2
549 ("stm/b_u585i_iot02a", "GCC_10_3", "2",
550 "RegS, RegNS", "OFF", "Release", True, "", ""),
551 # nucleo_l552ze_q_GCC_1_Release_BL2_NSOFF
552 ("stm/nucleo_l552ze_q", "GCC_10_3", "1",
553 "OFF", "OFF", "Release", True, "", "NSOFF"),
554 # stm32h573i_dk_GCC_2_RegS_RegNS_Release_BL2
555 ("stm/stm32h573i_dk", "GCC_10_3", "2",
556 "RegS, RegNS", "OFF", "Release", True, "", ""),
557 # stm32l562e_dk_GCC_3_RegBL2_RegS_RegNS_Release_BL2_CRYPTO_OFF
558 ("stm/stm32l562e_dk", "GCC_10_3", "3",
559 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
560 # stm32l562e_dk_GCC_3_Release_BL2_CRYPTO_ON
561 ("stm/stm32l562e_dk", "GCC_10_3", "3",
562 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
Matthew Dalzell8fbf3562025-05-13 14:46:50 +0100563 # stm32wba65i_dk_GCC_2_RegS_RegNS_Release_MEDIUM
564 ("stm/stm32wba65i_dk", "GCC_10_3", "2",
565 "RegS, RegNS", "OFF", "Release", False, "profile_medium", ""),
Matthew Dalzell06e8f692024-11-09 00:55:06 +0000566 ],
567 "invalid": _common_tfm_invalid_configs + []
568 }
569
570
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800571# Config group for release job
572config_release_test = {"seed_params": {
573 "tfm_platform": ["arm/mps2/an519",
574 "arm/mps2/an521",
575 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200576 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800577 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300578 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800579 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800580 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800581 "test_psa_api": ["OFF"],
582 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800583 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800584 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100585 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800586 },
587 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800588 "valid": [
589 # sanity test for GCC v11.2
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800590 # AN521_GCC_3_RegBL2_RegS_RegNS_Relwithdebinfo_BL2
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800591 ("arm/mps2/an521", "GCC_11_2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800592 "3", "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800593 True, "", ""),
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800594 ],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800595 "invalid": _common_tfm_invalid_configs + []
596 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800597
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800598# Config groups for TF-M features
599config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800600 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300601 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Huda27ae72022-03-28 15:32:19 +0800602 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800603 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800604 "test_psa_api": ["OFF"],
605 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800606 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800607 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800608 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800609 },
610 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800611 "invalid": _common_tfm_invalid_configs + [
Summer Qin379abb62022-10-08 16:41:54 +0800612 ("arm/mps2/an519", "GCC_10_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800613 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800614 ]
615 }
616
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800617config_profile_m = {"seed_params": {
618 "tfm_platform": ["arm/mps2/an519",
619 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200620 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300621 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800622 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800623 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800624 "test_psa_api": ["OFF"],
625 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800626 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800627 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800628 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800629 },
630 "common_params": _common_tfm_builder_cfg,
631 "invalid": _common_tfm_invalid_configs + []
632 }
633
David Hu3d333762022-10-27 18:12:33 +0800634config_profile_m_arotless = {"seed_params": {
635 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300636 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Hu3d333762022-10-27 18:12:33 +0800637 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800638 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800639 "test_psa_api": ["OFF"],
640 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
641 "with_bl2": [True],
642 "profile": ["profile_medium_arotless"],
643 "extra_params": ["", "PSOFF"]
644 },
645 "common_params": _common_tfm_builder_cfg,
646 "invalid": _common_tfm_invalid_configs + []
647 }
648
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800649config_profile_l = {"seed_params": {
650 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300651 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800652 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800653 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800654 "test_psa_api": ["OFF"],
655 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800656 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800657 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800658 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800659 },
660 "common_params": _common_tfm_builder_cfg,
661 "invalid": _common_tfm_invalid_configs + []
662 }
663
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800664config_ipc_backend = {"seed_params": {
665 "tfm_platform": ["arm/mps2/an519",
666 "arm/mps2/an521",
667 "arm/musca_s1",
668 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300669 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800670 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800671 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800672 "test_psa_api": ["OFF"],
673 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
674 "with_bl2": [True],
675 "profile": [""],
676 "extra_params": ["IPC"]
677 },
678 "common_params": _common_tfm_builder_cfg,
679 "invalid": _common_tfm_invalid_configs + []
680 }
681
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800682config_cc_driver_psa = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200683 "tfm_platform": ["arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800684 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800685 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800686 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800687 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800688 "test_psa_api": ["OFF"],
689 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800690 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800691 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800692 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800693 },
694 "common_params": _common_tfm_builder_cfg,
695 "invalid": _common_tfm_invalid_configs + []
696 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100697
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800698config_fp = {"seed_params": {
Xinyu Zhange91567c2023-09-13 14:10:11 +0800699 "tfm_platform": ["arm/mps2/an521",
700 "arm/mps3/corstone300/an552",
701 "arm/mps3/corstone300/fvp"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800702 "compiler": ["GCC_10_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800703 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800704 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800705 "test_psa_api": ["OFF"],
706 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800707 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800708 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200709 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800710 },
711 "common_params": _common_tfm_builder_cfg,
712 "invalid": _common_tfm_invalid_configs + []
713 }
Karl Zhangeffed972020-06-30 15:48:01 +0800714
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800715config_psa_api = {"seed_params": {
716 "tfm_platform": ["arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200717 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800718 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300719 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800720 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800721 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800722 "test_psa_api": ["IPC",
723 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800724 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800725 "STORAGE"],
Antonio de Angelis240495b2025-03-30 22:46:54 +0100726 "cmake_build_type": ["Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800727 "with_bl2": [True],
Antonio de Angelis240495b2025-03-30 22:46:54 +0100728 "profile": ["profile_large"],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800729 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800730 },
731 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300732 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800733 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800734
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800735config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800736 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300737 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800738 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800739 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800740 "test_psa_api": ["OFF"],
741 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800742 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800743 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800744 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800745 },
746 "common_params": _common_tfm_builder_cfg,
747 "invalid": _common_tfm_invalid_configs + []
748 }
749
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800750config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800751 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300752 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800753 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800754 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800755 "test_psa_api": ["OFF"],
756 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800757 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800758 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800759 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800760 },
761 "common_params": _common_tfm_builder_cfg,
762 "invalid": _common_tfm_invalid_configs + []
763 }
764
Bence Balogh79fda442022-10-14 18:01:37 +0200765# Config groups for TF-M examples
766config_example_vad = {"seed_params": {
Bence Balogh1aa8d582023-08-29 13:10:02 +0200767 "tfm_platform": ["arm/mps3/corstone300/an552"],
Bence Balogh79fda442022-10-14 18:01:37 +0200768 "compiler": ["GCC_10_3"],
769 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800770 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200771 "test_psa_api": ["OFF"],
772 "cmake_build_type": ["Release"],
773 "with_bl2": [True],
774 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200775 "extra_params": ["EXTRAS_EXAMPLE_VAD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200776 },
777 "common_params": _common_tfm_builder_cfg,
778 "invalid": _common_tfm_invalid_configs + []
779 }
780
Bence Balogh852f8bd2023-08-07 14:46:54 +0200781config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200782 "tfm_platform": ["arm/mps3/corstone310/fvp"],
783 "compiler": ["GCC_10_3"],
784 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800785 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200786 "test_psa_api": ["OFF"],
787 "cmake_build_type": ["Release"],
788 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200789 "profile": ["profile_medium"],
790 "extra_params": ["EXTRAS_EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200791 },
792 "common_params": _common_tfm_builder_cfg,
793 "invalid": _common_tfm_invalid_configs + []
794 }
795
796config_example_dma350_s = {"seed_params": {
797 "tfm_platform": ["arm/mps3/corstone310/fvp"],
798 "compiler": ["GCC_10_3"],
799 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200800 "test_regression": ["RegS"],
Bence Balogh79fda442022-10-14 18:01:37 +0200801 "test_psa_api": ["OFF"],
802 "cmake_build_type": ["Release"],
803 "with_bl2": [True],
804 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200805 "extra_params": ["EXTRAS_EXAMPLE_DMA350_S"]
Bence Balogh79fda442022-10-14 18:01:37 +0200806 },
807 "common_params": _common_tfm_builder_cfg,
808 "invalid": _common_tfm_invalid_configs + []
809 }
810
Bence Baloghd23cbda2023-08-07 15:30:58 +0200811config_example_dma350_ns = {"seed_params": {
812 "tfm_platform": ["arm/mps3/corstone310/fvp"],
813 "compiler": ["GCC_10_3"],
814 "isolation_level": ["1"],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200815 "test_regression": ["RegS, RegNS"],
Bence Baloghd23cbda2023-08-07 15:30:58 +0200816 "test_psa_api": ["OFF"],
817 "cmake_build_type": ["Release"],
818 "with_bl2": [True],
819 "profile": [""],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200820 "extra_params": ["EXTRAS_EXAMPLE_DMA350_NS"]
Bence Baloghd23cbda2023-08-07 15:30:58 +0200821 },
822 "common_params": _common_tfm_builder_cfg,
823 "invalid": _common_tfm_invalid_configs + []
824 }
825
Bence Balogh79fda442022-10-14 18:01:37 +0200826config_example_dma350_trigger = {"seed_params": {
827 "tfm_platform": ["arm/mps3/corstone310/fvp"],
828 "compiler": ["GCC_10_3"],
829 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800830 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200831 "test_psa_api": ["OFF"],
832 "cmake_build_type": ["Release"],
833 "with_bl2": [True],
Gergely Korcsáked6e2532024-06-03 13:17:12 +0200834 "profile": ["profile_medium"],
835 "extra_params": ["EXTRAS_EXAMPLE_DMA350_TRIGGER"]
Bence Balogh79fda442022-10-14 18:01:37 +0200836 },
837 "common_params": _common_tfm_builder_cfg,
838 "invalid": _common_tfm_invalid_configs + []
839 }
840
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300841config_misra = {"seed_params": {
842 "tfm_platform": ["arm/musca_b1"],
843 "compiler": ["GCC_10_3"],
844 "isolation_level": ["1"],
845 "test_regression": ["OFF"],
846 "test_psa_api": ["OFF"],
847 "cmake_build_type": ["Debug"],
848 "with_bl2": [True],
Matthew Dalzellb7895ae2025-04-10 12:30:01 +0100849 "profile": ["profile_small", "profile_medium_arotless"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300850 "extra_params": ["PSOFF"]
851 },
852 "common_params": _common_tfm_builder_cfg,
Xinyu Zhange17926f2023-08-14 11:00:43 +0800853 "valid": [
854 # MUSCA_B1_GCC_2_Debug_BL2_MEDIUM_PSOFF
855 ("arm/musca_b1", "GCC_10_3", "2", "OFF",
856 "OFF", "Debug", True, "profile_medium", "PSOFF"),
857 # MUSCA_B1_GCC_3_Debug_BL2_LARGE_PSOFF
858 ("arm/musca_b1", "GCC_10_3", "3", "OFF",
859 "OFF", "Debug", True, "profile_large", "PSOFF"),
860 ],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300861 "invalid": _common_tfm_invalid_configs + []
862 }
863
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300864config_misra_debug = {"seed_params": {
865 "tfm_platform": ["arm/musca_b1"],
866 "compiler": ["GCC_10_3"],
867 "isolation_level": ["1"],
868 "test_regression": ["OFF"],
869 "test_psa_api": ["OFF"],
870 "cmake_build_type": ["Debug"],
871 "with_bl2": [True],
872 "profile": ["profile_small"],
873 "extra_params": ["PSOFF"]
874 },
875 "common_params": _common_tfm_builder_cfg,
876 "invalid": _common_tfm_invalid_configs + []
877 }
878
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800879# Config groups for code coverage
880config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800881config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800882config_cov_profile_s["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800883
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800884config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800885config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800886config_cov_profile_m["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800887
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800888config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800889config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800890config_cov_profile_l["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800891
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800892config_cov_ipc_backend = deepcopy(config_ipc_backend)
893config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
894config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_10_3"]
895
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800896config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800897config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800898config_cov_nsce["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800899
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800900config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800901config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800902config_cov_mmio["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800903
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800904config_cov_fp = deepcopy(config_fp)
905config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang778424e2023-02-27 11:39:57 +0800906config_cov_fp["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800907
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800908# Config groups for platforms
909config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800910 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300911 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800912 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800913 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800914 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800915 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800916 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800917 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800918 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800919 },
920 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800921 "invalid": _common_tfm_invalid_configs + []
922 }
923
924config_an521 = {"seed_params": {
925 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300926 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800927 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800928 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800929 "test_psa_api": ["OFF"],
930 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800931 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800932 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800933 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800934 },
935 "common_params": _common_tfm_builder_cfg,
936 "invalid": _common_tfm_invalid_configs + []
937 }
938
939config_an524 = {"seed_params": {
940 "tfm_platform": ["arm/mps3/an524"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300941 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800942 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800943 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800944 "test_psa_api": ["OFF"],
945 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800946 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800947 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800948 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800949 },
950 "common_params": _common_tfm_builder_cfg,
951 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800952 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000953
Bence Balogh1aa8d582023-08-29 13:10:02 +0200954config_cs300_an547 = {"seed_params": {
955 "tfm_platform": ["arm/mps3/corstone300/an547"],
956 "compiler": ["GCC_10_3"],
957 "isolation_level": ["1"],
958 "test_regression": ["OFF"],
959 "test_psa_api": ["OFF"],
960 "cmake_build_type": ["Debug"],
961 "with_bl2": [True],
962 "profile": [""],
963 "extra_params": [""]
964 },
965 "common_params": _common_tfm_builder_cfg,
966 "invalid": _common_tfm_invalid_configs + []
967 }
Xinyu Zhang38b76742021-11-11 13:57:56 +0800968
Bence Balogh1aa8d582023-08-29 13:10:02 +0200969config_cs300_an552 = {"seed_params": {
970 "tfm_platform": ["arm/mps3/corstone300/an552"],
971 "compiler": ["GCC_10_3"],
972 "isolation_level": ["1", "2"],
973 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
974 "test_psa_api": ["OFF"],
975 "cmake_build_type": ["Debug", "Release"],
976 "with_bl2": [True],
977 "profile": [""],
978 "extra_params": [""]
979 },
980 "common_params": _common_tfm_builder_cfg,
981 "invalid": _common_tfm_invalid_configs + []
982 }
983
984config_cs300_fvp = {"seed_params": {
985 "tfm_platform": ["arm/mps3/corstone300/fvp"],
986 "compiler": ["GCC_10_3"],
987 "isolation_level": ["1", "2"],
988 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
989 "test_psa_api": ["OFF"],
990 "cmake_build_type": ["Debug", "Release"],
991 "with_bl2": [True],
992 "profile": [""],
993 "extra_params": [""]
994 },
995 "common_params": _common_tfm_builder_cfg,
996 "invalid": _common_tfm_invalid_configs + []
997 }
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800998
999config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +02001000 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001001 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001002 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001003 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001004 "test_psa_api": ["OFF"],
1005 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001006 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001007 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001008 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001009 },
1010 "common_params": _common_tfm_builder_cfg,
1011 "invalid": _common_tfm_invalid_configs + []
1012 }
1013
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001014config_musca_s1 = {"seed_params": {
1015 "tfm_platform": ["arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001016 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001017 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001018 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001019 "test_psa_api": ["OFF"],
1020 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001021 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001022 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001023 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001024 },
1025 "common_params": _common_tfm_builder_cfg,
1026 "invalid": _common_tfm_invalid_configs + []
1027 }
1028
Bence Balogh8731a092022-05-24 17:24:54 +02001029config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +01001030 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Bence Balogh176b78f2022-02-22 13:49:34 +01001031 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001032 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001033 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001034 "test_psa_api": ["OFF"],
1035 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001036 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001037 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001038 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001039 },
1040 "common_params": _common_tfm_builder_cfg,
1041 "invalid": _common_tfm_invalid_configs + []
1042 }
1043
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001044config_corstone310_pacbti = {"seed_params": {
1045 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Nicola Mazzucatob4e19572024-08-21 12:26:14 +01001046 "compiler": ["ARMCLANG_6_21"],
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001047 "isolation_level": ["1"],
1048 "test_regression": ["OFF"],
1049 "test_psa_api": ["OFF"],
1050 "cmake_build_type": ["Debug"],
1051 "with_bl2": [True],
1052 "profile": [""],
1053 "extra_params": ["PACBTI_STD"]
1054 },
1055 "common_params": _common_tfm_builder_cfg,
1056 "invalid": _common_tfm_invalid_configs + []
1057 }
1058
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001059config_corstone315 = {"seed_params": {
1060 "tfm_platform": ["arm/mps4/corstone315"],
1061 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1062 "isolation_level": ["1"],
Gergely Korcsáka403e222024-04-09 10:51:00 +02001063 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001064 "test_psa_api": ["OFF"],
1065 "cmake_build_type": ["Debug", "Release"],
1066 "with_bl2": [True],
1067 "profile": [""],
1068 "extra_params": [""]
1069 },
1070 "common_params": _common_tfm_builder_cfg,
1071 "invalid": _common_tfm_invalid_configs + []
1072 }
1073
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001074config_corstone320 = {"seed_params": {
1075 "tfm_platform": ["arm/mps4/corstone320"],
1076 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1077 "isolation_level": ["1"],
1078 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1079 "test_psa_api": ["OFF"],
1080 "cmake_build_type": ["Debug", "Release"],
1081 "with_bl2": [True],
1082 "profile": [""],
1083 "extra_params": [""]
1084 },
1085 "common_params": _common_tfm_builder_cfg,
1086 "invalid": _common_tfm_invalid_configs + []
1087 }
1088
Jamie Fox82a91d02024-09-27 14:54:14 +01001089config_rse_tc3 = {"seed_params": {
1090 "tfm_platform": ["arm/rse/tc/tc3"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001091 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001092 "isolation_level": ["1", "2", "3"],
Jamie Fox9283cbc2024-04-22 13:40:01 +01001093 "test_regression": ["OFF", "RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001094 "test_psa_api": ["OFF"],
1095 "cmake_build_type": ["Debug", "Release"],
1096 "with_bl2": [True],
1097 "profile": [""],
Nicola Mazzucato551c5f32024-10-02 09:43:04 +01001098 "extra_params": ["ATTESTATION_SCHEME_DPE"]
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001099 },
1100 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +00001101 "invalid": _common_tfm_invalid_configs + [
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001102 # BL2 is too large for RSE in Debug builds with tests
Jamie Fox82a91d02024-09-27 14:54:14 +01001103 ("arm/rse/tc/tc3", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +00001104 "Debug", True, "*", "*"),
1105 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001106 }
1107
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001108config_rse_tc4 = {"seed_params": {
1109 "tfm_platform": ["arm/rse/tc/tc4"],
1110 "compiler": ["GCC_10_3"],
1111 "isolation_level": ["1", "2", "3"],
Jackson Cooper-Driver042d0fa2025-03-03 12:45:54 +00001112 "test_regression": ["OFF", "RegS, RegNS", "RegBL1_1"],
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001113 "test_psa_api": ["OFF"],
1114 "cmake_build_type": ["Debug", "Release"],
1115 "with_bl2": [True],
1116 "profile": [""],
Jackson Cooper-Driverc5541ca2025-02-13 13:42:35 +00001117 "extra_params": ["ATTESTATION_SCHEME_DPE", "RSE_PROVISIONING_ASYMMETRIC"]
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001118 },
1119 "common_params": _common_tfm_builder_cfg,
1120 "invalid": _common_tfm_invalid_configs + [
1121 # BL2 is too large for RSE in Debug builds with tests
1122 ("arm/rse/tc/tc4", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
1123 "Debug", True, "*", "*"),
Jackson Cooper-Driverb10a9d22025-03-06 13:50:22 +00001124 # BL1_1 tests only support symmetric provisioning config
1125 ("arm/rse/tc/tc4", "*", "*", "RegBL1_1", "*",
1126 "*", True, "*", "RSE_PROVISIONING_ASYMMETRIC"),
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001127 ]
1128 }
1129
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301130config_rse_rdv3 = {"seed_params": {
Antonio de Angelis373187e2025-01-11 22:09:30 +00001131 "tfm_platform": ["arm/rse/neoverse_rd/rdv3"],
Joel Goddard2dd81a12024-01-23 15:10:08 +00001132 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001133 "isolation_level": ["1", "2", "3"],
Joel Goddard2dd81a12024-01-23 15:10:08 +00001134 "test_regression": ["OFF"],
1135 "test_psa_api": ["OFF"],
1136 "cmake_build_type": ["Debug", "Release"],
1137 "with_bl2": [True],
1138 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +01001139 "extra_params": ["NSOFF, CFG0"]
Joel Goddard2dd81a12024-01-23 15:10:08 +00001140 },
1141 "common_params": _common_tfm_builder_cfg,
1142 "invalid": _common_tfm_invalid_configs + []
1143 }
1144
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001145config_rse_rdv3r1 = {"seed_params": {
1146 "tfm_platform": ["arm/rse/neoverse_rd/rdv3r1"],
1147 "compiler": ["GCC_10_3"],
1148 "isolation_level": ["1", "2"],
1149 "test_regression": ["OFF"],
1150 "test_psa_api": ["OFF"],
1151 "cmake_build_type": ["Debug", "Release"],
1152 "with_bl2": [True],
1153 "profile": [""],
1154 "extra_params": ["NSOFF, CFG0"]
1155 },
1156 "common_params": _common_tfm_builder_cfg,
1157 "invalid": _common_tfm_invalid_configs + []
1158 }
1159
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001160config_rse_rd1ae = {"seed_params": {
1161 "tfm_platform": ["arm/rse/automotive_rd/rd1ae"],
1162 "compiler": ["GCC_10_3"],
Jamie Foxc5b9e6a2024-10-10 17:07:57 +01001163 "isolation_level": ["1", "2", "3"],
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001164 "test_regression": ["OFF"],
1165 "test_psa_api": ["OFF"],
1166 "cmake_build_type": ["Debug", "Release"],
1167 "with_bl2": [True],
1168 "profile": [""],
1169 "extra_params": ["NSOFF"]
1170 },
1171 "common_params": _common_tfm_builder_cfg,
1172 "invalid": _common_tfm_invalid_configs + []
1173 }
1174
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001175config_psoc64 = {"seed_params": {
1176 "tfm_platform": ["cypress/psoc64"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001177 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001178 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001179 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001180 "test_psa_api": ["OFF"],
1181 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001182 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001183 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001184 "extra_params": [""]
1185 },
1186 "common_params": _common_tfm_builder_cfg,
1187 "invalid": _common_tfm_invalid_configs + []
1188 }
1189
1190config_corstone1000 = {"seed_params": {
1191 "tfm_platform": ["arm/corstone1000"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001192 "compiler": ["GCC_10_3"],
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001193 "isolation_level": ["1", "2"],
Emekcan Arasf8b39802023-04-24 10:15:22 +01001194 "test_regression": ["RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001195 "test_psa_api": ["OFF"],
Matthew Dalzellfc808ea2025-04-16 18:42:16 +01001196 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001197 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001198 "profile": [""],
Xinyu Zhang09acfbf2023-10-30 18:30:48 +08001199 "extra_params": ["NSOFF, CS1K_TEST, FVP", "NSOFF, CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001200 },
1201 "common_params": _common_tfm_builder_cfg,
1202 "invalid": _common_tfm_invalid_configs + []
1203 }
1204
1205config_stm32l562e_dk = {"seed_params": {
1206 "tfm_platform": ["stm/stm32l562e_dk"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001207 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001208 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001209 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001210 "test_psa_api": ["OFF"],
1211 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001212 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001213 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001214 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
1215 },
1216 "common_params": _common_tfm_builder_cfg,
1217 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001218 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001219 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001220 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001221 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001222 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001223 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001224 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001225 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001226 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001227 ]
1228 }
1229
1230config_b_u585i_iot02a = {"seed_params": {
1231 "tfm_platform": ["stm/b_u585i_iot02a"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001232 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Arthur She026ebb62023-02-08 18:47:39 -08001233 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -07001234 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001235 "test_psa_api": ["OFF"],
1236 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001237 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001238 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -08001239 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001240 },
1241 "common_params": _common_tfm_builder_cfg,
1242 "invalid": _common_tfm_invalid_configs + []
1243 }
1244
Anton Komlev4164ab62024-02-23 10:59:56 +01001245config_stm32h573i_dk = {"seed_params": {
1246 "tfm_platform": ["stm/stm32h573i_dk"],
1247 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1248 "isolation_level": ["1", "2"],
1249 "test_regression": ["OFF", "RegS, RegNS"],
1250 "test_psa_api": ["OFF"],
1251 "cmake_build_type": ["Release"],
1252 "with_bl2": [True],
1253 "profile": [""],
1254 "extra_params": [""]
1255 },
1256 "common_params": _common_tfm_builder_cfg,
1257 "invalid": _common_tfm_invalid_configs + []
1258 }
1259
Matthew Dalzelld5325dd2025-04-17 14:46:10 +01001260config_stm32wba65i_dk = {"seed_params": {
1261 "tfm_platform": ["stm/stm32wba65i_dk"],
1262 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1263 "isolation_level": ["1", "2"],
1264 "test_regression": ["OFF", "RegS, RegNS"],
1265 "test_psa_api": ["OFF"],
1266 "cmake_build_type": ["Release"],
1267 "with_bl2": [False],
1268 "profile": ["profile_small","profile_medium"],
1269 "extra_params": [""]
1270 },
1271 "common_params": _common_tfm_builder_cfg,
1272 "invalid": _common_tfm_invalid_configs + [
1273 ("stm/stm32wba65i_dk", "*", "2", "*",
1274 "*", "*", "*", "profile_small", "*"),
1275 ]
1276 }
1277
1278
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001279config_nucleo_l552ze_q = {"seed_params": {
1280 "tfm_platform": ["stm/nucleo_l552ze_q"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001281 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001282 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001283 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001284 "test_psa_api": ["OFF"],
1285 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001286 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001287 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001288 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001289 },
1290 "common_params": _common_tfm_builder_cfg,
1291 "invalid": _common_tfm_invalid_configs + []
1292 }
1293
1294config_lpcxpresso55s69 = {"seed_params": {
1295 "tfm_platform": ["nxp/lpcxpresso55s69"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001296 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001297 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001298 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001299 "test_psa_api": ["OFF"],
1300 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001301 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001302 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001303 "extra_params": [""]
1304 },
1305 "common_params": _common_tfm_builder_cfg,
1306 "invalid": _common_tfm_invalid_configs + []
1307 }
1308
Xinyu Zhang38b76742021-11-11 13:57:56 +08001309config_bl5340 = {"seed_params": {
1310 "tfm_platform": ["lairdconnectivity/bl5340_dvk_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001311 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001312 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001313 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001314 "test_psa_api": ["OFF"],
1315 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001316 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001317 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001318 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001319 },
1320 "common_params": _common_tfm_builder_cfg,
1321 "invalid": _common_tfm_invalid_configs + []
1322 }
1323
1324config_nrf5340dk = {"seed_params": {
1325 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001326 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001327 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001328 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001329 "test_psa_api": ["OFF"],
1330 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001331 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001332 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001333 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001334 },
1335 "common_params": _common_tfm_builder_cfg,
1336 "invalid": _common_tfm_invalid_configs + []
1337 }
1338
1339config_nrf9160dk = {"seed_params": {
1340 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001341 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001342 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001343 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001344 "test_psa_api": ["OFF"],
1345 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001346 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001347 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001348 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001349 },
1350 "common_params": _common_tfm_builder_cfg,
1351 "invalid": _common_tfm_invalid_configs + []
1352 }
1353
1354config_m2351 = {"seed_params": {
1355 "tfm_platform": ["nuvoton/m2351"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001356 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001357 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001358 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001359 "test_psa_api": ["OFF"],
1360 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001361 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001362 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001363 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001364 },
1365 "common_params": _common_tfm_builder_cfg,
1366 "invalid": _common_tfm_invalid_configs + []
1367 }
1368
1369config_m2354 = {"seed_params": {
1370 "tfm_platform": ["nuvoton/m2354"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001371 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001372 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001373 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001374 "test_psa_api": ["OFF"],
1375 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001376 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001377 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001378 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001379 },
1380 "common_params": _common_tfm_builder_cfg,
1381 "invalid": _common_tfm_invalid_configs + []
1382 }
1383
Dávid Házi0bd447f2024-10-24 19:44:31 +00001384config_rp2350 = {"seed_params": {
1385 "tfm_platform": ["rpi/rp2350"],
1386 "compiler": ["GCC_10_3"],
1387 "isolation_level": ["2"],
1388 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
1389 "test_psa_api": ["OFF"],
1390 "cmake_build_type": ["RelWithDebInfo", "Release"],
1391 "with_bl2": [True],
Nicola Mazzucato4bad6c62024-10-28 14:42:17 +00001392 "profile": ["profile_medium"],
Dávid Házi0bd447f2024-10-24 19:44:31 +00001393 "extra_params": [""]
1394 },
1395 "common_params": _common_tfm_builder_cfg,
1396 "invalid": _common_tfm_invalid_configs + []
1397 }
1398
Jianliang Shen48704152023-10-17 17:06:00 +08001399config_mem_footprint = {"seed_params": {
1400 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001401 "compiler": ["ARMCLANG_6_21"],
Jianliang Shen48704152023-10-17 17:06:00 +08001402 "isolation_level": ["1"],
1403 "test_regression": ["OFF"],
1404 "test_psa_api": ["OFF"],
1405 "cmake_build_type": ["Minsizerel"],
1406 "with_bl2": [True],
1407 "profile": [""],
1408 "extra_params": [""]
1409 },
1410 "common_params": _common_tfm_builder_cfg,
1411 "valid": [
1412 # AN521_ARMCLANG_1_Minsizerel_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001413 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen48704152023-10-17 17:06:00 +08001414 "OFF", "OFF", "Minsizerel", True, "profile_small", "PSOFF"),
1415 # AN521_ARMCLANG_2_Minsizerel_BL2_MEDIUM_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001416 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Jianliang Shen48704152023-10-17 17:06:00 +08001417 "OFF", "OFF", "Minsizerel", True, "profile_medium", "PSOFF"),
1418 # AN521_ARMCLANG_3_Minsizerel_BL2_LARGE_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001419 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Jianliang Shen48704152023-10-17 17:06:00 +08001420 "OFF", "OFF", "Minsizerel", True, "profile_large", "PSOFF"),
1421 ],
1422 "invalid": _common_tfm_invalid_configs + []
1423 }
1424
Jianliang Shen5492f752023-07-27 15:59:01 +08001425config_prof = {"seed_params": {
1426 "tfm_platform": ["arm/mps2/an521"],
1427 "compiler": ["GCC_10_3"],
1428 "isolation_level": ["1"],
1429 "test_regression": ["OFF"],
1430 "test_psa_api": ["OFF"],
1431 "cmake_build_type": ["Release"],
1432 "with_bl2": [True],
1433 "profile": [""],
1434 "extra_params": ["PROF"]
1435 },
1436 "common_params": _common_tfm_builder_cfg,
1437 "valid": [
1438 # AN521_GNUARM_1_Release_BL2_IPC_PROF
1439 ("arm/mps2/an521", "GCC_10_3", "1",
1440 "OFF", "OFF", "Release", True, "", "IPC, PROF"),
1441 # AN521_GNUARM_2_Release_BL2_PROF
1442 ("arm/mps2/an521", "GCC_10_3", "2",
1443 "OFF", "OFF", "Release", True, "", "PROF"),
1444 # AN521_GNUARM_3_Release_BL2_PROF
1445 ("arm/mps2/an521", "GCC_10_3", "3",
1446 "OFF", "OFF", "Release", True, "", "PROF"),
1447 ],
1448 "invalid": _common_tfm_invalid_configs + []
1449 }
1450
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001451# Config groups for debug
1452config_debug = {"seed_params": {
1453 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001454 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001455 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001456 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001457 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001458 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001459 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001460 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001461 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001462 },
1463 "common_params": _common_tfm_builder_cfg,
1464 "invalid": _common_tfm_invalid_configs + []
1465 }
1466
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001467config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001468config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001469
1470config_debug_PSA_API = {"seed_params": {
1471 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001472 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001473 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001474 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001475 "test_psa_api": ["CRYPTO",
1476 "INITIAL_ATTESTATION",
1477 "STORAGE",
1478 "IPC"],
1479 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001480 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001481 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001482 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001483 },
1484 "common_params": _common_tfm_builder_cfg,
1485 "invalid": _common_tfm_invalid_configs + []
1486 }
1487
Matthew Dalzell06e8f692024-11-09 00:55:06 +00001488
1489
Karl Zhangaff558a2020-05-15 14:28:23 +01001490_builtin_configs = {
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001491 # per-patch test group
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001492 "pp_test": config_pp_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001493
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001494 # nightly test groups
1495 "nightly_test": config_nightly_test,
1496 "nightly_profile_s": config_profile_s,
1497 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001498 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001499 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001500 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001501 "nightly_cc_driver_psa": config_cc_driver_psa,
1502 "nightly_fp":config_fp,
1503 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +08001504 "nightly_nsce": config_nsce,
1505 "nightly_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001506 "nightly_cs300_an547": config_cs300_an547,
1507 "nightly_cs300_an552": config_cs300_an552,
1508 "nightly_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001509 "nightly_corstone310": config_corstone310,
Nicola Mazzucatobde5d432024-05-20 11:43:18 +01001510 "nightly_corstone310_pacbti" : config_corstone310_pacbti,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001511 "nightly_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001512 "nightly_corstone320": config_corstone320,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001513 "nightly_corstone1000": config_corstone1000,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001514 #"nightly_rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001515 "nightly_rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301516 "nightly_rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001517 "nightly_rse_rdv3r1": config_rse_rdv3r1,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001518 "nightly_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001519 "nightly_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001520 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001521 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001522 "nightly_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001523 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001524 "nightly_rp2350": config_rp2350,
Matthew Dalzell06e8f692024-11-09 00:55:06 +00001525 "nightly_all_plat": config_all_plat,
Karl Zhang14573bc2020-06-08 09:23:21 +08001526
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001527 # release test groups
1528 "release_test": config_release_test,
1529 "release_profile_s": config_profile_s,
1530 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001531 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001532 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001533 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001534 "release_cc_driver_psa": config_cc_driver_psa,
1535 "release_fp": config_fp,
1536 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001537 "release_nsce": config_nsce,
1538 "release_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001539 "release_cs300_an547": config_cs300_an547,
1540 "release_cs300_an552": config_cs300_an552,
1541 "release_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001542 "release_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001543 "release_corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001544 "release_corstone320": config_corstone320,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001545 #"release_rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001546 "release_rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301547 "release_rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001548 "release_rse_rdv3r1": config_rse_rdv3r1,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001549 "release_rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001550 "release_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001551 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001552 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001553 "release_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001554 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001555 "release_rp2350": config_rp2350,
Karl Zhang14573bc2020-06-08 09:23:21 +08001556
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001557 # code coverage test groups
1558 "coverage_profile_s": config_cov_profile_s,
1559 "coverage_profile_m": config_cov_profile_m,
1560 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001561 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001562 "coverage_nsce": config_cov_nsce,
1563 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001564 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001565
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001566 # MISRA analysis
1567 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001568 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001569
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001570 # platform groups
1571 "an521": config_an521,
1572 "an519": config_an519,
1573 "an524": config_an524,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001574 "cs300_an547": config_cs300_an547,
1575 "cs300_an552": config_cs300_an552,
1576 "cs300_fvp": config_cs300_fvp,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001577 "musca_b1": config_musca_b1,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001578 "musca_s1": config_musca_s1,
Bence Balogh8731a092022-05-24 17:24:54 +02001579 "corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001580 "corstone315": config_corstone315,
Gergely Korcsák78a4d142024-08-05 07:41:36 +02001581 "corstone320": config_corstone320,
Antonio de Angelis78a01fc2025-02-06 11:11:25 +00001582 #"rse_tc3": config_rse_tc3,
Jackson Cooper-Driver164c54c2025-01-08 11:56:07 +00001583 "rse_tc4": config_rse_tc4,
Ishan Deshpande80d840e2025-01-09 18:46:56 +05301584 "rse_rdv3": config_rse_rdv3,
Nicola Mazzucato75b76af2025-02-07 15:20:59 +00001585 "rse_rdv3r1": config_rse_rdv3r1,
Ziad Elhanafy937333f2024-05-22 14:17:40 +01001586 "rse_rd1ae": config_rse_rd1ae,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001587 "cypress_psoc64": config_psoc64,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001588 "corstone1000": config_corstone1000,
Anton Komlev55c3c022024-03-05 16:24:17 +01001589 "stm_stm32l562e_dk": config_stm32l562e_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001590 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001591 "stm_stm32h573i_dk": config_stm32h573i_dk,
Matthew Dalzelld5325dd2025-04-17 14:46:10 +01001592 "stm_stm32wba65i_dk" : config_stm32wba65i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001593 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1594 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001595 "laird_bl5340": config_bl5340,
1596 "nordic_nrf5340dk": config_nrf5340dk,
1597 "nordic_nrf9160dk": config_nrf9160dk,
1598 "nuvoton_m2351": config_m2351,
1599 "nuvoton_m2354": config_m2354,
Dávid Házi0bd447f2024-10-24 19:44:31 +00001600 "rp2350": config_rp2350,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001601
Bence Balogh79fda442022-10-14 18:01:37 +02001602 # config groups for tf-m-extras examples
1603 "example_vad": config_example_vad,
1604 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001605 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001606 "example_dma350_s": config_example_dma350_s,
Bence Baloghd23cbda2023-08-07 15:30:58 +02001607 "example_dma350_ns": config_example_dma350_ns,
Bence Balogh79fda442022-10-14 18:01:37 +02001608
Jianliang Shen48704152023-10-17 17:06:00 +08001609 # config groups for tf-m performance monitor
1610 "mem_footprint": config_mem_footprint,
Jianliang Shen5492f752023-07-27 15:59:01 +08001611 "profiling": config_prof,
1612
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001613 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001614 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001615 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001616 "debug_PSA_API": config_debug_PSA_API,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001617 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001618
1619if __name__ == '__main__':
1620 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001621
Minos Galanakisea421232019-06-20 17:11:28 +01001622 # Default behavior is to export refference config when called
1623 _dir = os.getcwd()
1624 from utils import save_json
1625 for _cname, _cfg in _builtin_configs.items():
1626 _fname = os.path.join(_dir, _cname + ".json")
1627 print("Exporting config %s" % _fname)
1628 save_json(_fname, _cfg)