blob: 84c55552209cd228f44c1110d53084ccfae03250 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001#!/usr/bin/env python3
2
3""" builtin_configs.py:
4
5 Default configuration files used as reference """
6
7from __future__ import print_function
8
9__copyright__ = """
10/*
Gergely Korcsákba0c5212024-04-03 18:21:49 +020011 * Copyright (c) 2018-2024, Arm Limited. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010012 *
13 * SPDX-License-Identifier: BSD-3-Clause
14 *
15 */
16 """
Karl Zhang08681e62020-10-30 13:56:03 +080017
18__author__ = "tf-m@lists.trustedfirmware.org"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010019__project__ = "Trusted Firmware-M Open CI"
Xinyu Zhang06286a92021-07-22 14:00:51 +080020__version__ = "1.4.0"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010021
Paul Sokolovsky3e8fce02022-04-07 01:23:30 +030022from copy import deepcopy
23
24
Minos Galanakisea421232019-06-20 17:11:28 +010025# common parameters for tf-m build system
26# This configuration template will be passed into the tfm-builder module after
27# the template evaluation is converted to a command
28
29_common_tfm_builder_cfg = {
30 "config_type": "tf-m",
31 "codebase_root_dir": "tf-m",
32 # Order to which the variants are evaluated. This affects the name of
33 # variant configuration and the wildcard replacement logic in invalid
34 # configuration tuples
Xinyu Zhangb708f572020-09-15 11:43:46 +080035 "sort_order": ["tfm_platform",
Xinyu Zhang433771e2022-04-01 16:49:17 +080036 "compiler",
Xinyu Zhangb708f572020-09-15 11:43:46 +080037 "isolation_level",
38 "test_regression",
39 "test_psa_api",
Minos Galanakisea421232019-06-20 17:11:28 +010040 "cmake_build_type",
Xinyu Zhangb708f572020-09-15 11:43:46 +080041 "with_bl2",
Xinyu Zhang9fd74242020-10-22 11:30:50 +080042 "profile",
Xinyu Zhangfd2e1152021-12-17 18:09:01 +080043 "extra_params"],
Minos Galanakisea421232019-06-20 17:11:28 +010044
45 # Keys for the templace will come from the combinations of parameters
46 # provided in the seed dictionary.
47
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080048 "spe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080049 "-S %(spe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080050 "-B %(ci_build_root_dir)s/spe " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080051 "-DTFM_PLATFORM=%(tfm_platform)s " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080052 "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(s_compiler)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080053 "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
Xinyu Zhangb18ae742023-04-25 14:33:27 +080054 "%(test_regression)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080055 "-DCMAKE_BUILD_TYPE=%(cmake_build_type)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080056 "-DTEST_PSA_API=%(test_psa_api)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080057 "-DBL2=%(with_bl2)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080058 "-DTFM_PROFILE=%(profile)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080059 "%(extra_params)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080060 "-DCONFIG_TFM_SOURCE_PATH=%(codebase_root_dir)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080061 "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
62 "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
63 "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
Xinyu Zhang1f21cb22023-06-26 17:56:49 +080064 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080065 "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras ",
66
67 "nspe_config_template": "cmake -G Ninja " + \
Jianliang Shen7905e5d2023-11-07 10:40:47 +080068 "-S %(nspe_root_dir)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080069 "-B %(ci_build_root_dir)s/nspe " + \
70 "-DCONFIG_SPE_PATH=%(ci_build_root_dir)s/spe/api_ns " + \
Xinyu Zhang85588522023-10-31 13:58:04 +080071 "-DTFM_TOOLCHAIN_FILE=%(ci_build_root_dir)s/spe/api_ns/cmake/%(ns_compiler)s " + \
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080072 "%(extra_params)s " + \
73 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor ",
74
75 # CMake build commands will be executed for every build.
76 "spe_cmake_build": "cmake --build %(ci_build_root_dir)s/spe -- install",
77 "nspe_cmake_build": "cmake --build %(ci_build_root_dir)s/nspe --",
Karl Zhangaff558a2020-05-15 14:28:23 +010078
Xinyu Zhang433771e2022-04-01 16:49:17 +080079 "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
80
Minos Galanakisea421232019-06-20 17:11:28 +010081 # A small subset of string substitution params is allowed in commands.
82 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
83 # _tbm_target_platform_ with the paths set when building
84
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080085 "artifact_capture_rex": (r'%(ci_build_root_dir)s/nspe'
Minos Galanakisea421232019-06-20 17:11:28 +010086 r'/(\w+\.(?:axf|bin|hex))$'),
87
Xinyu Zhang46b37182023-06-30 15:36:44 +080088 # Keys will append extra commands when matching target_platform
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080089 "post_build": {"arm/corstone1000": ("dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_1.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=0;"
90 "dd conv=notrunc bs=1 if=%(ci_build_root_dir)s/spe/bin/bl1_provisioning_bundle.bin of=%(ci_build_root_dir)s/spe/bin/bl1.bin seek=40960;"
Xinyu Zhang09acfbf2023-10-30 18:30:48 +080091 "%(codebase_root_dir)s/platform/ext/target/arm/corstone1000/create-flash-image.sh %(ci_build_root_dir)s/spe/bin/ cs1000.bin;"),
Matthew Dalzell59ea18e2024-06-06 17:00:52 +010092 "arm/musca_b1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +010093 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +080094 "%(ci_build_root_dir)s/spe/bin/"
95 "bl2.bin "
96 "-Binary -offset 0xA000000 "
97 "-fill 0xFF 0xA000000 0xA020000 "
98 "%(ci_build_root_dir)s/nspe/"
99 "tfm_s_ns_signed.bin "
100 "-Binary -offset 0xA020000 "
101 "-fill 0xFF 0xA020000 0xA200000 "
102 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100103 "spe/bin/tfm.hex -Intel;"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100104 "fi;"),
Matthew Dalzell59ea18e2024-06-06 17:00:52 +0100105 "arm/musca_s1": ("if [ -d \"%(ci_build_root_dir)s/nspe\" ]; then "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100106 "srec_cat "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800107 "%(ci_build_root_dir)s/spe/bin/"
108 "bl2.bin "
109 "-Binary -offset 0xA000000 "
110 "-fill 0xFF 0xA000000 0xA020000 "
111 "%(ci_build_root_dir)s/nspe/"
112 "tfm_s_ns_signed.bin "
113 "-Binary -offset 0xA020000 "
114 "-fill 0xFF 0xA020000 0xA200000 "
115 "-o %(ci_build_root_dir)s/"
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100116 "spe/bin/tfm.hex -Intel; "
Matthew Dalzell4fd9e502024-04-19 11:04:26 +0100117 "fi;"),
Jamie Fox9283cbc2024-04-22 13:40:01 +0100118 "arm/rse/tc": ("srec_cat "
119 "%(ci_build_root_dir)s/spe/bin/bl1_1.bin -Binary -offset 0x0 "
120 "%(ci_build_root_dir)s/spe/bin/rom_dma_ics.bin -Binary -offset 0x1F000 "
121 "-o %(ci_build_root_dir)s/spe/bin/rom.bin -Binary;"
122 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fiptool https://downloads.trustedfirmware.org/tf-m/rse/tc/fiptool;"
123 "chmod 755 fiptool;"
124 "curl --fail --no-progress-meter --connect-timeout 10 --retry 6 -LS -o fip.bin https://downloads.trustedfirmware.org/tf-m/rse/tc/fip.bin;"
125 "./fiptool update "
126 "--align 8192 --rss-bl2 %(ci_build_root_dir)s/spe/bin/bl2_signed.bin "
127 "--align 8192 --rss-s %(ci_build_root_dir)s/spe/bin/tfm_s_encrypted.bin "
128 "--align 8192 --rss-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_encrypted.bin "
129 "--align 8192 --rss-sic-tables-s %(ci_build_root_dir)s/spe/bin/tfm_s_sic_tables_signed.bin "
130 "--align 8192 --rss-sic-tables-ns %(ci_build_root_dir)s/nspe/bin/tfm_ns_sic_tables_signed.bin "
131 "--out %(ci_build_root_dir)s/spe/bin/host_flash.bin "
132 "fip.bin"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800133 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800134 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
135 "pushd %(ci_build_root_dir)s/spe/api_ns;"
136 "mkdir -p image_signing/scripts ;"
137 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
138 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
139 "bin/bl2.bin "
140 "bin/tfm_s_signed.bin "
141 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800142 "popd"),
143 "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800144 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
145 "pushd %(ci_build_root_dir)s/spe/api_ns;"
146 "mkdir -p image_signing/scripts ;"
147 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
148 "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
149 "bin/bl2.bin "
150 "bin/tfm_s_signed.bin "
151 "image_signing/scripts/tfm_ns_signed.bin ;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800152 "popd"),
Anton Komlev4164ab62024-02-23 10:59:56 +0100153 "stm/stm32h573i_dk": ("echo 'STM32H573I-DK board post process';"
154 "%(ci_build_root_dir)s/spe/api_ns/postbuild.sh;"
155 "pushd %(ci_build_root_dir)s/spe/api_ns;"
156 "mkdir -p image_signing/scripts ;"
157 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns_signed.bin image_signing/scripts ;"
158 "tar jcf ./bin/stm32h573i_dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh "
159 "bin/bl2.bin "
160 "bin/tfm_s_signed.bin "
161 "image_signing/scripts/tfm_ns_signed.bin ;"
162 "popd"),
Matthew Dalzell0bdc0b22024-04-17 18:13:31 +0100163 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 bo.ard post process\n';"
164 "mkdir -p %(codebase_root_dir)s/build/bin ;"
165 # Workaround for flash_JLink.py
166 "cp %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(codebase_root_dir)s/build/bin ;"
167 "cp %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex %(codebase_root_dir)s/build/bin ;"
168 "cd %(codebase_root_dir)s/build/bin; "
169 "rm -f flash.jlink; "
170 "if [ -f \"%(ci_build_root_dir)s/spe/bin/bl2.hex\" ]; then "
171 "echo r >> flash.jlink; "
172 "echo erase >> flash.jlink; "
173 "echo loadfile bl2.hex >> flash.jlink; "
174 "echo loadfile tfm_s_ns_signed.bin -0x8000 >> flash.jlink; "
175 "echo r >> flash.jlink; "
176 "echo go >> flash.jlink; "
177 "echo exit >> flash.jlink; "
178 "else "
179 "echo r >> flash.jlink; "
180 "echo erase >> flash.jlink; "
181 "echo loadfile tfm_s.hex >> flash.jlink; "
182 "echo loadfile tfm_ns.hex >> flash.jlink; "
183 "echo r >> flash.jlink; "
184 "echo go >> flash.jlink; "
185 "echo exit >> flash.jlink; "
186 "fi;"
187 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
188 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
189 "mv lpcxpresso55s69-tfm.tar.bz2 %(ci_build_root_dir)s/nspe/bin ;"
190 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"),
Xinyu Zhang46b37182023-06-30 15:36:44 +0800191 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800192 "pushd %(codebase_root_dir)s/;"
Arthur She87602dc2022-02-06 14:42:18 -0800193 "sudo /usr/local/bin/cysecuretools "
194 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
195 "--target cy8ckit-064s0s2-4343w "
196 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800197 "--hex %(ci_build_root_dir)s/spe/bin/tfm_s.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800198 "--image-type BOOT --image-id 1;"
199 "sudo /usr/local/bin/cysecuretools "
200 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
201 "--target cy8ckit-064s0s2-4343w "
202 "sign-image "
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800203 "--hex %(ci_build_root_dir)s/nspe/bin/tfm_ns.hex "
Arthur She87602dc2022-02-06 14:42:18 -0800204 "--image-type BOOT --image-id 16;"
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800205 "mv %(ci_build_root_dir)s/spe/bin/tfm_s.hex %(ci_build_root_dir)s/spe/bin/tfm_s_signed.hex;"
206 "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 +0800207 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100208 },
209
210 # (Optional) If set will fail if those artefacts are missing post build
211 "required_artefacts": {"all": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800212 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800213 "tfm_s.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800214 "%(ci_build_root_dir)s/nspe/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800215 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200216 "arm/musca_b1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800217 "%(ci_build_root_dir)s/tfm.hex",
218 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800219 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800220 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhangb708f572020-09-15 11:43:46 +0800221 "tfm_sign.bin"],
Summer Qin3c2b5722021-05-26 10:43:45 +0800222 "arm/musca_s1": [
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800223 "%(ci_build_root_dir)s/tfm.hex",
224 "%(ci_build_root_dir)s/spe/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800225 "bl2.bin",
Xinyu Zhanga88a2eb2023-08-15 17:43:51 +0800226 "%(ci_build_root_dir)s/spe/bin/"
Jamie Fox9283cbc2024-04-22 13:40:01 +0100227 "tfm_sign.bin"],
228 "arm/rse/tc": [
229 "%(ci_build_root_dir)s/spe/bin/rom.bin",
230 "%(ci_build_root_dir)s/spe/bin/encrypted_cm_provisioning_bundle_0.bin",
231 "%(ci_build_root_dir)s/spe/bin/encrypted_dm_provisioning_bundle_0.bin",
232 "%(ci_build_root_dir)s/spe/bin/host_flash.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100233 }
234}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100235
Xinyu Zhangb708f572020-09-15 11:43:46 +0800236# List of all build configs that are impossible under all circumstances
237_common_tfm_invalid_configs = [
Xinyu Zhang459a1982021-07-21 22:34:49 +0800238 # 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 +0300239 ("arm/musca_b1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
240 ("arm/musca_s1", "ARMCLANG_6_21", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800241 # Load range overlap on Musca for IPC Debug type: T895
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300242 ("arm/musca_b1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
243 ("arm/musca_s1", "ARMCLANG_6_21", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300244 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800245 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800246 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800247 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
248 ("arm/musca_s1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800249 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800250 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
251 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
252 ("arm/musca_s1", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800253 ]
254
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100255# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800256# Config group for per-patch job
257config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800258 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800259 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300260 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800261 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800262 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800263 "test_psa_api": ["OFF"],
264 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800265 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800266 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800267 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800268 },
269 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800270 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800271 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300272 ("arm/mps2/an519", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800273 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
274 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800275 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800276 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
277 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800278 ("arm/mps2/an519", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800279 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
280 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800281 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800282 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
283 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300284 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800285 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
286 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300287 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800288 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800289 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300290 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen6984bef2023-07-25 10:36:56 +0800291 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800292 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300293 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800294 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
295 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300296 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800297 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
298 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300299 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800300 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
301 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800302 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800303 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Summer Qin379abb62022-10-08 16:41:54 +0800304 # AN521_GCC_2_Debug_BL2_MEDIUM
305 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800306 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
307 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800308 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800309 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
310 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800311 ("arm/mps2/an521", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800312 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
313 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800314 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800315 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800316 # AN521_GCC_1_FF_Release_BL2
317 ("arm/mps2/an521", "GCC_10_3", "1",
318 "OFF", "IPC", "Release", True, "", ""),
319 # AN521_ARMCLANG_2_STORAGE_Debug_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300320 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Xinyu Zhang280f5ab2023-10-31 16:17:21 +0800321 "OFF", "STORAGE", "Debug", True, "", ""),
Bence Balogh1aa8d582023-08-29 13:10:02 +0200322 # CS300_FVP_GNUARM_2_RegBL2_RegS_RegNS_Debug_BL2
323 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800324 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Bence Balogh1aa8d582023-08-29 13:10:02 +0200325 # CS300_FVP_GNUARM_2_RegBL2_RegS_RegNS_Release_BL2
326 ("arm/mps3/corstone300/fvp", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800327 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800328 # corstone1000_GCC_2_RegS_Debug_BL2_NSOFF_CS1K_TEST_FVP
329 ("arm/corstone1000", "GCC_10_3", "2",
330 "RegS", "OFF", "Debug", True, "", "NSOFF, CS1K_TEST, FVP"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800331 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800332 ("arm/musca_b1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800333 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
334 # MUSCA_S1_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300335 ("arm/musca_s1", "ARMCLANG_6_21", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800336 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
337 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800338 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800339 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
340 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800341 ("arm/musca_s1", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800342 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
343 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800344 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800345 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
346 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Summer Qin379abb62022-10-08 16:41:54 +0800347 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800348 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Raef Coles24143e02024-06-06 10:46:55 +0100349 # RSE_TC_GCC_2_RegS_RegNS_Debug_BL2
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000350 ("arm/rse/tc", "GCC_10_3", "2",
Raef Coles24143e02024-06-06 10:46:55 +0100351 "RegS, RegNS", "OFF", "Debug", True, "", ""),
Jamie Fox9283cbc2024-04-22 13:40:01 +0100352 # RSE_RDFremont_GCC_2_Release_BL2_NSOFF_CFG0
Joel Goddard2dd81a12024-01-23 15:10:08 +0000353 ("arm/rse/rdfremont", "GCC_10_3", "2",
Jamie Fox9283cbc2024-04-22 13:40:01 +0100354 "OFF", "OFF", "Release", True, "", "NSOFF, CFG0"),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800355 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300356 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800357 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
358 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Summer Qin379abb62022-10-08 16:41:54 +0800359 ("stm/stm32l562e_dk", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800360 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
361 # stm32l562e_dk_GCC_3_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800362 ("stm/stm32l562e_dk", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800363 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700364 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
365 ("stm/b_u585i_iot02a", "GCC_10_3", "1",
366 "RegS, RegNS", "OFF", "Release", True, "", ""),
367 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300368 ("stm/b_u585i_iot02a", "ARMCLANG_6_21", "2",
Arthur She4f08c152023-05-15 15:29:14 -0700369 "RegS, RegNS", "OFF", "Release", True, "", ""),
Anton Komlev4164ab62024-02-23 10:59:56 +0100370 # stm32h573i_dk_GCC_1_RegS_RegNS_Release_BL2
371 ("stm/stm32h573i_dk", "GCC_10_3", "1",
372 "RegS, RegNS", "OFF", "Release", True, "", ""),
373 # stm32h573i_dk_ARMCLANG_2_RegS_RegNS_Release_BL2
374 ("stm/stm32h573i_dk", "ARMCLANG_6_21", "2",
375 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800376 # psoc64_GCC_2_RegS_RegNS_Release
Summer Qin379abb62022-10-08 16:41:54 +0800377 ("cypress/psoc64", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800378 "RegS, RegNS", "OFF", "Release", False, "", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800379 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800380 "invalid": _common_tfm_invalid_configs + []
381 }
382
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800383# Config group for nightly job
384config_nightly_test = {"seed_params": {
385 "tfm_platform": ["arm/mps2/an519",
386 "arm/mps2/an521",
387 "arm/mps3/an524",
388 "arm/musca_s1",
Mark Horvathef57baa2022-09-12 13:36:36 +0200389 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300390 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800391 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800392 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800393 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800394 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800395 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800396 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800397 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100398 },
399 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800400 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100401 }
402
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800403# Config group for release job
404config_release_test = {"seed_params": {
405 "tfm_platform": ["arm/mps2/an519",
406 "arm/mps2/an521",
407 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200408 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800409 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300410 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800411 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800412 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800413 "test_psa_api": ["OFF"],
414 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800415 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800416 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100417 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800418 },
419 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800420 "valid": [
421 # sanity test for GCC v11.2
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800422 # AN521_GCC_3_RegBL2_RegS_RegNS_Relwithdebinfo_BL2
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800423 ("arm/mps2/an521", "GCC_11_2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800424 "3", "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800425 True, "", ""),
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800426 ],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800427 "invalid": _common_tfm_invalid_configs + []
428 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800429
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800430# Config groups for TF-M features
431config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800432 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300433 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Huda27ae72022-03-28 15:32:19 +0800434 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800435 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800436 "test_psa_api": ["OFF"],
437 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800438 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800439 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800440 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800441 },
442 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800443 "invalid": _common_tfm_invalid_configs + [
Summer Qin379abb62022-10-08 16:41:54 +0800444 ("arm/mps2/an519", "GCC_10_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800445 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800446 ]
447 }
448
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800449config_profile_m = {"seed_params": {
450 "tfm_platform": ["arm/mps2/an519",
451 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200452 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300453 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800454 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800455 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800456 "test_psa_api": ["OFF"],
457 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800458 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800459 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800460 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800461 },
462 "common_params": _common_tfm_builder_cfg,
463 "invalid": _common_tfm_invalid_configs + []
464 }
465
David Hu3d333762022-10-27 18:12:33 +0800466config_profile_m_arotless = {"seed_params": {
467 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300468 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
David Hu3d333762022-10-27 18:12:33 +0800469 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800470 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800471 "test_psa_api": ["OFF"],
472 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
473 "with_bl2": [True],
474 "profile": ["profile_medium_arotless"],
475 "extra_params": ["", "PSOFF"]
476 },
477 "common_params": _common_tfm_builder_cfg,
478 "invalid": _common_tfm_invalid_configs + []
479 }
480
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800481config_profile_l = {"seed_params": {
482 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300483 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800484 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800485 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800486 "test_psa_api": ["OFF"],
487 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800488 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800489 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800490 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800491 },
492 "common_params": _common_tfm_builder_cfg,
493 "invalid": _common_tfm_invalid_configs + []
494 }
495
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800496config_ipc_backend = {"seed_params": {
497 "tfm_platform": ["arm/mps2/an519",
498 "arm/mps2/an521",
499 "arm/musca_s1",
500 "arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300501 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800502 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800503 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800504 "test_psa_api": ["OFF"],
505 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
506 "with_bl2": [True],
507 "profile": [""],
508 "extra_params": ["IPC"]
509 },
510 "common_params": _common_tfm_builder_cfg,
511 "invalid": _common_tfm_invalid_configs + []
512 }
513
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800514config_cc_driver_psa = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200515 "tfm_platform": ["arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800516 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800517 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800518 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800519 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800520 "test_psa_api": ["OFF"],
521 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800522 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800523 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800524 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800525 },
526 "common_params": _common_tfm_builder_cfg,
527 "invalid": _common_tfm_invalid_configs + []
528 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100529
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800530config_fp = {"seed_params": {
Xinyu Zhange91567c2023-09-13 14:10:11 +0800531 "tfm_platform": ["arm/mps2/an521",
532 "arm/mps3/corstone300/an552",
533 "arm/mps3/corstone300/fvp"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800534 "compiler": ["GCC_10_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800535 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800536 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800537 "test_psa_api": ["OFF"],
538 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800539 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800540 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200541 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800542 },
543 "common_params": _common_tfm_builder_cfg,
544 "invalid": _common_tfm_invalid_configs + []
545 }
Karl Zhangeffed972020-06-30 15:48:01 +0800546
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800547config_psa_api = {"seed_params": {
548 "tfm_platform": ["arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200549 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800550 "arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300551 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800552 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800553 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800554 "test_psa_api": ["IPC",
555 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800556 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800557 "STORAGE"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800558 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800559 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800560 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800561 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800562 },
563 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300564 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800565 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800566
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800567config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800568 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300569 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800570 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800571 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800572 "test_psa_api": ["OFF"],
573 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800574 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800575 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800576 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800577 },
578 "common_params": _common_tfm_builder_cfg,
579 "invalid": _common_tfm_invalid_configs + []
580 }
581
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800582config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800583 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300584 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800585 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800586 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800587 "test_psa_api": ["OFF"],
588 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800589 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800590 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800591 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800592 },
593 "common_params": _common_tfm_builder_cfg,
594 "invalid": _common_tfm_invalid_configs + []
595 }
596
Bence Balogh79fda442022-10-14 18:01:37 +0200597# Config groups for TF-M examples
598config_example_vad = {"seed_params": {
Bence Balogh1aa8d582023-08-29 13:10:02 +0200599 "tfm_platform": ["arm/mps3/corstone300/an552"],
Bence Balogh79fda442022-10-14 18:01:37 +0200600 "compiler": ["GCC_10_3"],
601 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800602 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200603 "test_psa_api": ["OFF"],
604 "cmake_build_type": ["Release"],
605 "with_bl2": [True],
606 "profile": [""],
607 "extra_params": ["EXAMPLE_VAD"]
608 },
609 "common_params": _common_tfm_builder_cfg,
610 "invalid": _common_tfm_invalid_configs + []
611 }
612
Bence Balogh852f8bd2023-08-07 14:46:54 +0200613config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200614 "tfm_platform": ["arm/mps3/corstone310/fvp"],
615 "compiler": ["GCC_10_3"],
616 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800617 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200618 "test_psa_api": ["OFF"],
619 "cmake_build_type": ["Release"],
620 "with_bl2": [True],
621 "profile": [""],
Bence Balogh852f8bd2023-08-07 14:46:54 +0200622 "extra_params": ["EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200623 },
624 "common_params": _common_tfm_builder_cfg,
625 "invalid": _common_tfm_invalid_configs + []
626 }
627
628config_example_dma350_s = {"seed_params": {
629 "tfm_platform": ["arm/mps3/corstone310/fvp"],
630 "compiler": ["GCC_10_3"],
631 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800632 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200633 "test_psa_api": ["OFF"],
634 "cmake_build_type": ["Release"],
635 "with_bl2": [True],
636 "profile": [""],
637 "extra_params": ["EXAMPLE_DMA350_S"]
638 },
639 "common_params": _common_tfm_builder_cfg,
640 "invalid": _common_tfm_invalid_configs + []
641 }
642
Bence Baloghd23cbda2023-08-07 15:30:58 +0200643config_example_dma350_ns = {"seed_params": {
644 "tfm_platform": ["arm/mps3/corstone310/fvp"],
645 "compiler": ["GCC_10_3"],
646 "isolation_level": ["1"],
647 "test_regression": ["OFF"],
648 "test_psa_api": ["OFF"],
649 "cmake_build_type": ["Release"],
650 "with_bl2": [True],
651 "profile": [""],
652 "extra_params": ["EXAMPLE_DMA350_NS"]
653 },
654 "common_params": _common_tfm_builder_cfg,
655 "invalid": _common_tfm_invalid_configs + []
656 }
657
Bence Balogh79fda442022-10-14 18:01:37 +0200658config_example_dma350_trigger = {"seed_params": {
659 "tfm_platform": ["arm/mps3/corstone310/fvp"],
660 "compiler": ["GCC_10_3"],
661 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800662 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200663 "test_psa_api": ["OFF"],
664 "cmake_build_type": ["Release"],
665 "with_bl2": [True],
666 "profile": [""],
667 "extra_params": ["EXAMPLE_DMA350_TRIGGER"]
668 },
669 "common_params": _common_tfm_builder_cfg,
670 "invalid": _common_tfm_invalid_configs + []
671 }
672
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300673config_misra = {"seed_params": {
674 "tfm_platform": ["arm/musca_b1"],
675 "compiler": ["GCC_10_3"],
676 "isolation_level": ["1"],
677 "test_regression": ["OFF"],
678 "test_psa_api": ["OFF"],
679 "cmake_build_type": ["Debug"],
680 "with_bl2": [True],
Xinyu Zhange17926f2023-08-14 11:00:43 +0800681 "profile": ["profile_small", "profile_medium_arotless"],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300682 "extra_params": ["PSOFF"]
683 },
684 "common_params": _common_tfm_builder_cfg,
Xinyu Zhange17926f2023-08-14 11:00:43 +0800685 "valid": [
686 # MUSCA_B1_GCC_2_Debug_BL2_MEDIUM_PSOFF
687 ("arm/musca_b1", "GCC_10_3", "2", "OFF",
688 "OFF", "Debug", True, "profile_medium", "PSOFF"),
689 # MUSCA_B1_GCC_3_Debug_BL2_LARGE_PSOFF
690 ("arm/musca_b1", "GCC_10_3", "3", "OFF",
691 "OFF", "Debug", True, "profile_large", "PSOFF"),
692 ],
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300693 "invalid": _common_tfm_invalid_configs + []
694 }
695
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300696config_misra_debug = {"seed_params": {
697 "tfm_platform": ["arm/musca_b1"],
698 "compiler": ["GCC_10_3"],
699 "isolation_level": ["1"],
700 "test_regression": ["OFF"],
701 "test_psa_api": ["OFF"],
702 "cmake_build_type": ["Debug"],
703 "with_bl2": [True],
704 "profile": ["profile_small"],
705 "extra_params": ["PSOFF"]
706 },
707 "common_params": _common_tfm_builder_cfg,
708 "invalid": _common_tfm_invalid_configs + []
709 }
710
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800711# Config groups for code coverage
712config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800713config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800714config_cov_profile_s["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800715
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800716config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800717config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800718config_cov_profile_m["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800719
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800720config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800721config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800722config_cov_profile_l["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800723
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800724config_cov_ipc_backend = deepcopy(config_ipc_backend)
725config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
726config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_10_3"]
727
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800728config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800729config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800730config_cov_nsce["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800731
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800732config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800733config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800734config_cov_mmio["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800735
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800736config_cov_fp = deepcopy(config_fp)
737config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang778424e2023-02-27 11:39:57 +0800738config_cov_fp["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800739
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800740# Config groups for platforms
741config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800742 "tfm_platform": ["arm/mps2/an519"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300743 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800744 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800745 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800746 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800747 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800748 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800749 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800750 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800751 },
752 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800753 "invalid": _common_tfm_invalid_configs + []
754 }
755
756config_an521 = {"seed_params": {
757 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300758 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800759 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800760 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800761 "test_psa_api": ["OFF"],
762 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800763 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800764 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800765 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800766 },
767 "common_params": _common_tfm_builder_cfg,
768 "invalid": _common_tfm_invalid_configs + []
769 }
770
771config_an524 = {"seed_params": {
772 "tfm_platform": ["arm/mps3/an524"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300773 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800774 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800775 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800776 "test_psa_api": ["OFF"],
777 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800778 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800779 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800780 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800781 },
782 "common_params": _common_tfm_builder_cfg,
783 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800784 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000785
Bence Balogh1aa8d582023-08-29 13:10:02 +0200786config_cs300_an547 = {"seed_params": {
787 "tfm_platform": ["arm/mps3/corstone300/an547"],
788 "compiler": ["GCC_10_3"],
789 "isolation_level": ["1"],
790 "test_regression": ["OFF"],
791 "test_psa_api": ["OFF"],
792 "cmake_build_type": ["Debug"],
793 "with_bl2": [True],
794 "profile": [""],
795 "extra_params": [""]
796 },
797 "common_params": _common_tfm_builder_cfg,
798 "invalid": _common_tfm_invalid_configs + []
799 }
Xinyu Zhang38b76742021-11-11 13:57:56 +0800800
Bence Balogh1aa8d582023-08-29 13:10:02 +0200801config_cs300_an552 = {"seed_params": {
802 "tfm_platform": ["arm/mps3/corstone300/an552"],
803 "compiler": ["GCC_10_3"],
804 "isolation_level": ["1", "2"],
805 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
806 "test_psa_api": ["OFF"],
807 "cmake_build_type": ["Debug", "Release"],
808 "with_bl2": [True],
809 "profile": [""],
810 "extra_params": [""]
811 },
812 "common_params": _common_tfm_builder_cfg,
813 "invalid": _common_tfm_invalid_configs + []
814 }
815
816config_cs300_fvp = {"seed_params": {
817 "tfm_platform": ["arm/mps3/corstone300/fvp"],
818 "compiler": ["GCC_10_3"],
819 "isolation_level": ["1", "2"],
820 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
821 "test_psa_api": ["OFF"],
822 "cmake_build_type": ["Debug", "Release"],
823 "with_bl2": [True],
824 "profile": [""],
825 "extra_params": [""]
826 },
827 "common_params": _common_tfm_builder_cfg,
828 "invalid": _common_tfm_invalid_configs + []
829 }
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800830
831config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200832 "tfm_platform": ["arm/musca_b1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300833 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800834 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800835 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800836 "test_psa_api": ["OFF"],
837 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800838 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800839 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800840 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800841 },
842 "common_params": _common_tfm_builder_cfg,
843 "invalid": _common_tfm_invalid_configs + []
844 }
845
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800846config_musca_s1 = {"seed_params": {
847 "tfm_platform": ["arm/musca_s1"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300848 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800849 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800850 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800851 "test_psa_api": ["OFF"],
852 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800853 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800854 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800855 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800856 },
857 "common_params": _common_tfm_builder_cfg,
858 "invalid": _common_tfm_invalid_configs + []
859 }
860
Bence Balogh8731a092022-05-24 17:24:54 +0200861config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +0100862 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Bence Balogh176b78f2022-02-22 13:49:34 +0100863 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800864 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800865 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800866 "test_psa_api": ["OFF"],
867 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800868 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800869 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800870 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800871 },
872 "common_params": _common_tfm_builder_cfg,
873 "invalid": _common_tfm_invalid_configs + []
874 }
875
Gergely Korcsákba0c5212024-04-03 18:21:49 +0200876config_corstone315 = {"seed_params": {
877 "tfm_platform": ["arm/mps4/corstone315"],
878 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
879 "isolation_level": ["1"],
880 "test_regression": ["OFF"],
881 "test_psa_api": ["OFF"],
882 "cmake_build_type": ["Debug", "Release"],
883 "with_bl2": [True],
884 "profile": [""],
885 "extra_params": [""]
886 },
887 "common_params": _common_tfm_builder_cfg,
888 "invalid": _common_tfm_invalid_configs + []
889 }
890
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000891config_rse = {"seed_params": {
892 "tfm_platform": ["arm/rse/tc"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100893 "compiler": ["GCC_10_3"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100894 "isolation_level": ["1", "2"],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100895 "test_regression": ["OFF", "RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100896 "test_psa_api": ["OFF"],
897 "cmake_build_type": ["Debug", "Release"],
898 "with_bl2": [True],
899 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100900 "extra_params": [""]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100901 },
902 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +0000903 "invalid": _common_tfm_invalid_configs + [
Jamie Fox5ae6fa42024-02-19 15:11:00 +0000904 # BL2 is too large for RSE in Debug builds with tests
905 ("arm/rse/tc", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +0000906 "Debug", True, "*", "*"),
907 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100908 }
909
Joel Goddard2dd81a12024-01-23 15:10:08 +0000910config_rse_rdfremont = {"seed_params": {
911 "tfm_platform": ["arm/rse/rdfremont"],
912 "compiler": ["GCC_10_3"],
913 "isolation_level": ["1", "2"],
914 "test_regression": ["OFF"],
915 "test_psa_api": ["OFF"],
916 "cmake_build_type": ["Debug", "Release"],
917 "with_bl2": [True],
918 "profile": [""],
Jamie Fox9283cbc2024-04-22 13:40:01 +0100919 "extra_params": ["NSOFF, CFG0"]
Joel Goddard2dd81a12024-01-23 15:10:08 +0000920 },
921 "common_params": _common_tfm_builder_cfg,
922 "invalid": _common_tfm_invalid_configs + []
923 }
924
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800925config_psoc64 = {"seed_params": {
926 "tfm_platform": ["cypress/psoc64"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300927 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800928 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800929 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800930 "test_psa_api": ["OFF"],
931 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800932 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800933 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800934 "extra_params": [""]
935 },
936 "common_params": _common_tfm_builder_cfg,
937 "invalid": _common_tfm_invalid_configs + []
938 }
939
940config_corstone1000 = {"seed_params": {
941 "tfm_platform": ["arm/corstone1000"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800942 "compiler": ["GCC_10_3"],
Xinyu Zhang5c4f2182023-10-31 16:26:45 +0800943 "isolation_level": ["1", "2"],
Emekcan Arasf8b39802023-04-24 10:15:22 +0100944 "test_regression": ["RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800945 "test_psa_api": ["OFF"],
946 "cmake_build_type": ["Debug"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800947 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800948 "profile": [""],
Xinyu Zhang09acfbf2023-10-30 18:30:48 +0800949 "extra_params": ["NSOFF, CS1K_TEST, FVP", "NSOFF, CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800950 },
951 "common_params": _common_tfm_builder_cfg,
952 "invalid": _common_tfm_invalid_configs + []
953 }
954
955config_stm32l562e_dk = {"seed_params": {
956 "tfm_platform": ["stm/stm32l562e_dk"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300957 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800958 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800959 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800960 "test_psa_api": ["OFF"],
961 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800962 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800963 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800964 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
965 },
966 "common_params": _common_tfm_builder_cfg,
967 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800968 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300969 ("stm/stm32l562e_dk", "ARMCLANG_6_21", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800970 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800971 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800972 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800973 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800974 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800975 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800976 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800977 ]
978 }
979
980config_b_u585i_iot02a = {"seed_params": {
981 "tfm_platform": ["stm/b_u585i_iot02a"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +0300982 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
Arthur She026ebb62023-02-08 18:47:39 -0800983 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -0700984 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800985 "test_psa_api": ["OFF"],
986 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800987 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800988 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -0800989 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800990 },
991 "common_params": _common_tfm_builder_cfg,
992 "invalid": _common_tfm_invalid_configs + []
993 }
994
Anton Komlev4164ab62024-02-23 10:59:56 +0100995config_stm32h573i_dk = {"seed_params": {
996 "tfm_platform": ["stm/stm32h573i_dk"],
997 "compiler": ["GCC_10_3", "ARMCLANG_6_21"],
998 "isolation_level": ["1", "2"],
999 "test_regression": ["OFF", "RegS, RegNS"],
1000 "test_psa_api": ["OFF"],
1001 "cmake_build_type": ["Release"],
1002 "with_bl2": [True],
1003 "profile": [""],
1004 "extra_params": [""]
1005 },
1006 "common_params": _common_tfm_builder_cfg,
1007 "invalid": _common_tfm_invalid_configs + []
1008 }
1009
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001010config_nucleo_l552ze_q = {"seed_params": {
1011 "tfm_platform": ["stm/nucleo_l552ze_q"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001012 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001013 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001014 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001015 "test_psa_api": ["OFF"],
1016 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001017 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001018 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001019 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001020 },
1021 "common_params": _common_tfm_builder_cfg,
1022 "invalid": _common_tfm_invalid_configs + []
1023 }
1024
1025config_lpcxpresso55s69 = {"seed_params": {
1026 "tfm_platform": ["nxp/lpcxpresso55s69"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001027 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001028 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001029 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001030 "test_psa_api": ["OFF"],
1031 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001032 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001033 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001034 "extra_params": [""]
1035 },
1036 "common_params": _common_tfm_builder_cfg,
1037 "invalid": _common_tfm_invalid_configs + []
1038 }
1039
Xinyu Zhang38b76742021-11-11 13:57:56 +08001040config_bl5340 = {"seed_params": {
1041 "tfm_platform": ["lairdconnectivity/bl5340_dvk_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001042 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001043 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001044 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001045 "test_psa_api": ["OFF"],
1046 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001047 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001048 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001049 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001050 },
1051 "common_params": _common_tfm_builder_cfg,
1052 "invalid": _common_tfm_invalid_configs + []
1053 }
1054
1055config_nrf5340dk = {"seed_params": {
1056 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001057 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001058 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001059 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001060 "test_psa_api": ["OFF"],
1061 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001062 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001063 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001064 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001065 },
1066 "common_params": _common_tfm_builder_cfg,
1067 "invalid": _common_tfm_invalid_configs + []
1068 }
1069
1070config_nrf9160dk = {"seed_params": {
1071 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001072 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001073 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001074 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001075 "test_psa_api": ["OFF"],
1076 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001077 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001078 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001079 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001080 },
1081 "common_params": _common_tfm_builder_cfg,
1082 "invalid": _common_tfm_invalid_configs + []
1083 }
1084
1085config_m2351 = {"seed_params": {
1086 "tfm_platform": ["nuvoton/m2351"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001087 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001088 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001089 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001090 "test_psa_api": ["OFF"],
1091 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001092 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001093 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001094 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001095 },
1096 "common_params": _common_tfm_builder_cfg,
1097 "invalid": _common_tfm_invalid_configs + []
1098 }
1099
1100config_m2354 = {"seed_params": {
1101 "tfm_platform": ["nuvoton/m2354"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001102 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001103 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001104 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001105 "test_psa_api": ["OFF"],
1106 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001107 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001108 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +08001109 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001110 },
1111 "common_params": _common_tfm_builder_cfg,
1112 "invalid": _common_tfm_invalid_configs + []
1113 }
1114
Jianliang Shen48704152023-10-17 17:06:00 +08001115config_mem_footprint = {"seed_params": {
1116 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001117 "compiler": ["ARMCLANG_6_21"],
Jianliang Shen48704152023-10-17 17:06:00 +08001118 "isolation_level": ["1"],
1119 "test_regression": ["OFF"],
1120 "test_psa_api": ["OFF"],
1121 "cmake_build_type": ["Minsizerel"],
1122 "with_bl2": [True],
1123 "profile": [""],
1124 "extra_params": [""]
1125 },
1126 "common_params": _common_tfm_builder_cfg,
1127 "valid": [
1128 # AN521_ARMCLANG_1_Minsizerel_BL2_SMALL_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001129 ("arm/mps2/an521", "ARMCLANG_6_21", "1",
Jianliang Shen48704152023-10-17 17:06:00 +08001130 "OFF", "OFF", "Minsizerel", True, "profile_small", "PSOFF"),
1131 # AN521_ARMCLANG_2_Minsizerel_BL2_MEDIUM_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001132 ("arm/mps2/an521", "ARMCLANG_6_21", "2",
Jianliang Shen48704152023-10-17 17:06:00 +08001133 "OFF", "OFF", "Minsizerel", True, "profile_medium", "PSOFF"),
1134 # AN521_ARMCLANG_3_Minsizerel_BL2_LARGE_PSOFF
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001135 ("arm/mps2/an521", "ARMCLANG_6_21", "3",
Jianliang Shen48704152023-10-17 17:06:00 +08001136 "OFF", "OFF", "Minsizerel", True, "profile_large", "PSOFF"),
1137 ],
1138 "invalid": _common_tfm_invalid_configs + []
1139 }
1140
Jianliang Shen5492f752023-07-27 15:59:01 +08001141config_prof = {"seed_params": {
1142 "tfm_platform": ["arm/mps2/an521"],
1143 "compiler": ["GCC_10_3"],
1144 "isolation_level": ["1"],
1145 "test_regression": ["OFF"],
1146 "test_psa_api": ["OFF"],
1147 "cmake_build_type": ["Release"],
1148 "with_bl2": [True],
1149 "profile": [""],
1150 "extra_params": ["PROF"]
1151 },
1152 "common_params": _common_tfm_builder_cfg,
1153 "valid": [
1154 # AN521_GNUARM_1_Release_BL2_IPC_PROF
1155 ("arm/mps2/an521", "GCC_10_3", "1",
1156 "OFF", "OFF", "Release", True, "", "IPC, PROF"),
1157 # AN521_GNUARM_2_Release_BL2_PROF
1158 ("arm/mps2/an521", "GCC_10_3", "2",
1159 "OFF", "OFF", "Release", True, "", "PROF"),
1160 # AN521_GNUARM_3_Release_BL2_PROF
1161 ("arm/mps2/an521", "GCC_10_3", "3",
1162 "OFF", "OFF", "Release", True, "", "PROF"),
1163 ],
1164 "invalid": _common_tfm_invalid_configs + []
1165 }
1166
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001167# Config groups for debug
1168config_debug = {"seed_params": {
1169 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +08001170 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001171 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001172 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001173 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001174 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001175 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001176 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001177 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001178 },
1179 "common_params": _common_tfm_builder_cfg,
1180 "invalid": _common_tfm_invalid_configs + []
1181 }
1182
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001183config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +08001184config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001185
1186config_debug_PSA_API = {"seed_params": {
1187 "tfm_platform": ["arm/mps2/an521"],
Paul Sokolovsky253ed722023-11-07 11:08:46 +03001188 "compiler": ["ARMCLANG_6_21"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001189 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +08001190 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001191 "test_psa_api": ["CRYPTO",
1192 "INITIAL_ATTESTATION",
1193 "STORAGE",
1194 "IPC"],
1195 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001196 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +08001197 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +08001198 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +08001199 },
1200 "common_params": _common_tfm_builder_cfg,
1201 "invalid": _common_tfm_invalid_configs + []
1202 }
1203
Karl Zhangaff558a2020-05-15 14:28:23 +01001204_builtin_configs = {
Xinyu Zhang5c4f2182023-10-31 16:26:45 +08001205 # per-patch test group
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001206 "pp_test": config_pp_test,
Karl Zhang14573bc2020-06-08 09:23:21 +08001207
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001208 # nightly test groups
1209 "nightly_test": config_nightly_test,
1210 "nightly_profile_s": config_profile_s,
1211 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001212 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001213 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001214 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001215 "nightly_cc_driver_psa": config_cc_driver_psa,
1216 "nightly_fp":config_fp,
1217 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +08001218 "nightly_nsce": config_nsce,
1219 "nightly_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001220 "nightly_cs300_an547": config_cs300_an547,
1221 "nightly_cs300_an552": config_cs300_an552,
1222 "nightly_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001223 "nightly_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001224 "nightly_corstone315": config_corstone315,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001225 "nightly_corstone1000": config_corstone1000,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001226 "nightly_rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001227 "nightly_rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001228 "nightly_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001229 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001230 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001231 "nightly_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001232 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001233
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001234 # release test groups
1235 "release_test": config_release_test,
1236 "release_profile_s": config_profile_s,
1237 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001238 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001239 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001240 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001241 "release_cc_driver_psa": config_cc_driver_psa,
1242 "release_fp": config_fp,
1243 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001244 "release_nsce": config_nsce,
1245 "release_mmio": config_mmio,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001246 "release_cs300_an547": config_cs300_an547,
1247 "release_cs300_an552": config_cs300_an552,
1248 "release_cs300_fvp": config_cs300_fvp,
Bence Balogh8731a092022-05-24 17:24:54 +02001249 "release_corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001250 "release_corstone315": config_corstone315,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001251 "release_rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001252 "release_rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001253 "release_psoc64": config_psoc64,
Anton Komlev55c3c022024-03-05 16:24:17 +01001254 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001255 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001256 "release_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001257 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001258
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001259 # code coverage test groups
1260 "coverage_profile_s": config_cov_profile_s,
1261 "coverage_profile_m": config_cov_profile_m,
1262 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001263 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001264 "coverage_nsce": config_cov_nsce,
1265 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001266 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001267
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001268 # MISRA analysis
1269 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001270 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001271
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001272 # platform groups
1273 "an521": config_an521,
1274 "an519": config_an519,
1275 "an524": config_an524,
Bence Balogh1aa8d582023-08-29 13:10:02 +02001276 "cs300_an547": config_cs300_an547,
1277 "cs300_an552": config_cs300_an552,
1278 "cs300_fvp": config_cs300_fvp,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001279 "musca_b1": config_musca_b1,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001280 "musca_s1": config_musca_s1,
Bence Balogh8731a092022-05-24 17:24:54 +02001281 "corstone310": config_corstone310,
Gergely Korcsákba0c5212024-04-03 18:21:49 +02001282 "corstone315": config_corstone315,
Jamie Fox5ae6fa42024-02-19 15:11:00 +00001283 "rse": config_rse,
Joel Goddard2dd81a12024-01-23 15:10:08 +00001284 "rse_rdfremont": config_rse_rdfremont,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001285 "cypress_psoc64": config_psoc64,
Antonio de Angelis92ad2442023-08-07 15:00:32 +02001286 "corstone1000": config_corstone1000,
Anton Komlev55c3c022024-03-05 16:24:17 +01001287 "stm_stm32l562e_dk": config_stm32l562e_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001288 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
Anton Komlev4164ab62024-02-23 10:59:56 +01001289 "stm_stm32h573i_dk": config_stm32h573i_dk,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001290 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1291 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001292 "laird_bl5340": config_bl5340,
1293 "nordic_nrf5340dk": config_nrf5340dk,
1294 "nordic_nrf9160dk": config_nrf9160dk,
1295 "nuvoton_m2351": config_m2351,
1296 "nuvoton_m2354": config_m2354,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001297
Bence Balogh79fda442022-10-14 18:01:37 +02001298 # config groups for tf-m-extras examples
1299 "example_vad": config_example_vad,
1300 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001301 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001302 "example_dma350_s": config_example_dma350_s,
Bence Baloghd23cbda2023-08-07 15:30:58 +02001303 "example_dma350_ns": config_example_dma350_ns,
Bence Balogh79fda442022-10-14 18:01:37 +02001304
Jianliang Shen48704152023-10-17 17:06:00 +08001305 # config groups for tf-m performance monitor
1306 "mem_footprint": config_mem_footprint,
Jianliang Shen5492f752023-07-27 15:59:01 +08001307 "profiling": config_prof,
1308
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001309 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001310 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001311 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001312 "debug_PSA_API": config_debug_PSA_API,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001313 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001314
1315if __name__ == '__main__':
1316 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001317
Minos Galanakisea421232019-06-20 17:11:28 +01001318 # Default behavior is to export refference config when called
1319 _dir = os.getcwd()
1320 from utils import save_json
1321 for _cname, _cfg in _builtin_configs.items():
1322 _fname = os.path.join(_dir, _cname + ".json")
1323 print("Exporting config %s" % _fname)
1324 save_json(_fname, _cfg)