blob: 3f671bf63469affbf686e0465cc62d92abe5bbd7 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001#!/usr/bin/env python3
2
3""" builtin_configs.py:
4
5 Default configuration files used as reference """
6
7from __future__ import print_function
8
9__copyright__ = """
10/*
Gergely Korcsákba0c5212024-04-03 18:21:49 +020011 * Copyright (c) 2018-2024, Arm Limited. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010012 *
13 * SPDX-License-Identifier: BSD-3-Clause
14 *
15 */
16 """
Karl Zhang08681e62020-10-30 13:56:03 +080017
18__author__ = "tf-m@lists.trustedfirmware.org"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010019__project__ = "Trusted Firmware-M Open CI"
Xinyu Zhang06286a92021-07-22 14:00:51 +080020__version__ = "1.4.0"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010021
Paul Sokolovsky3e8fce02022-04-07 01:23:30 +030022from copy import deepcopy
23
24
Minos Galanakisea421232019-06-20 17:11:28 +010025# common parameters for tf-m build system
26# This configuration template will be passed into the tfm-builder module after
27# the template evaluation is converted to a command
28
29_common_tfm_builder_cfg = {
30 "config_type": "tf-m",
31 "codebase_root_dir": "tf-m",
32 # Order to which the variants are evaluated. This affects the name of
33 # variant configuration and the wildcard replacement logic in invalid
34 # configuration tuples
Xinyu Zhangb708f572020-09-15 11:43:46 +080035 "sort_order": ["tfm_platform",
Xinyu Zhang433771e2022-04-01 16:49:17 +080036 "compiler",
Xinyu Zhangb708f572020-09-15 11:43:46 +080037 "isolation_level",
38 "test_regression",
39 "test_psa_api",
Minos Galanakisea421232019-06-20 17:11:28 +010040 "cmake_build_type",
Xinyu Zhangb708f572020-09-15 11:43:46 +080041 "with_bl2",
Xinyu Zhang9fd74242020-10-22 11:30:50 +080042 "profile",
Xinyu Zhangfd2e1152021-12-17 18:09:01 +080043 "extra_params"],
Minos Galanakisea421232019-06-20 17:11:28 +010044
45 # Keys for the templace will come from the combinations of parameters
46 # provided in the seed dictionary.
47
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080048 "spe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080049 "-S %(spe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080050 "-B %(ci_build_root_dir)s/spe " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080051 "-DTFM_PLATFORM=%(tfm_platform)s " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080052 "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(s_compiler)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080053 "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
Xinyu Zhangb18ae742023-04-25 14:33:27 +080054 "%(test_regression)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080055 "-DCMAKE_BUILD_TYPE=%(cmake_build_type)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080056 "-DTEST_PSA_API=%(test_psa_api)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080057 "-DBL2=%(with_bl2)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080058 "-DTFM_PROFILE=%(profile)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080059 "%(extra_params)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080060 "-DCONFIG_TFM_SOURCE_PATH=%(codebase_root_dir)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080061 "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
62 "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
63 "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
Xinyu Zhang1f21cb22023-06-26 17:56:49 +080064 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080065 "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras ",
66
67 "nspe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080068 "-S %(nspe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080069 "-B %(ci_build_root_dir)s/nspe " + \
70 "-DCONFIG_SPE_PATH=%(ci_build_root_dir)s/spe/api_ns " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080071 "-DTFM_TOOLCHAIN_FILE=%(ci_build_root_dir)s/spe/api_ns/cmake/%(ns_compiler)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080072 "%(extra_params)s " + \
73 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor ",
74
75 # CMake build commands will be executed for every build.
76 "spe_cmake_build": "cmake --build %(ci_build_root_dir)s/spe -- install",
77 "nspe_cmake_build": "cmake --build %(ci_build_root_dir)s/nspe --",
Karl Zhangaff558a2020-05-15 14:28:23 +010078
Xinyu Zhang433771e2022-04-01 16:49:17 +080079 "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
80
Minos Galanakisea421232019-06-20 17:11:28 +010081 # A small subset of string substitution params is allowed in commands.
82 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
83 # _tbm_target_platform_ with the paths set when building
84
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080085 "artifact_capture_rex": (r'%(ci_build_root_dir)s/nspe'
Minos Galanakisea421232019-06-20 17:11:28 +010086 r'/(\w+\.(?:axf|bin|hex))$'),
87
Xinyu Zhang46b37182023-06-30 15:36:44 +080088 # Keys will append extra commands when matching target_platform
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080089 "post_build": {"arm/corstone1000": ("dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_1.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=0;"
90 "dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_provisioning_bundle.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=40960;"
Xinyu Zhang09acfbf2023-10-30 18:30:48 +080091 "%(codebase_root_dir)s/platform/ext/target/arm/corstone1000/create-flash-image.sh %(ci_build_root_dir)s/spe/bin/ cs1000.bin;"),
Matthew Dalzell4fd9e502024-04-19 11:04:26 +010092 "arm/musca_b1": ("if [ -f \"%(ci_build_root_dir)s/nspe\" ]; then "
93 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080094 "%(ci_build_root_dir)s/spe/bin/"
95 "bl2.bin "
96 "-Binary -offset 0xA000000 "
97 "-fill 0xFF 0xA000000 0xA020000 "
98 "%(ci_build_root_dir)s/nspe/"
99 "tfm_s_ns_signed.bin "
100 "-Binary -offset 0xA020000 "
101 "-fill 0xFF 0xA020000 0xA200000 "
102 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100103 "spe/bin/tfm.hex -Intel;"
104 "else "
105 "srec_cat "
106 "%(ci_build_root_dir)s/spe/bin/"
107 "bl2.bin "
108 "-Binary -offset 0xA000000 "
109 "-fill 0xFF 0xA000000 0xA020000 "
110 "%(ci_build_root_dir)s/spe/bin/"
111 "tfm_s_signed.bin "
112 "-Binary -offset 0xA020000 "
113 "-fill 0xFF 0xA020000 0xA200000 "
114 "-o %(ci_build_root_dir)s/"
115 "spe/bin/tfm.hex -Intel;"
116 "fi;"),
117 "arm/musca_s1": ("if [ -f \"%(ci_build_root_dir)s/nspe\" ]; then "
118 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800119 "%(ci_build_root_dir)s/spe/bin/"
120 "bl2.bin "
121 "-Binary -offset 0xA000000 "
122 "-fill 0xFF 0xA000000 0xA020000 "
123 "%(ci_build_root_dir)s/nspe/"
124 "tfm_s_ns_signed.bin "
125 "-Binary -offset 0xA020000 "
126 "-fill 0xFF 0xA020000 0xA200000 "
127 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100128 "spe/bin/tfm.hex -Intel; "
129 "else "
130 "srec_cat "
131 "%(ci_build_root_dir)s/spe/bin/"
132 "bl2.bin "
133 "-Binary -offset 0xA000000 "
134 "-fill 0xFF 0xA000000 0xA020000 "
135 "%(ci_build_root_dir)s/spe/bin/"
136 "tfm_s_signed.bin "
137 "-Binary -offset 0xA020000 "
138 "-fill 0xFF 0xA020000 0xA200000 "
139 "-o %(ci_build_root_dir)s/"
140 "spe/bin/tfm.hex -Intel;"
141 "fi;"),
Jamie Fox9283cbc2024-04-22 13:40:01 +0100142 "arm/rse/tc": ("srec_cat "
143 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
144 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
145 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
146 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fiptool https://downloads.trustedfirmware.org/tf-m/rse/tc/fiptool;"
147 "chmod 755 fiptool;"
148 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fip.bin https://downloads.trustedfirmware.org/tf-m/rse/tc/fip.bin;"
149 "./fiptool update "
150 "--align 8192 --rss-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
151 "--align 8192 --rss-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
152 "--align 8192 --rss-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
153 "--align 8192 --rss-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
154 "--align 8192 --rss-sic-tables-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_sic_tables_signed.bin "
155 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
156 "fip.bin"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800157 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800158 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
159 "pushd %(ci_build_root_dir)s/spe/api_ns;"
160 "mkdir -p image_signing/scripts ;"
161 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
162 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
163 "bin/bl2.bin "
164 "bin/tfm_s_signed.bin "
165 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800166 "popd"),
167 "stm/b_u585i_iot02a": ("echo 'STM32U5 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/b_u585i_iot02a-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"),
Anton Komlev4164ab62024-02-23 10:59:56 +0100177 "stm/stm32h573i_dk": ("echo 'STM32H573I-DK board post process';"
178 "%(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/stm32h573i_dk-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 ;"
186 "popd"),
Matthew Dalzell0bdc0b22024-04-17 18:13:31 +0100187 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 bo.ard post process\n';"
188 "mkdir -p %(codebase_root_dir)s/build/bin ;"
189 # Workaround for flash_JLink.py
190 "cp %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(codebase_root_dir)s/build/bin ;"
191 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(codebase_root_dir)s/build/bin ;"
192 "cd %(codebase_root_dir)s/build/bin; "
193 "rm -f flash.jlink; "
194 "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then "
195 "echo r >> flash.jlink; "
196 "echo erase >> flash.jlink; "
197 "echo loadfile bl2.hex >> flash.jlink; "
198 "echo loadfile tfm_s_ns_signed.bin -0x8000 >> flash.jlink; "
199 "echo r >> flash.jlink; "
200 "echo go >> flash.jlink; "
201 "echo exit >> flash.jlink; "
202 "else "
203 "echo r >> flash.jlink; "
204 "echo erase >> flash.jlink; "
205 "echo loadfile tfm_s.hex >> flash.jlink; "
206 "echo loadfile tfm_ns.hex >> flash.jlink; "
207 "echo r >> flash.jlink; "
208 "echo go >> flash.jlink; "
209 "echo exit >> flash.jlink; "
210 "fi;"
211 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
212 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
213 "mv lpcxpresso55s69-tfm.tar.bz2 %(ci_build_root_dir)s/nspe/bin ;"
214 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800215 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800216 "pushd %(codebase_root_dir)s/;"
Arthur She87602dc2022-02-06 14:42:18 -0800217 "sudo /usr/local/bin/cysecuretools "
218 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
219 "--target cy8ckit-064s0s2-4343w "
220 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800221 "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800222 "--image-type BOOT --image-id 1;"
223 "sudo /usr/local/bin/cysecuretools "
224 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
225 "--target cy8ckit-064s0s2-4343w "
226 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800227 "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800228 "--image-type BOOT --image-id 16;"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800229 "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
230 "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 +0800231 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100232 },
233
234 # (Optional) If set will fail if those artefacts are missing post build
235 "required_artefacts": {"all": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800236 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800237 "tfm_s.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800238 "%(ci_build_root_dir)s/nspe/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800239 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200240 "arm/musca_b1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800241 "%(ci_build_root_dir)s/tfm.hex",
242 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800243 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800244 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800245 "tfm_sign.bin"],
Summer Qin3c2b5722021-05-26 10:43:45 +0800246 "arm/musca_s1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800247 "%(ci_build_root_dir)s/tfm.hex",
248 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800249 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800250 "%(ci_build_root_dir)s/spe/bin/"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100251 "tfm_sign.bin"],
252 "arm/rse/tc": [
253 "%(ci_build_root_dir)s/spe/bin/rom.bin",
254 "%(ci_build_root_dir)s/spe/bin/encrypted_cm_provisioning_bundle_0.bin",
255 "%(ci_build_root_dir)s/spe/bin/encrypted_dm_provisioning_bundle_0.bin",
256 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100257 }
258}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100259
Xinyu Zhangb708f572020-09-15 11:43:46 +0800260# List of all build configs that are impossible under all circumstances
261_common_tfm_invalid_configs = [
Xinyu Zhang459a1982021-07-21 22:34:49 +0800262 # 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 +0300263 ("arm/musca_b1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
264 ("arm/musca_s1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800265 # Load range overlap on Musca for IPC Debug type: T895
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300266 ("arm/musca_b1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
267 ("arm/musca_s1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300268 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800269 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800270 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800271 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
272 ("arm/musca_s1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800273 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800274 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
275 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
276 ("arm/musca_s1", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800277 ]
278
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100279# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800280# Config group for per-patch job
281config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800282 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800283 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300284 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800285 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800286 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800287 "test_psa_api": ["OFF"],
288 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800289 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800290 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800291 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800292 },
293 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800294 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800295 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300296 ("arm/mps2/an519", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800297 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
298 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800299 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800300 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
301 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800302 ("arm/mps2/an519", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800303 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
304 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800305 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800306 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
307 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300308 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800309 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
310 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300311 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800312 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800313 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300314 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen6984bef2023-07-25 10:36:56 +0800315 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800316 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300317 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800318 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
319 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300320 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800321 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
322 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300323 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800324 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
325 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800326 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800327 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Summer Qin379abb62022-10-08 16:41:54 +0800328 # AN521_GCC_2_Debug_BL2_MEDIUM
329 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800330 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
331 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800332 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800333 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
334 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800335 ("arm/mps2/an521", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800336 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
337 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800338 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800339 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800340 # AN521_GCC_1_FF_Release_BL2
341 ("arm/mps2/an521", "GCC_10_3", "1",
342 "OFF", "IPC", "Release", True, "", ""),
343 # AN521_ARMCLANG_2_STORAGE_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300344 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800345 "OFF", "STORAGE", "Debug", True, "", ""),
Bence Balogh1aa8d582023-08-29 13:10:02 +0200346 # CS300_FVP_GNUARM_2_RegBL2_RegS_RegNS_Debug_BL2
347 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800348 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Bence Balogh1aa8d582023-08-29 13:10:02 +0200349 # CS300_FVP_GNUARM_2_RegBL2_RegS_RegNS_Release_BL2
350 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800351 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800352 # corstone1000_GCC_2_RegS_Debug_BL2_NSOFF_CS1K_TEST_FVP
353 ("arm/corstone1000", "GCC_10_3", "2",
354 "RegS", "OFF", "Debug", True, "", "NSOFF, CS1K_TEST, FVP"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800355 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800356 ("arm/musca_b1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800357 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
358 # MUSCA_S1_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300359 ("arm/musca_s1", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800360 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
361 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800362 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800363 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
364 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800365 ("arm/musca_s1", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800366 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
367 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800368 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800369 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
370 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Summer Qin379abb62022-10-08 16:41:54 +0800371 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800372 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Jamie Fox9283cbc2024-04-22 13:40:01 +0100373 # RSE_TC_GCC_2_RegS_RegNS_Release_BL2
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000374 ("arm/rse/tc", "GCC_10_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100375 "RegS, RegNS", "OFF", "Release", True, "", ""),
376 # RSE_RDFremont_GCC_2_Release_BL2_NSOFF_CFG0
Joel Goddard2dd81a12024-01-23 15:10:08 +0000377 ("arm/rse/rdfremont", "GCC_10_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100378 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800379 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300380 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800381 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
382 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Summer Qin379abb62022-10-08 16:41:54 +0800383 ("stm/stm32l562e_dk", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800384 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
385 # stm32l562e_dk_GCC_3_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800386 ("stm/stm32l562e_dk", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800387 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700388 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
389 ("stm/b_u585i_iot02a", "GCC_10_3", "1",
390 "RegS, RegNS", "OFF", "Release", True, "", ""),
391 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300392 ("stm/b_u585i_iot02a", "ARMCLANG_6_21", "2",
Arthur She4f08c152023-05-15 15:29:14 -0700393 "RegS, RegNS", "OFF", "Release", True, "", ""),
Anton Komlev4164ab62024-02-23 10:59:56 +0100394 # stm32h573i_dk_GCC_1_RegS_RegNS_Release_BL2
395 ("stm/stm32h573i_dk", "GCC_10_3", "1",
396 "RegS, RegNS", "OFF", "Release", True, "", ""),
397 # stm32h573i_dk_ARMCLANG_2_RegS_RegNS_Release_BL2
398 ("stm/stm32h573i_dk", "ARMCLANG_6_21", "2",
399 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800400 # psoc64_GCC_2_RegS_RegNS_Release
Summer Qin379abb62022-10-08 16:41:54 +0800401 ("cypress/psoc64", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800402 "RegS, RegNS", "OFF", "Release", False, "", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800403 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800404 "invalid": _common_tfm_invalid_configs + []
405 }
406
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800407# Config group for nightly job
408config_nightly_test = {"seed_params": {
409 "tfm_platform": ["arm/mps2/an519",
410 "arm/mps2/an521",
411 "arm/mps3/an524",
412 "arm/musca_s1",
Mark Horvathef57baa2022-09-12 13:36:36 +0200413 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300414 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800415 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800416 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800417 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800418 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800419 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800420 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800421 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100422 },
423 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800424 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100425 }
426
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800427# Config group for release job
428config_release_test = {"seed_params": {
429 "tfm_platform": ["arm/mps2/an519",
430 "arm/mps2/an521",
431 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200432 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800433 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300434 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800435 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800436 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800437 "test_psa_api": ["OFF"],
438 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800439 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800440 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100441 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800442 },
443 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800444 "valid": [
445 # sanity test for GCC v11.2
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800446 # AN521_GCC_3_RegBL2_RegS_RegNS_Relwithdebinfo_BL2
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800447 ("arm/mps2/an521", "GCC_11_2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800448 "3", "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800449 True, "", ""),
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800450 ],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800451 "invalid": _common_tfm_invalid_configs + []
452 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800453
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800454# Config groups for TF-M features
455config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800456 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300457 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Huda27ae72022-03-28 15:32:19 +0800458 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800459 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800460 "test_psa_api": ["OFF"],
461 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800462 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800463 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800464 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800465 },
466 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800467 "invalid": _common_tfm_invalid_configs + [
Summer Qin379abb62022-10-08 16:41:54 +0800468 ("arm/mps2/an519", "GCC_10_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800469 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800470 ]
471 }
472
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800473config_profile_m = {"seed_params": {
474 "tfm_platform": ["arm/mps2/an519",
475 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200476 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300477 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800478 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800479 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800480 "test_psa_api": ["OFF"],
481 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800482 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800483 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800484 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800485 },
486 "common_params": _common_tfm_builder_cfg,
487 "invalid": _common_tfm_invalid_configs + []
488 }
489
David Hu3d333762022-10-27 18:12:33 +0800490config_profile_m_arotless = {"seed_params": {
491 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300492 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Hu3d333762022-10-27 18:12:33 +0800493 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800494 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800495 "test_psa_api": ["OFF"],
496 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
497 "with_bl2": [True],
498 "profile": ["profile_medium_arotless"],
499 "extra_params": ["", "PSOFF"]
500 },
501 "common_params": _common_tfm_builder_cfg,
502 "invalid": _common_tfm_invalid_configs + []
503 }
504
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800505config_profile_l = {"seed_params": {
506 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300507 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800508 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800509 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800510 "test_psa_api": ["OFF"],
511 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800512 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800513 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800514 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800515 },
516 "common_params": _common_tfm_builder_cfg,
517 "invalid": _common_tfm_invalid_configs + []
518 }
519
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800520config_ipc_backend = {"seed_params": {
521 "tfm_platform": ["arm/mps2/an519",
522 "arm/mps2/an521",
523 "arm/musca_s1",
524 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300525 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800526 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800527 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800528 "test_psa_api": ["OFF"],
529 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
530 "with_bl2": [True],
531 "profile": [""],
532 "extra_params": ["IPC"]
533 },
534 "common_params": _common_tfm_builder_cfg,
535 "invalid": _common_tfm_invalid_configs + []
536 }
537
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800538config_cc_driver_psa = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200539 "tfm_platform": ["arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800540 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800541 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800542 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800543 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800544 "test_psa_api": ["OFF"],
545 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800546 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800547 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800548 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800549 },
550 "common_params": _common_tfm_builder_cfg,
551 "invalid": _common_tfm_invalid_configs + []
552 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100553
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800554config_fp = {"seed_params": {
Xinyu Zhange91567c2023-09-13 14:10:11 +0800555 "tfm_platform": ["arm/mps2/an521",
556 "arm/mps3/corstone300/an552",
557 "arm/mps3/corstone300/fvp"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800558 "compiler": ["GCC_10_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800559 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800560 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800561 "test_psa_api": ["OFF"],
562 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800563 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800564 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200565 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800566 },
567 "common_params": _common_tfm_builder_cfg,
568 "invalid": _common_tfm_invalid_configs + []
569 }
Karl Zhangeffed972020-06-30 15:48:01 +0800570
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800571config_psa_api = {"seed_params": {
572 "tfm_platform": ["arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200573 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800574 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300575 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800576 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800577 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800578 "test_psa_api": ["IPC",
579 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800580 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800581 "STORAGE"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800582 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800583 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800584 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800585 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800586 },
587 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300588 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800589 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800590
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800591config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800592 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300593 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800594 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800595 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800596 "test_psa_api": ["OFF"],
597 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800598 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800599 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800600 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800601 },
602 "common_params": _common_tfm_builder_cfg,
603 "invalid": _common_tfm_invalid_configs + []
604 }
605
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800606config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800607 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300608 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800609 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800610 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800611 "test_psa_api": ["OFF"],
612 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800613 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800614 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800615 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800616 },
617 "common_params": _common_tfm_builder_cfg,
618 "invalid": _common_tfm_invalid_configs + []
619 }
620
Bence Balogh79fda442022-10-14 18:01:37 +0200621# Config groups for TF-M examples
622config_example_vad = {"seed_params": {
Bence Balogh1aa8d582023-08-29 13:10:02 +0200623 "tfm_platform": ["arm/mps3/corstone300/an552"],
Bence Balogh79fda442022-10-14 18:01:37 +0200624 "compiler": ["GCC_10_3"],
625 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800626 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200627 "test_psa_api": ["OFF"],
628 "cmake_build_type": ["Release"],
629 "with_bl2": [True],
630 "profile": [""],
631 "extra_params": ["EXAMPLE_VAD"]
632 },
633 "common_params": _common_tfm_builder_cfg,
634 "invalid": _common_tfm_invalid_configs + []
635 }
636
Bence Balogh852f8bd2023-08-07 14:46:54 +0200637config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200638 "tfm_platform": ["arm/mps3/corstone310/fvp"],
639 "compiler": ["GCC_10_3"],
640 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800641 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200642 "test_psa_api": ["OFF"],
643 "cmake_build_type": ["Release"],
644 "with_bl2": [True],
645 "profile": [""],
Bence Balogh852f8bd2023-08-07 14:46:54 +0200646 "extra_params": ["EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200647 },
648 "common_params": _common_tfm_builder_cfg,
649 "invalid": _common_tfm_invalid_configs + []
650 }
651
652config_example_dma350_s = {"seed_params": {
653 "tfm_platform": ["arm/mps3/corstone310/fvp"],
654 "compiler": ["GCC_10_3"],
655 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800656 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200657 "test_psa_api": ["OFF"],
658 "cmake_build_type": ["Release"],
659 "with_bl2": [True],
660 "profile": [""],
661 "extra_params": ["EXAMPLE_DMA350_S"]
662 },
663 "common_params": _common_tfm_builder_cfg,
664 "invalid": _common_tfm_invalid_configs + []
665 }
666
Bence Baloghd23cbda2023-08-07 15:30:58 +0200667config_example_dma350_ns = {"seed_params": {
668 "tfm_platform": ["arm/mps3/corstone310/fvp"],
669 "compiler": ["GCC_10_3"],
670 "isolation_level": ["1"],
671 "test_regression": ["OFF"],
672 "test_psa_api": ["OFF"],
673 "cmake_build_type": ["Release"],
674 "with_bl2": [True],
675 "profile": [""],
676 "extra_params": ["EXAMPLE_DMA350_NS"]
677 },
678 "common_params": _common_tfm_builder_cfg,
679 "invalid": _common_tfm_invalid_configs + []
680 }
681
Bence Balogh79fda442022-10-14 18:01:37 +0200682config_example_dma350_trigger = {"seed_params": {
683 "tfm_platform": ["arm/mps3/corstone310/fvp"],
684 "compiler": ["GCC_10_3"],
685 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800686 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200687 "test_psa_api": ["OFF"],
688 "cmake_build_type": ["Release"],
689 "with_bl2": [True],
690 "profile": [""],
691 "extra_params": ["EXAMPLE_DMA350_TRIGGER"]
692 },
693 "common_params": _common_tfm_builder_cfg,
694 "invalid": _common_tfm_invalid_configs + []
695 }
696
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300697config_misra = {"seed_params": {
698 "tfm_platform": ["arm/musca_b1"],
699 "compiler": ["GCC_10_3"],
700 "isolation_level": ["1"],
701 "test_regression": ["OFF"],
702 "test_psa_api": ["OFF"],
703 "cmake_build_type": ["Debug"],
704 "with_bl2": [True],
Xinyu Zhange17926f2023-08-14 11:00:43 +0800705 "profile": ["profile_small", "profile_medium_arotless"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300706 "extra_params": ["PSOFF"]
707 },
708 "common_params": _common_tfm_builder_cfg,
Xinyu Zhange17926f2023-08-14 11:00:43 +0800709 "valid": [
710 # MUSCA_B1_GCC_2_Debug_BL2_MEDIUM_PSOFF
711 ("arm/musca_b1", "GCC_10_3", "2", "OFF",
712 "OFF", "Debug", True, "profile_medium", "PSOFF"),
713 # MUSCA_B1_GCC_3_Debug_BL2_LARGE_PSOFF
714 ("arm/musca_b1", "GCC_10_3", "3", "OFF",
715 "OFF", "Debug", True, "profile_large", "PSOFF"),
716 ],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300717 "invalid": _common_tfm_invalid_configs + []
718 }
719
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300720config_misra_debug = {"seed_params": {
721 "tfm_platform": ["arm/musca_b1"],
722 "compiler": ["GCC_10_3"],
723 "isolation_level": ["1"],
724 "test_regression": ["OFF"],
725 "test_psa_api": ["OFF"],
726 "cmake_build_type": ["Debug"],
727 "with_bl2": [True],
728 "profile": ["profile_small"],
729 "extra_params": ["PSOFF"]
730 },
731 "common_params": _common_tfm_builder_cfg,
732 "invalid": _common_tfm_invalid_configs + []
733 }
734
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800735# Config groups for code coverage
736config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800737config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800738config_cov_profile_s["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800739
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800740config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800741config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800742config_cov_profile_m["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800743
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800744config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800745config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800746config_cov_profile_l["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800747
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800748config_cov_ipc_backend = deepcopy(config_ipc_backend)
749config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
750config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_10_3"]
751
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800752config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800753config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800754config_cov_nsce["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800755
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800756config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800757config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800758config_cov_mmio["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800759
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800760config_cov_fp = deepcopy(config_fp)
761config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang778424e2023-02-27 11:39:57 +0800762config_cov_fp["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800763
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800764# Config groups for platforms
765config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800766 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300767 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800768 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800769 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800770 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800771 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800772 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800773 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800774 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800775 },
776 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800777 "invalid": _common_tfm_invalid_configs + []
778 }
779
780config_an521 = {"seed_params": {
781 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300782 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800783 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800784 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800785 "test_psa_api": ["OFF"],
786 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800787 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800788 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800789 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800790 },
791 "common_params": _common_tfm_builder_cfg,
792 "invalid": _common_tfm_invalid_configs + []
793 }
794
795config_an524 = {"seed_params": {
796 "tfm_platform": ["arm/mps3/an524"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300797 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800798 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800799 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800800 "test_psa_api": ["OFF"],
801 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800802 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800803 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800804 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800805 },
806 "common_params": _common_tfm_builder_cfg,
807 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800808 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000809
Bence Balogh1aa8d582023-08-29 13:10:02 +0200810config_cs300_an547 = {"seed_params": {
811 "tfm_platform": ["arm/mps3/corstone300/an547"],
812 "compiler": ["GCC_10_3"],
813 "isolation_level": ["1"],
814 "test_regression": ["OFF"],
815 "test_psa_api": ["OFF"],
816 "cmake_build_type": ["Debug"],
817 "with_bl2": [True],
818 "profile": [""],
819 "extra_params": [""]
820 },
821 "common_params": _common_tfm_builder_cfg,
822 "invalid": _common_tfm_invalid_configs + []
823 }
Xinyu Zhang38b76742021-11-11 13:57:56 +0800824
Bence Balogh1aa8d582023-08-29 13:10:02 +0200825config_cs300_an552 = {"seed_params": {
826 "tfm_platform": ["arm/mps3/corstone300/an552"],
827 "compiler": ["GCC_10_3"],
828 "isolation_level": ["1", "2"],
829 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
830 "test_psa_api": ["OFF"],
831 "cmake_build_type": ["Debug", "Release"],
832 "with_bl2": [True],
833 "profile": [""],
834 "extra_params": [""]
835 },
836 "common_params": _common_tfm_builder_cfg,
837 "invalid": _common_tfm_invalid_configs + []
838 }
839
840config_cs300_fvp = {"seed_params": {
841 "tfm_platform": ["arm/mps3/corstone300/fvp"],
842 "compiler": ["GCC_10_3"],
843 "isolation_level": ["1", "2"],
844 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
845 "test_psa_api": ["OFF"],
846 "cmake_build_type": ["Debug", "Release"],
847 "with_bl2": [True],
848 "profile": [""],
849 "extra_params": [""]
850 },
851 "common_params": _common_tfm_builder_cfg,
852 "invalid": _common_tfm_invalid_configs + []
853 }
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800854
855config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200856 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300857 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800858 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800859 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800860 "test_psa_api": ["OFF"],
861 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800862 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800863 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800864 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800865 },
866 "common_params": _common_tfm_builder_cfg,
867 "invalid": _common_tfm_invalid_configs + []
868 }
869
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800870config_musca_s1 = {"seed_params": {
871 "tfm_platform": ["arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300872 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800873 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800874 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800875 "test_psa_api": ["OFF"],
876 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800877 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800878 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800879 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800880 },
881 "common_params": _common_tfm_builder_cfg,
882 "invalid": _common_tfm_invalid_configs + []
883 }
884
Bence Balogh8731a092022-05-24 17:24:54 +0200885config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +0100886 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Bence Balogh176b78f2022-02-22 13:49:34 +0100887 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800888 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800889 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800890 "test_psa_api": ["OFF"],
891 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800892 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800893 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800894 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800895 },
896 "common_params": _common_tfm_builder_cfg,
897 "invalid": _common_tfm_invalid_configs + []
898 }
899
Gergely Korcsákba0c5212024-04-03 18:21:49 +0200900config_corstone315 = {"seed_params": {
901 "tfm_platform": ["arm/mps4/corstone315"],
902 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
903 "isolation_level": ["1"],
904 "test_regression": ["OFF"],
905 "test_psa_api": ["OFF"],
906 "cmake_build_type": ["Debug", "Release"],
907 "with_bl2": [True],
908 "profile": [""],
909 "extra_params": [""]
910 },
911 "common_params": _common_tfm_builder_cfg,
912 "invalid": _common_tfm_invalid_configs + []
913 }
914
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000915config_rse = {"seed_params": {
916 "tfm_platform": ["arm/rse/tc"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100917 "compiler": ["GCC_10_3"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100918 "isolation_level": ["1", "2"],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100919 "test_regression": ["OFF", "RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100920 "test_psa_api": ["OFF"],
921 "cmake_build_type": ["Debug", "Release"],
922 "with_bl2": [True],
923 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100924 "extra_params": [""]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100925 },
926 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +0000927 "invalid": _common_tfm_invalid_configs + [
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000928 # BL2 is too large for RSE in Debug builds with tests
929 ("arm/rse/tc", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +0000930 "Debug", True, "*", "*"),
931 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100932 }
933
Joel Goddard2dd81a12024-01-23 15:10:08 +0000934config_rse_rdfremont = {"seed_params": {
935 "tfm_platform": ["arm/rse/rdfremont"],
936 "compiler": ["GCC_10_3"],
937 "isolation_level": ["1", "2"],
938 "test_regression": ["OFF"],
939 "test_psa_api": ["OFF"],
940 "cmake_build_type": ["Debug", "Release"],
941 "with_bl2": [True],
942 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100943 "extra_params": ["NSOFF, CFG0"]
Joel Goddard2dd81a12024-01-23 15:10:08 +0000944 },
945 "common_params": _common_tfm_builder_cfg,
946 "invalid": _common_tfm_invalid_configs + []
947 }
948
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800949config_psoc64 = {"seed_params": {
950 "tfm_platform": ["cypress/psoc64"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300951 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800952 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800953 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800954 "test_psa_api": ["OFF"],
955 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800956 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800957 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800958 "extra_params": [""]
959 },
960 "common_params": _common_tfm_builder_cfg,
961 "invalid": _common_tfm_invalid_configs + []
962 }
963
964config_corstone1000 = {"seed_params": {
965 "tfm_platform": ["arm/corstone1000"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800966 "compiler": ["GCC_10_3"],
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800967 "isolation_level": ["1", "2"],
Emekcan Arasf8b39802023-04-24 10:15:22 +0100968 "test_regression": ["RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800969 "test_psa_api": ["OFF"],
970 "cmake_build_type": ["Debug"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800971 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800972 "profile": [""],
Xinyu Zhang09acfbf2023-10-30 18:30:48 +0800973 "extra_params": ["NSOFF, CS1K_TEST, FVP", "NSOFF, CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800974 },
975 "common_params": _common_tfm_builder_cfg,
976 "invalid": _common_tfm_invalid_configs + []
977 }
978
979config_stm32l562e_dk = {"seed_params": {
980 "tfm_platform": ["stm/stm32l562e_dk"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300981 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800982 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800983 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800984 "test_psa_api": ["OFF"],
985 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800986 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800987 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800988 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
989 },
990 "common_params": _common_tfm_builder_cfg,
991 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800992 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300993 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800994 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800995 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800996 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800997 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800998 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800999 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +08001000 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001001 ]
1002 }
1003
1004config_b_u585i_iot02a = {"seed_params": {
1005 "tfm_platform": ["stm/b_u585i_iot02a"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001006 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Arthur She026ebb62023-02-08 18:47:39 -08001007 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -07001008 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001009 "test_psa_api": ["OFF"],
1010 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001011 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001012 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -08001013 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001014 },
1015 "common_params": _common_tfm_builder_cfg,
1016 "invalid": _common_tfm_invalid_configs + []
1017 }
1018
Anton Komlev4164ab62024-02-23 10:59:56 +01001019config_stm32h573i_dk = {"seed_params": {
1020 "tfm_platform": ["stm/stm32h573i_dk"],
1021 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
1022 "isolation_level": ["1", "2"],
1023 "test_regression": ["OFF", "RegS, RegNS"],
1024 "test_psa_api": ["OFF"],
1025 "cmake_build_type": ["Release"],
1026 "with_bl2": [True],
1027 "profile": [""],
1028 "extra_params": [""]
1029 },
1030 "common_params": _common_tfm_builder_cfg,
1031 "invalid": _common_tfm_invalid_configs + []
1032 }
1033
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001034config_nucleo_l552ze_q = {"seed_params": {
1035 "tfm_platform": ["stm/nucleo_l552ze_q"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001036 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001037 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001038 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001039 "test_psa_api": ["OFF"],
1040 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001041 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001042 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001043 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001044 },
1045 "common_params": _common_tfm_builder_cfg,
1046 "invalid": _common_tfm_invalid_configs + []
1047 }
1048
1049config_lpcxpresso55s69 = {"seed_params": {
1050 "tfm_platform": ["nxp/lpcxpresso55s69"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001051 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001052 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001053 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001054 "test_psa_api": ["OFF"],
1055 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001056 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001057 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001058 "extra_params": [""]
1059 },
1060 "common_params": _common_tfm_builder_cfg,
1061 "invalid": _common_tfm_invalid_configs + []
1062 }
1063
Xinyu Zhang38b76742021-11-11 13:57:56 +08001064config_bl5340 = {"seed_params": {
1065 "tfm_platform": ["lairdconnectivity/bl5340_dvk_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001066 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001067 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001068 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001069 "test_psa_api": ["OFF"],
1070 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001071 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001072 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001073 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001074 },
1075 "common_params": _common_tfm_builder_cfg,
1076 "invalid": _common_tfm_invalid_configs + []
1077 }
1078
1079config_nrf5340dk = {"seed_params": {
1080 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001081 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001082 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001083 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001084 "test_psa_api": ["OFF"],
1085 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001086 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001087 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001088 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001089 },
1090 "common_params": _common_tfm_builder_cfg,
1091 "invalid": _common_tfm_invalid_configs + []
1092 }
1093
1094config_nrf9160dk = {"seed_params": {
1095 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001096 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001097 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001098 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001099 "test_psa_api": ["OFF"],
1100 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001101 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001102 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001103 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001104 },
1105 "common_params": _common_tfm_builder_cfg,
1106 "invalid": _common_tfm_invalid_configs + []
1107 }
1108
1109config_m2351 = {"seed_params": {
1110 "tfm_platform": ["nuvoton/m2351"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001111 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001112 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001113 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001114 "test_psa_api": ["OFF"],
1115 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001116 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001117 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001118 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001119 },
1120 "common_params": _common_tfm_builder_cfg,
1121 "invalid": _common_tfm_invalid_configs + []
1122 }
1123
1124config_m2354 = {"seed_params": {
1125 "tfm_platform": ["nuvoton/m2354"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001126 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001127 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001128 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001129 "test_psa_api": ["OFF"],
1130 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001131 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001132 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001133 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001134 },
1135 "common_params": _common_tfm_builder_cfg,
1136 "invalid": _common_tfm_invalid_configs + []
1137 }
1138
Jianliang Shen48704152023-10-17 17:06:00 +08001139config_mem_footprint = {"seed_params": {
1140 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001141 "compiler": ["ARMCLANG_6_21"],
Jianliang Shen48704152023-10-17 17:06:00 +08001142 "isolation_level": ["1"],
1143 "test_regression": ["OFF"],
1144 "test_psa_api": ["OFF"],
1145 "cmake_build_type": ["Minsizerel"],
1146 "with_bl2": [True],
1147 "profile": [""],
1148 "extra_params": [""]
1149 },
1150 "common_params": _common_tfm_builder_cfg,
1151 "valid": [
1152 # AN521_ARMCLANG_1_Minsizerel_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001153 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen48704152023-10-17 17:06:00 +08001154 "OFF", "OFF", "Minsizerel", True, "profile_small", "PSOFF"),
1155 # AN521_ARMCLANG_2_Minsizerel_BL2_MEDIUM_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001156 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Jianliang Shen48704152023-10-17 17:06:00 +08001157 "OFF", "OFF", "Minsizerel", True, "profile_medium", "PSOFF"),
1158 # AN521_ARMCLANG_3_Minsizerel_BL2_LARGE_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001159 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Jianliang Shen48704152023-10-17 17:06:00 +08001160 "OFF", "OFF", "Minsizerel", True, "profile_large", "PSOFF"),
1161 ],
1162 "invalid": _common_tfm_invalid_configs + []
1163 }
1164
Jianliang Shen5492f752023-07-27 15:59:01 +08001165config_prof = {"seed_params": {
1166 "tfm_platform": ["arm/mps2/an521"],
1167 "compiler": ["GCC_10_3"],
1168 "isolation_level": ["1"],
1169 "test_regression": ["OFF"],
1170 "test_psa_api": ["OFF"],
1171 "cmake_build_type": ["Release"],
1172 "with_bl2": [True],
1173 "profile": [""],
1174 "extra_params": ["PROF"]
1175 },
1176 "common_params": _common_tfm_builder_cfg,
1177 "valid": [
1178 # AN521_GNUARM_1_Release_BL2_IPC_PROF
1179 ("arm/mps2/an521", "GCC_10_3", "1",
1180 "OFF", "OFF", "Release", True, "", "IPC, PROF"),
1181 # AN521_GNUARM_2_Release_BL2_PROF
1182 ("arm/mps2/an521", "GCC_10_3", "2",
1183 "OFF", "OFF", "Release", True, "", "PROF"),
1184 # AN521_GNUARM_3_Release_BL2_PROF
1185 ("arm/mps2/an521", "GCC_10_3", "3",
1186 "OFF", "OFF", "Release", True, "", "PROF"),
1187 ],
1188 "invalid": _common_tfm_invalid_configs + []
1189 }
1190
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001191# Config groups for debug
1192config_debug = {"seed_params": {
1193 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001194 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001195 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001196 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001197 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001198 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001199 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001200 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001201 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001202 },
1203 "common_params": _common_tfm_builder_cfg,
1204 "invalid": _common_tfm_invalid_configs + []
1205 }
1206
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001207config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001208config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001209
1210config_debug_PSA_API = {"seed_params": {
1211 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001212 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001213 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001214 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001215 "test_psa_api": ["CRYPTO",
1216 "INITIAL_ATTESTATION",
1217 "STORAGE",
1218 "IPC"],
1219 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001220 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001221 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001222 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001223 },
1224 "common_params": _common_tfm_builder_cfg,
1225 "invalid": _common_tfm_invalid_configs + []
1226 }
1227
Karl Zhangaff558a2020-05-15 14:28:23 +01001228_builtin_configs = {
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001229 # per-patch test group
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001230 "pp_test": config_pp_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001231
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001232 # nightly test groups
1233 "nightly_test": config_nightly_test,
1234 "nightly_profile_s": config_profile_s,
1235 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001236 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001237 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001238 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001239 "nightly_cc_driver_psa": config_cc_driver_psa,
1240 "nightly_fp":config_fp,
1241 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +08001242 "nightly_nsce": config_nsce,
1243 "nightly_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001244 "nightly_cs300_an547": config_cs300_an547,
1245 "nightly_cs300_an552": config_cs300_an552,
1246 "nightly_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001247 "nightly_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001248 "nightly_corstone315": config_corstone315,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001249 "nightly_corstone1000": config_corstone1000,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001250 "nightly_rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001251 "nightly_rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001252 "nightly_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001253 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001254 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001255 "nightly_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001256 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001257
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001258 # release test groups
1259 "release_test": config_release_test,
1260 "release_profile_s": config_profile_s,
1261 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001262 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001263 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001264 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001265 "release_cc_driver_psa": config_cc_driver_psa,
1266 "release_fp": config_fp,
1267 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001268 "release_nsce": config_nsce,
1269 "release_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001270 "release_cs300_an547": config_cs300_an547,
1271 "release_cs300_an552": config_cs300_an552,
1272 "release_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001273 "release_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001274 "release_corstone315": config_corstone315,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001275 "release_rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001276 "release_rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001277 "release_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001278 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001279 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001280 "release_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001281 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001282
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001283 # code coverage test groups
1284 "coverage_profile_s": config_cov_profile_s,
1285 "coverage_profile_m": config_cov_profile_m,
1286 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001287 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001288 "coverage_nsce": config_cov_nsce,
1289 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001290 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001291
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001292 # MISRA analysis
1293 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001294 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001295
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001296 # platform groups
1297 "an521": config_an521,
1298 "an519": config_an519,
1299 "an524": config_an524,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001300 "cs300_an547": config_cs300_an547,
1301 "cs300_an552": config_cs300_an552,
1302 "cs300_fvp": config_cs300_fvp,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001303 "musca_b1": config_musca_b1,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001304 "musca_s1": config_musca_s1,
Bence Balogh8731a092022-05-24 17:24:54 +02001305 "corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001306 "corstone315": config_corstone315,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001307 "rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001308 "rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001309 "cypress_psoc64": config_psoc64,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001310 "corstone1000": config_corstone1000,
Anton Komlev55c3c022024-03-05 16:24:17 +01001311 "stm_stm32l562e_dk": config_stm32l562e_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001312 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001313 "stm_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001314 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1315 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001316 "laird_bl5340": config_bl5340,
1317 "nordic_nrf5340dk": config_nrf5340dk,
1318 "nordic_nrf9160dk": config_nrf9160dk,
1319 "nuvoton_m2351": config_m2351,
1320 "nuvoton_m2354": config_m2354,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001321
Bence Balogh79fda442022-10-14 18:01:37 +02001322 # config groups for tf-m-extras examples
1323 "example_vad": config_example_vad,
1324 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001325 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001326 "example_dma350_s": config_example_dma350_s,
Bence Baloghd23cbda2023-08-07 15:30:58 +02001327 "example_dma350_ns": config_example_dma350_ns,
Bence Balogh79fda442022-10-14 18:01:37 +02001328
Jianliang Shen48704152023-10-17 17:06:00 +08001329 # config groups for tf-m performance monitor
1330 "mem_footprint": config_mem_footprint,
Jianliang Shen5492f752023-07-27 15:59:01 +08001331 "profiling": config_prof,
1332
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001333 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001334 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001335 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001336 "debug_PSA_API": config_debug_PSA_API,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001337 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001338
1339if __name__ == '__main__':
1340 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001341
Minos Galanakisea421232019-06-20 17:11:28 +01001342 # Default behavior is to export refference config when called
1343 _dir = os.getcwd()
1344 from utils import save_json
1345 for _cname, _cfg in _builtin_configs.items():
1346 _fname = os.path.join(_dir, _cname + ".json")
1347 print("Exporting config %s" % _fname)
1348 save_json(_fname, _cfg)