blob: 9240ba1e9197e3134168a51031e0ea637ed29605 [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/*
Jamie Fox9e2c2352023-01-13 15:11:23 +000011 * Copyright (c) 2018-2023, 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 Zhangf3e19482022-01-11 15:48:13 +080048 "config_template": "cmake -G Ninja " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080049 "-DTFM_PLATFORM=%(tfm_platform)s " + \
Xinyu Zhang433771e2022-04-01 16:49:17 +080050 "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(compiler)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080051 "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
Xinyu Zhangb18ae742023-04-25 14:33:27 +080052 "%(test_regression)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080053 "-DCMAKE_BUILD_TYPE=%(cmake_build_type)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080054 "-DTEST_PSA_API=%(test_psa_api)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080055 "-DBL2=%(with_bl2)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080056 "-DTFM_PROFILE=%(profile)s " + \
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +080057 "%(extra_params)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080058 "-DTFM_TEST_REPO_PATH=%(codebase_root_dir)s/../tf-m-tests " + \
59 "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
60 "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
61 "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
Xinyu Zhang1f21cb22023-06-26 17:56:49 +080062 "-DQCBOR_PATH=%(codebase_root_dir)s/../qcbor " + \
63 "-DTFM_EXTRAS_REPO_PATH=%(codebase_root_dir)s/../tf-m-extras " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080064 "%(codebase_root_dir)s",
Karl Zhangaff558a2020-05-15 14:28:23 +010065
Xinyu Zhang433771e2022-04-01 16:49:17 +080066 "set_compiler_path": "export PATH=$PATH:$%(compiler)s_PATH",
67
Minos Galanakisea421232019-06-20 17:11:28 +010068 # A small subset of string substitution params is allowed in commands.
69 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
70 # _tbm_target_platform_ with the paths set when building
71
Xinyu Zhangb708f572020-09-15 11:43:46 +080072 "artifact_capture_rex": (r'%(_tbm_build_dir_)s/bin'
Minos Galanakisea421232019-06-20 17:11:28 +010073 r'/(\w+\.(?:axf|bin|hex))$'),
74
Xinyu Zhang46b37182023-06-30 15:36:44 +080075 # CMake build commands will be executed for every build.
76 "cmake_build": "cmake --build ./ -- install",
77 # Keys will append extra commands when matching target_platform
78 "post_build": {"arm/musca_b1": ("srec_cat "
Mark Horvathef57baa2022-09-12 13:36:36 +020079 "%(_tbm_build_dir_)s/bin/"
80 "bl2.bin "
81 "-Binary -offset 0xA000000 "
82 "-fill 0xFF 0xA000000 0xA020000 "
83 "%(_tbm_build_dir_)s/bin/"
84 "tfm_s_ns_signed.bin "
85 "-Binary -offset 0xA020000 "
86 "-fill 0xFF 0xA020000 0xA200000 "
87 "-o %(_tbm_build_dir_)s/bin/"
Xinyu Zhang46b37182023-06-30 15:36:44 +080088 "tfm.hex -Intel"),
89 "arm/musca_s1": ("srec_cat "
Xinyu Zhangb708f572020-09-15 11:43:46 +080090 "%(_tbm_build_dir_)s/bin/"
91 "bl2.bin "
Karl Zhangeffed972020-06-30 15:48:01 +080092 "-Binary -offset 0xA000000 "
Raef Coles543aab32020-12-03 11:12:02 +000093 "-fill 0xFF 0xA000000 0xA020000 "
Xinyu Zhangb708f572020-09-15 11:43:46 +080094 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +080095 "tfm_s_ns_signed.bin "
Raef Coles543aab32020-12-03 11:12:02 +000096 "-Binary -offset 0xA020000 "
97 "-fill 0xFF 0xA020000 0xA200000 "
98 "-o %(_tbm_build_dir_)s/bin/"
Xinyu Zhang46b37182023-06-30 15:36:44 +080099 "tfm.hex -Intel"),
100 "stm/stm32l562e_dk": ("echo 'STM32L562E-DK board post process';"
Arthur She19c0e1a2021-06-02 11:06:19 -0700101 "%(_tbm_build_dir_)s/postbuild.sh;"
102 "pushd %(_tbm_build_dir_)s;"
Arthur She07c91b52021-07-15 15:03:10 -0700103 "BIN_FILES=$(grep -o '\/.*\.bin' TFM_UPDATE.sh | sed 's/^/bin/');"
104 "tar jcf ./bin/stm32l562e-dk-tfm.tar.bz2 regression.sh TFM_UPDATE.sh ${BIN_FILES};"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800105 "popd"),
106 "stm/b_u585i_iot02a": ("echo 'STM32U5 board post process';"
Arthur She026ebb62023-02-08 18:47:39 -0800107 "%(_tbm_build_dir_)s/postbuild.sh;"
108 "pushd %(_tbm_build_dir_)s;"
109 "BIN_FILES=$(grep -o '\/.*\.bin' TFM_UPDATE.sh | sed 's/^/bin/');"
110 "tar jcf ./bin/b_u585i_iot02a-tfm.tar.bz2 regression.sh TFM_UPDATE.sh ${BIN_FILES};"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800111 "popd"),
112 "nxp/lpcxpresso55s69": ("echo 'LPCXpresso55S69 board post process\n';"
Arthur She3c0dadd2021-11-18 21:17:48 -0800113 "if [ -f \"%(_tbm_build_dir_)s/bin/bl2.hex\" ]; then FLASH_FILE='flash_bl2_JLink.py'; else FLASH_FILE='flash_JLink.py'; fi;"
114 "pushd %(_tbm_build_dir_)s/../platform/ext/target/nxp/lpcxpresso55s69/scripts;"
115 "LN=$(grep -n 'JLinkExe' ${FLASH_FILE}|awk -F: '{print $1}');"
116 "sed -i \"${LN}s/.*/ print('flash.jlink generated')/\" ${FLASH_FILE};"
117 "python3 ./${FLASH_FILE};"
118 "cd %(_tbm_build_dir_)s/bin;"
119 "BIN_FILES=$(grep loadfile flash.jlink | awk '{print $2}');"
120 "tar jcf lpcxpresso55s69-tfm.tar.bz2 flash.jlink ${BIN_FILES};"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800121 "popd"),
122 "cypress/psoc64": ("echo 'Sign binaries for Cypress PSoC64 platform';"
Arthur She87602dc2022-02-06 14:42:18 -0800123 "pushd %(_tbm_build_dir_)s/..;"
124 "sudo /usr/local/bin/cysecuretools "
125 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
126 "--target cy8ckit-064s0s2-4343w "
127 "sign-image "
128 "--hex %(_tbm_build_dir_)s/bin/tfm_s.hex "
129 "--image-type BOOT --image-id 1;"
130 "sudo /usr/local/bin/cysecuretools "
131 "--policy platform/ext/target/cypress/psoc64/security/policy/policy_multi_CM0_CM4_tfm.json "
132 "--target cy8ckit-064s0s2-4343w "
133 "sign-image "
134 "--hex %(_tbm_build_dir_)s/bin/tfm_ns.hex "
135 "--image-type BOOT --image-id 16;"
136 "mv %(_tbm_build_dir_)s/bin/tfm_s.hex %(_tbm_build_dir_)s/bin/tfm_s_signed.hex;"
137 "mv %(_tbm_build_dir_)s/bin/tfm_ns.hex %(_tbm_build_dir_)s/bin/tfm_ns_signed.hex;"
Xinyu Zhang46b37182023-06-30 15:36:44 +0800138 "popd")
Minos Galanakisea421232019-06-20 17:11:28 +0100139 },
140
141 # (Optional) If set will fail if those artefacts are missing post build
142 "required_artefacts": {"all": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800143 "%(_tbm_build_dir_)s/bin/"
144 "tfm_s.bin",
145 "%(_tbm_build_dir_)s/bin/"
146 "tfm_ns.bin"],
Mark Horvathef57baa2022-09-12 13:36:36 +0200147 "arm/musca_b1": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800148 "%(_tbm_build_dir_)s/bin/"
149 "tfm.hex",
150 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800151 "bl2.bin",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800152 "%(_tbm_build_dir_)s/bin/"
153 "tfm_sign.bin"],
Summer Qin3c2b5722021-05-26 10:43:45 +0800154 "arm/musca_s1": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800155 "%(_tbm_build_dir_)s/bin/"
156 "tfm.hex",
157 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800158 "bl2.bin",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800159 "%(_tbm_build_dir_)s/bin/"
160 "tfm_sign.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100161 }
162}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100163
Xinyu Zhangb708f572020-09-15 11:43:46 +0800164# List of all build configs that are impossible under all circumstances
165_common_tfm_invalid_configs = [
Xinyu Zhang459a1982021-07-21 22:34:49 +0800166 # LR_CODE size exceeds limit on MUSCA_B1 & MUSCA_S1 with regression tests in Debug mode built with ARMCLANG
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800167 ("arm/musca_b1", "ARMCLANG_6_13", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
168 ("arm/musca_s1", "ARMCLANG_6_13", "*", "RegBL2, RegS, RegNS", "OFF", "Debug", "*", "", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800169 # Load range overlap on Musca for IPC Debug type: T895
Summer Qin379abb62022-10-08 16:41:54 +0800170 ("arm/musca_b1", "ARMCLANG_6_13", "*", "*", "IPC", "Debug", "*", "*", "*"),
171 ("arm/musca_s1", "ARMCLANG_6_13", "*", "*", "IPC", "Debug", "*", "*", "*"),
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300172 # FF does not support L3
Summer Qin379abb62022-10-08 16:41:54 +0800173 ("*", "*", "3", "*", "IPC", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800174 # Musca requires BL2
Summer Qin379abb62022-10-08 16:41:54 +0800175 ("arm/musca_b1", "*", "*", "*", "*", "*", False, "*", "*"),
176 ("arm/musca_s1", "*", "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800177 # Only AN521 and MUSCA_B1 support Isolation Level 3
Summer Qin379abb62022-10-08 16:41:54 +0800178 ("arm/mps2/an519", "*", "3", "*", "*", "*", "*", "*", "*"),
179 ("arm/mps3/an524", "*", "3", "*", "*", "*", "*", "*", "*"),
180 ("arm/musca_s1", "*", "3", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800181 ]
182
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100183# Configure build manager to build several combinations
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800184# Config group for per-patch job
185config_pp_test = {"seed_params": {
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800186 # AN519_ARMCLANG_IPC_1_RegBL2_RegS_RegNS_Debug_BL2
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800187 "tfm_platform": ["arm/mps2/an519"],
188 "compiler": ["ARMCLANG_6_13"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800189 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800190 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800191 "test_psa_api": ["OFF"],
192 "cmake_build_type": ["Debug"],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800193 "with_bl2": [True],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800194 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800195 "extra_params": [""]
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800196 },
197 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800198 "valid": [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800199 # AN519_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800200 ("arm/mps2/an519", "ARMCLANG_6_13", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800201 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
202 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800203 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800204 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
205 # AN519_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800206 ("arm/mps2/an519", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800207 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
208 # AN519_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800209 ("arm/mps2/an519", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800210 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
211 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Summer Qin379abb62022-10-08 16:41:54 +0800212 ("arm/mps2/an521", "ARMCLANG_6_13", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800213 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
214 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800215 ("arm/mps2/an521", "ARMCLANG_6_13", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800216 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Jianliang Shen6984bef2023-07-25 10:36:56 +0800217 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_IPC
218 ("arm/mps2/an521", "ARMCLANG_6_13", "1",
219 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", "IPC"),
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800220 # AN521_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800221 ("arm/mps2/an521", "ARMCLANG_6_13", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800222 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
223 # AN521_ARMCLANG_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800224 ("arm/mps2/an521", "ARMCLANG_6_13", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800225 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
226 # AN521_ARMCLANG_1_RegBL2_RegS_RegNS_Debug_BL2_SMALL_PSOFF
Summer Qin379abb62022-10-08 16:41:54 +0800227 ("arm/mps2/an521", "ARMCLANG_6_13", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800228 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_small", "PSOFF"),
229 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800230 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800231 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
Summer Qin379abb62022-10-08 16:41:54 +0800232 # AN521_GCC_2_Debug_BL2_MEDIUM
233 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800234 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "profile_medium", ""),
235 # AN521_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800236 ("arm/mps2/an521", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800237 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
238 # AN521_GCC_3_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800239 ("arm/mps2/an521", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800240 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
241 # AN521_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800242 ("arm/mps2/an521", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800243 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
244 # AN552_GNUARM_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800245 ("arm/mps3/an552", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800246 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
247 # AN552_GNUARM_1_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800248 ("arm/mps3/an552", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800249 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
250 # MUSCA_B1_GCC_1_RegBL2_RegS_RegNS_Minsizerel_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800251 ("arm/musca_b1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800252 "RegBL2, RegS, RegNS", "OFF", "Minsizerel", True, "", ""),
253 # MUSCA_S1_ARMCLANG_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800254 ("arm/musca_s1", "ARMCLANG_6_13", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800255 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
256 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800257 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800258 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
259 # MUSCA_S1_GCC_2_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800260 ("arm/musca_s1", "GCC_10_3", "2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800261 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", ""),
262 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Debug_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800263 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800264 "RegBL2, RegS, RegNS", "OFF", "Debug", True, "", ""),
265 # MUSCA_S1_GCC_1_RegBL2_RegS_RegNS_Release_BL2_CC_DRIVER_PSA
Summer Qin379abb62022-10-08 16:41:54 +0800266 ("arm/musca_s1", "GCC_10_3", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800267 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CC_DRIVER_PSA"),
Jamie Foxd7438d92022-11-21 17:42:01 +0000268 # RSS_TC_GCC_2_Release_BL2_PSOFF
269 ("arm/rss/tc", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800270 "RegS, RegNS", "OFF", "Release", True, "", "PSOFF"),
271 # stm32l562e_dk_ARMCLANG_1_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800272 ("stm/stm32l562e_dk", "ARMCLANG_6_13", "1",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800273 "RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
274 # stm32l562e_dk_GCC_2_Release_BL2_CRYPTO_ON
Summer Qin379abb62022-10-08 16:41:54 +0800275 ("stm/stm32l562e_dk", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800276 "OFF", "OFF", "Release", True, "", "CRYPTO_ON"),
277 # stm32l562e_dk_GCC_3_RegS_RegNS_Release_BL2_CRYPTO_OFF
Summer Qin379abb62022-10-08 16:41:54 +0800278 ("stm/stm32l562e_dk", "GCC_10_3", "3",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800279 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "CRYPTO_OFF"),
Arthur She4f08c152023-05-15 15:29:14 -0700280 # b_u585i_iot02a_GCC_1_RegS_RegNS_Release_BL2
281 ("stm/b_u585i_iot02a", "GCC_10_3", "1",
282 "RegS, RegNS", "OFF", "Release", True, "", ""),
283 # b_u585i_iot02a_ARMCLANG_2_RegS_RegNS_Release_BL2
284 ("stm/b_u585i_iot02a", "ARMCLANG_6_13", "2",
285 "RegS, RegNS", "OFF", "Release", True, "", ""),
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800286 # psoc64_GCC_2_RegS_RegNS_Release
Summer Qin379abb62022-10-08 16:41:54 +0800287 ("cypress/psoc64", "GCC_10_3", "2",
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800288 "RegS, RegNS", "OFF", "Release", False, "", ""),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800289 ],
Xinyu Zhangfcb6aad2021-08-25 16:24:11 +0800290 "invalid": _common_tfm_invalid_configs + []
291 }
292
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800293# Config group for nightly job
294config_nightly_test = {"seed_params": {
295 "tfm_platform": ["arm/mps2/an519",
296 "arm/mps2/an521",
297 "arm/mps3/an524",
298 "arm/musca_s1",
Mark Horvathef57baa2022-09-12 13:36:36 +0200299 "arm/musca_b1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800300 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800301 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800302 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800303 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800304 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800305 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800306 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800307 "extra_params": [""]
Minos Galanakisea421232019-06-20 17:11:28 +0100308 },
309 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800310 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100311 }
312
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800313# Config group for release job
314config_release_test = {"seed_params": {
315 "tfm_platform": ["arm/mps2/an519",
316 "arm/mps2/an521",
317 "arm/mps3/an524",
Mark Horvathef57baa2022-09-12 13:36:36 +0200318 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800319 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800320 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800321 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800322 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800323 "test_psa_api": ["OFF"],
324 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800325 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800326 "profile": [""],
David Vinczed78e2622022-11-24 15:04:00 +0100327 "extra_params": ["TEST_CBOR"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800328 },
329 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800330 "valid": [
331 # sanity test for GCC v11.2
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800332 # AN521_GCC_3_RegBL2_RegS_RegNS_Relwithdebinfo_BL2
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800333 ("arm/mps2/an521", "GCC_11_2",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800334 "3", "RegBL2, RegS, RegNS", "OFF", "Relwithdebinfo",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800335 True, "", ""),
Xinyu Zhang47bfc0e2022-04-06 17:26:59 +0800336 ],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800337 "invalid": _common_tfm_invalid_configs + []
338 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800339
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800340# Config groups for TF-M features
341config_profile_s = {"seed_params": {
David Huda27ae72022-03-28 15:32:19 +0800342 "tfm_platform": ["arm/mps2/an519", "arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800343 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
David Huda27ae72022-03-28 15:32:19 +0800344 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800345 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Huda27ae72022-03-28 15:32:19 +0800346 "test_psa_api": ["OFF"],
347 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
David Huda27ae72022-03-28 15:32:19 +0800348 "with_bl2": [True],
David Huda27ae72022-03-28 15:32:19 +0800349 "profile": ["profile_small"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800350 "extra_params": ["PSOFF"]
David Huda27ae72022-03-28 15:32:19 +0800351 },
352 "common_params": _common_tfm_builder_cfg,
David Huda27ae72022-03-28 15:32:19 +0800353 "invalid": _common_tfm_invalid_configs + [
Summer Qin379abb62022-10-08 16:41:54 +0800354 ("arm/mps2/an519", "GCC_10_3", "*", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800355 "*", "Minsizerel", "*", "*", "*")
David Huda27ae72022-03-28 15:32:19 +0800356 ]
357 }
358
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800359config_profile_m = {"seed_params": {
360 "tfm_platform": ["arm/mps2/an519",
361 "arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200362 "arm/musca_b1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800363 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800364 "isolation_level": ["2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800365 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800366 "test_psa_api": ["OFF"],
367 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800368 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800369 "profile": ["profile_medium"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800370 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800371 },
372 "common_params": _common_tfm_builder_cfg,
373 "invalid": _common_tfm_invalid_configs + []
374 }
375
David Hu3d333762022-10-27 18:12:33 +0800376config_profile_m_arotless = {"seed_params": {
377 "tfm_platform": ["arm/musca_b1"],
378 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
379 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800380 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
David Hu3d333762022-10-27 18:12:33 +0800381 "test_psa_api": ["OFF"],
382 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
383 "with_bl2": [True],
384 "profile": ["profile_medium_arotless"],
385 "extra_params": ["", "PSOFF"]
386 },
387 "common_params": _common_tfm_builder_cfg,
388 "invalid": _common_tfm_invalid_configs + []
389 }
390
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800391config_profile_l = {"seed_params": {
392 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800393 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800394 "isolation_level": ["3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800395 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800396 "test_psa_api": ["OFF"],
397 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800398 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800399 "profile": ["profile_large"],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800400 "extra_params": ["", "PSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800401 },
402 "common_params": _common_tfm_builder_cfg,
403 "invalid": _common_tfm_invalid_configs + []
404 }
405
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800406config_ipc_backend = {"seed_params": {
407 "tfm_platform": ["arm/mps2/an519",
408 "arm/mps2/an521",
409 "arm/musca_s1",
410 "arm/musca_b1"],
411 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
412 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800413 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800414 "test_psa_api": ["OFF"],
415 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
416 "with_bl2": [True],
417 "profile": [""],
418 "extra_params": ["IPC"]
419 },
420 "common_params": _common_tfm_builder_cfg,
421 "invalid": _common_tfm_invalid_configs + []
422 }
423
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800424config_cc_driver_psa = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200425 "tfm_platform": ["arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800426 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800427 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800428 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800429 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800430 "test_psa_api": ["OFF"],
431 "cmake_build_type": ["Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800432 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800433 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800434 "extra_params": ["CC_DRIVER_PSA"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800435 },
436 "common_params": _common_tfm_builder_cfg,
437 "invalid": _common_tfm_invalid_configs + []
438 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100439
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800440config_fp = {"seed_params": {
Jianliang Shen9798e552022-11-21 12:55:42 +0800441 "tfm_platform": ["arm/mps2/an521",
442 "arm/mps3/an552"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800443 "compiler": ["GCC_10_3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800444 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800445 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800446 "test_psa_api": ["OFF"],
447 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800448 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800449 "profile": [""],
Mark Horvath93cb5fb2022-09-06 17:51:24 +0200450 "extra_params": ["FPOFF", "FPON", "FPON, LZOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800451 },
452 "common_params": _common_tfm_builder_cfg,
453 "invalid": _common_tfm_invalid_configs + []
454 }
Karl Zhangeffed972020-06-30 15:48:01 +0800455
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800456config_psa_api = {"seed_params": {
457 "tfm_platform": ["arm/mps2/an521",
Mark Horvathef57baa2022-09-12 13:36:36 +0200458 "arm/musca_b1",
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800459 "arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800460 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800461 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800462 "test_regression": ["OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800463 "test_psa_api": ["IPC",
464 "CRYPTO",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800465 "INITIAL_ATTESTATION",
Xinyu Zhang39acb412021-07-09 20:35:19 +0800466 "STORAGE"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800467 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800468 "with_bl2": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800469 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800470 "extra_params": [""]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800471 },
472 "common_params": _common_tfm_builder_cfg,
Paul Sokolovsky75f67e82022-05-02 15:39:41 +0300473 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800474 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800475
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800476config_nsce = {"seed_params": {
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800477 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800478 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800479 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800480 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800481 "test_psa_api": ["OFF"],
482 "cmake_build_type": ["Debug"],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800483 "with_bl2": [True],
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800484 "profile": [""],
Xinyu Zhang67612992021-12-20 14:11:27 +0800485 "extra_params": ["NSCE"]
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800486 },
487 "common_params": _common_tfm_builder_cfg,
488 "invalid": _common_tfm_invalid_configs + []
489 }
490
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800491config_mmio = {"seed_params": {
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800492 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800493 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800494 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800495 "test_regression": ["RegBL2, RegS, RegNS"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800496 "test_psa_api": ["OFF"],
497 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800498 "with_bl2": [True],
Xinyu Zhanga1088e22021-11-11 18:02:45 +0800499 "profile": [""],
Xinyu Zhang3bb01af2021-12-20 14:45:49 +0800500 "extra_params": ["MMIO"]
Xinyu Zhang9bfe8a92021-10-28 16:27:12 +0800501 },
502 "common_params": _common_tfm_builder_cfg,
503 "invalid": _common_tfm_invalid_configs + []
504 }
505
Bence Balogh79fda442022-10-14 18:01:37 +0200506# Config groups for TF-M examples
507config_example_vad = {"seed_params": {
508 "tfm_platform": ["arm/mps3/an552"],
509 "compiler": ["GCC_10_3"],
510 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800511 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200512 "test_psa_api": ["OFF"],
513 "cmake_build_type": ["Release"],
514 "with_bl2": [True],
515 "profile": [""],
516 "extra_params": ["EXAMPLE_VAD"]
517 },
518 "common_params": _common_tfm_builder_cfg,
519 "invalid": _common_tfm_invalid_configs + []
520 }
521
Bence Balogh852f8bd2023-08-07 14:46:54 +0200522config_example_dma350_clcd = {"seed_params": {
Bence Balogh79fda442022-10-14 18:01:37 +0200523 "tfm_platform": ["arm/mps3/corstone310/fvp"],
524 "compiler": ["GCC_10_3"],
525 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800526 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200527 "test_psa_api": ["OFF"],
528 "cmake_build_type": ["Release"],
529 "with_bl2": [True],
530 "profile": [""],
Bence Balogh852f8bd2023-08-07 14:46:54 +0200531 "extra_params": ["EXAMPLE_DMA350_CLCD"]
Bence Balogh79fda442022-10-14 18:01:37 +0200532 },
533 "common_params": _common_tfm_builder_cfg,
534 "invalid": _common_tfm_invalid_configs + []
535 }
536
537config_example_dma350_s = {"seed_params": {
538 "tfm_platform": ["arm/mps3/corstone310/fvp"],
539 "compiler": ["GCC_10_3"],
540 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800541 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200542 "test_psa_api": ["OFF"],
543 "cmake_build_type": ["Release"],
544 "with_bl2": [True],
545 "profile": [""],
546 "extra_params": ["EXAMPLE_DMA350_S"]
547 },
548 "common_params": _common_tfm_builder_cfg,
549 "invalid": _common_tfm_invalid_configs + []
550 }
551
552config_example_dma350_trigger = {"seed_params": {
553 "tfm_platform": ["arm/mps3/corstone310/fvp"],
554 "compiler": ["GCC_10_3"],
555 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800556 "test_regression": ["OFF"],
Bence Balogh79fda442022-10-14 18:01:37 +0200557 "test_psa_api": ["OFF"],
558 "cmake_build_type": ["Release"],
559 "with_bl2": [True],
560 "profile": [""],
561 "extra_params": ["EXAMPLE_DMA350_TRIGGER"]
562 },
563 "common_params": _common_tfm_builder_cfg,
564 "invalid": _common_tfm_invalid_configs + []
565 }
566
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +0300567config_misra = {"seed_params": {
568 "tfm_platform": ["arm/musca_b1"],
569 "compiler": ["GCC_10_3"],
570 "isolation_level": ["1"],
571 "test_regression": ["OFF"],
572 "test_psa_api": ["OFF"],
573 "cmake_build_type": ["Debug"],
574 "with_bl2": [True],
575 "profile": ["profile_small", "profile_medium_arotless", "profile_medium", "profile_large"],
576 "extra_params": ["PSOFF"]
577 },
578 "common_params": _common_tfm_builder_cfg,
579 "invalid": _common_tfm_invalid_configs + []
580 }
581
Paul Sokolovskya526e5d2023-06-15 09:49:13 +0300582config_misra_debug = {"seed_params": {
583 "tfm_platform": ["arm/musca_b1"],
584 "compiler": ["GCC_10_3"],
585 "isolation_level": ["1"],
586 "test_regression": ["OFF"],
587 "test_psa_api": ["OFF"],
588 "cmake_build_type": ["Debug"],
589 "with_bl2": [True],
590 "profile": ["profile_small"],
591 "extra_params": ["PSOFF"]
592 },
593 "common_params": _common_tfm_builder_cfg,
594 "invalid": _common_tfm_invalid_configs + []
595 }
596
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800597# Config groups for code coverage
598config_cov_profile_s = deepcopy(config_profile_s)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800599config_cov_profile_s["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800600config_cov_profile_s["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhangbdc37e32022-04-06 17:47:44 +0800601
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800602config_cov_profile_m = deepcopy(config_profile_m)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800603config_cov_profile_m["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800604config_cov_profile_m["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800605
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800606config_cov_profile_l = deepcopy(config_profile_l)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800607config_cov_profile_l["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800608config_cov_profile_l["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800609
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800610config_cov_ipc_backend = deepcopy(config_ipc_backend)
611config_cov_ipc_backend["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
612config_cov_ipc_backend["seed_params"]["compiler"] = ["GCC_10_3"]
613
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800614config_cov_nsce = deepcopy(config_nsce)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800615config_cov_nsce["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800616config_cov_nsce["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800617
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800618config_cov_mmio = deepcopy(config_mmio)
Xinyu Zhang778424e2023-02-27 11:39:57 +0800619config_cov_mmio["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800620config_cov_mmio["seed_params"]["compiler"] = ["GCC_10_3"]
Karl Zhang14573bc2020-06-08 09:23:21 +0800621
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800622config_cov_fp = deepcopy(config_fp)
623config_cov_fp["seed_params"]["tfm_platform"] = ["arm/mps2/an521"]
Xinyu Zhang778424e2023-02-27 11:39:57 +0800624config_cov_fp["seed_params"]["compiler"] = ["GCC_10_3"]
Xinyu Zhang5f725ee2022-12-19 10:29:20 +0800625
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800626# Config groups for platforms
627config_an519 = {"seed_params": {
Xinyu Zhangf25856a2021-06-17 14:06:46 +0800628 "tfm_platform": ["arm/mps2/an519"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800629 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800630 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800631 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800632 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800633 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800634 "with_bl2": [True, False],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800635 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800636 "extra_params": ["", "NSOFF"]
Xinyu Zhangb708f572020-09-15 11:43:46 +0800637 },
638 "common_params": _common_tfm_builder_cfg,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800639 "invalid": _common_tfm_invalid_configs + []
640 }
641
642config_an521 = {"seed_params": {
643 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800644 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800645 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800646 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800647 "test_psa_api": ["OFF"],
648 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800649 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800650 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800651 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800652 },
653 "common_params": _common_tfm_builder_cfg,
654 "invalid": _common_tfm_invalid_configs + []
655 }
656
657config_an524 = {"seed_params": {
658 "tfm_platform": ["arm/mps3/an524"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800659 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800660 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800661 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800662 "test_psa_api": ["OFF"],
663 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800664 "with_bl2": [True, False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800665 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800666 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800667 },
668 "common_params": _common_tfm_builder_cfg,
669 "invalid": _common_tfm_invalid_configs + []
Xinyu Zhangb708f572020-09-15 11:43:46 +0800670 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000671
Xinyu Zhang38b76742021-11-11 13:57:56 +0800672config_an547 = {"seed_params": {
673 "tfm_platform": ["arm/mps3/an547"],
Bence Balogh176b78f2022-02-22 13:49:34 +0100674 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800675 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800676 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800677 "test_psa_api": ["OFF"],
678 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800679 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800680 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800681 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800682 },
683 "common_params": _common_tfm_builder_cfg,
684 "invalid": _common_tfm_invalid_configs + []
685 }
686
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800687config_an552 = {"seed_params": {
688 "tfm_platform": ["arm/mps3/an552"],
689 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800690 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800691 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800692 "test_psa_api": ["OFF"],
693 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800694 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800695 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800696 "extra_params": [""]
697 },
698 "common_params": _common_tfm_builder_cfg,
699 "invalid": _common_tfm_invalid_configs + []
700 }
701
702config_musca_b1 = {"seed_params": {
Mark Horvathef57baa2022-09-12 13:36:36 +0200703 "tfm_platform": ["arm/musca_b1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800704 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800705 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800706 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800707 "test_psa_api": ["OFF"],
708 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800709 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800710 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800711 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800712 },
713 "common_params": _common_tfm_builder_cfg,
714 "invalid": _common_tfm_invalid_configs + []
715 }
716
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800717config_musca_s1 = {"seed_params": {
718 "tfm_platform": ["arm/musca_s1"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800719 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800720 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800721 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800722 "test_psa_api": ["OFF"],
723 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800724 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800725 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800726 "extra_params": ["", "NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800727 },
728 "common_params": _common_tfm_builder_cfg,
729 "invalid": _common_tfm_invalid_configs + []
730 }
731
Bence Balogh8731a092022-05-24 17:24:54 +0200732config_corstone310 = {"seed_params": {
Bence Balogh23d8fa72022-11-08 12:16:23 +0100733 "tfm_platform": ["arm/mps3/corstone310/fvp"],
Bence Balogh176b78f2022-02-22 13:49:34 +0100734 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800735 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800736 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800737 "test_psa_api": ["OFF"],
738 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800739 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800740 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800741 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800742 },
743 "common_params": _common_tfm_builder_cfg,
744 "invalid": _common_tfm_invalid_configs + []
745 }
746
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100747config_rss = {"seed_params": {
Raef Coles0d405852022-10-21 10:52:50 +0100748 "tfm_platform": ["arm/rss/tc"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100749 "compiler": ["GCC_10_3"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100750 "isolation_level": ["1", "2"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800751 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100752 "test_psa_api": ["OFF"],
753 "cmake_build_type": ["Debug", "Release"],
754 "with_bl2": [True],
755 "profile": [""],
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800756 "extra_params": ["PSOFF"]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100757 },
758 "common_params": _common_tfm_builder_cfg,
Jamie Fox9e2c2352023-01-13 15:11:23 +0000759 "invalid": _common_tfm_invalid_configs + [
760 # BL2 is too large for RSS in Debug builds with tests
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800761 ("arm/rss/tc", "GCC_10_3", "*", "RegBL2, RegS, RegNS", "*",
Jamie Fox9e2c2352023-01-13 15:11:23 +0000762 "Debug", True, "*", "*"),
763 ]
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100764 }
765
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800766config_psoc64 = {"seed_params": {
767 "tfm_platform": ["cypress/psoc64"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800768 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800769 "isolation_level": ["1", "2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800770 "test_regression": ["RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800771 "test_psa_api": ["OFF"],
772 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800773 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800774 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800775 "extra_params": [""]
776 },
777 "common_params": _common_tfm_builder_cfg,
778 "invalid": _common_tfm_invalid_configs + []
779 }
780
781config_corstone1000 = {"seed_params": {
782 "tfm_platform": ["arm/corstone1000"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800783 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800784 "isolation_level": ["1"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800785 "test_regression": ["RegBL2, RegS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800786 "test_psa_api": ["OFF"],
787 "cmake_build_type": ["Debug"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800788 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800789 "profile": [""],
Xinyu Zhang4fb2b5c2023-04-25 11:55:19 +0800790 "extra_params": ["CS1K_TEST, FVP", "CS1K_TEST, FPGA"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800791 },
792 "common_params": _common_tfm_builder_cfg,
793 "invalid": _common_tfm_invalid_configs + []
794 }
795
796config_stm32l562e_dk = {"seed_params": {
797 "tfm_platform": ["stm/stm32l562e_dk"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800798 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800799 "isolation_level": ["1", "2", "3"],
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800800 "test_regression": ["OFF", "RegBL2, RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800801 "test_psa_api": ["OFF"],
802 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800803 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800804 "profile": [""],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800805 "extra_params": ["CRYPTO_OFF", "CRYPTO_ON"]
806 },
807 "common_params": _common_tfm_builder_cfg,
808 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800809 # Oversize issue on config stm32l562e_dk_ARMCLANG_1_RegBL2_RegS_RegNS_Release_BL2
Summer Qin379abb62022-10-08 16:41:54 +0800810 ("stm/stm32l562e_dk", "ARMCLANG_6_13", "1",
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800811 "RegBL2, RegS, RegNS", "OFF", "Release", True, "", "*"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800812 # all other tests are off when CRYPTO is ON
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800813 ("stm/stm32l562e_dk", "*", "*", "RegBL2, RegS, RegNS", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800814 "*", "*", "*", "CRYPTO_ON"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800815 # all other tests are ON when CRYPTO is OFF
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800816 ("stm/stm32l562e_dk", "*", "*", "OFF", "*",
Xinyu Zhangdf88e302022-09-19 11:27:57 +0800817 "*", "*", "*", "CRYPTO_OFF"),
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800818 ]
819 }
820
821config_b_u585i_iot02a = {"seed_params": {
822 "tfm_platform": ["stm/b_u585i_iot02a"],
Arthur She026ebb62023-02-08 18:47:39 -0800823 "compiler": ["GCC_10_3", "ARMCLANG_6_13"],
824 "isolation_level": ["1", "2"],
Arthur She96c6f772023-05-09 21:32:50 -0700825 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800826 "test_psa_api": ["OFF"],
827 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800828 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800829 "profile": [""],
Arthur She026ebb62023-02-08 18:47:39 -0800830 "extra_params": [""]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800831 },
832 "common_params": _common_tfm_builder_cfg,
833 "invalid": _common_tfm_invalid_configs + []
834 }
835
836config_nucleo_l552ze_q = {"seed_params": {
837 "tfm_platform": ["stm/nucleo_l552ze_q"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800838 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800839 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800840 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800841 "test_psa_api": ["OFF"],
842 "cmake_build_type": ["Release"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800843 "with_bl2": [True],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800844 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800845 "extra_params": ["NSOFF"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800846 },
847 "common_params": _common_tfm_builder_cfg,
848 "invalid": _common_tfm_invalid_configs + []
849 }
850
851config_lpcxpresso55s69 = {"seed_params": {
852 "tfm_platform": ["nxp/lpcxpresso55s69"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800853 "compiler": ["GCC_10_3"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800854 "isolation_level": ["2"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800855 "test_regression": ["OFF", "RegS, RegNS"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800856 "test_psa_api": ["OFF"],
857 "cmake_build_type": ["Relwithdebinfo"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800858 "with_bl2": [False],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800859 "profile": ["profile_medium"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800860 "extra_params": [""]
861 },
862 "common_params": _common_tfm_builder_cfg,
863 "invalid": _common_tfm_invalid_configs + []
864 }
865
Xinyu Zhang38b76742021-11-11 13:57:56 +0800866config_bl5340 = {"seed_params": {
867 "tfm_platform": ["lairdconnectivity/bl5340_dvk_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800868 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800869 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800870 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800871 "test_psa_api": ["OFF"],
872 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800873 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800874 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800875 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800876 },
877 "common_params": _common_tfm_builder_cfg,
878 "invalid": _common_tfm_invalid_configs + []
879 }
880
881config_nrf5340dk = {"seed_params": {
882 "tfm_platform": ["nordic_nrf/nrf5340dk_nrf5340_cpuapp"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800883 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800884 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800885 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800886 "test_psa_api": ["OFF"],
887 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800888 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800889 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800890 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800891 },
892 "common_params": _common_tfm_builder_cfg,
893 "invalid": _common_tfm_invalid_configs + []
894 }
895
896config_nrf9160dk = {"seed_params": {
897 "tfm_platform": ["nordic_nrf/nrf9160dk_nrf9160"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800898 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800899 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800900 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800901 "test_psa_api": ["OFF"],
902 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800903 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800904 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800905 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800906 },
907 "common_params": _common_tfm_builder_cfg,
908 "invalid": _common_tfm_invalid_configs + []
909 }
910
911config_m2351 = {"seed_params": {
912 "tfm_platform": ["nuvoton/m2351"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800913 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800914 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800915 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800916 "test_psa_api": ["OFF"],
917 "cmake_build_type": ["Release"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800918 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800919 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800920 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800921 },
922 "common_params": _common_tfm_builder_cfg,
923 "invalid": _common_tfm_invalid_configs + []
924 }
925
926config_m2354 = {"seed_params": {
927 "tfm_platform": ["nuvoton/m2354"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800928 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800929 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800930 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800931 "test_psa_api": ["OFF"],
932 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800933 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800934 "profile": [""],
Xinyu Zhangfb80b5d2022-07-26 15:42:26 +0800935 "extra_params": ["NSOFF"]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800936 },
937 "common_params": _common_tfm_builder_cfg,
938 "invalid": _common_tfm_invalid_configs + []
939 }
940
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800941# Config groups for debug
942config_debug = {"seed_params": {
943 "tfm_platform": ["arm/mps2/an521"],
Xinyu Zhang16a218e2022-10-11 17:21:39 +0800944 "compiler": ["GCC_10_3"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800945 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800946 "test_regression": ["OFF"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800947 "test_psa_api": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800948 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800949 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800950 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800951 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800952 },
953 "common_params": _common_tfm_builder_cfg,
954 "invalid": _common_tfm_invalid_configs + []
955 }
956
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800957config_debug_regr = deepcopy(config_debug)
Xinyu Zhang66e22ff2023-04-25 15:56:29 +0800958config_debug_regr["seed_params"]["test_regression"] = ["RegBL2, RegS, RegNS"]
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800959
960config_debug_PSA_API = {"seed_params": {
961 "tfm_platform": ["arm/mps2/an521"],
962 "compiler": ["ARMCLANG_6_13"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800963 "isolation_level": ["1"],
Xinyu Zhangb18ae742023-04-25 14:33:27 +0800964 "test_regression": ["OFF"],
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800965 "test_psa_api": ["CRYPTO",
966 "INITIAL_ATTESTATION",
967 "STORAGE",
968 "IPC"],
969 "cmake_build_type": ["Debug"],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800970 "with_bl2": [True],
Xinyu Zhang38b76742021-11-11 13:57:56 +0800971 "profile": [""],
Xinyu Zhangfd2e1152021-12-17 18:09:01 +0800972 "extra_params": [""]
Xinyu Zhang38b76742021-11-11 13:57:56 +0800973 },
974 "common_params": _common_tfm_builder_cfg,
975 "invalid": _common_tfm_invalid_configs + []
976 }
977
Karl Zhangaff558a2020-05-15 14:28:23 +0100978_builtin_configs = {
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800979 # per-patch test groups
980 "pp_test": config_pp_test,
Antonio de Angelis8c2de822023-05-02 17:01:48 +0200981 #"pp_corstone1000": config_corstone1000,
Karl Zhang14573bc2020-06-08 09:23:21 +0800982
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800983 # nightly test groups
984 "nightly_test": config_nightly_test,
985 "nightly_profile_s": config_profile_s,
986 "nightly_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +0800987 "nightly_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800988 "nightly_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +0800989 "nightly_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800990 "nightly_cc_driver_psa": config_cc_driver_psa,
991 "nightly_fp":config_fp,
992 "nightly_psa_api": config_psa_api,
Xinyu Zhang050e39a2021-11-16 14:38:15 +0800993 "nightly_nsce": config_nsce,
994 "nightly_mmio": config_mmio,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +0800995 "nightly_an547": config_an547,
996 "nightly_an552": config_an552,
Bence Balogh8731a092022-05-24 17:24:54 +0200997 "nightly_corstone310": config_corstone310,
Antonio de Angelis8c2de822023-05-02 17:01:48 +0200998 #"nightly_corstone1000": config_corstone1000,
Jamie Foxf3b8aa82022-09-08 11:52:01 +0100999 "nightly_rss": config_rss,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001000 "nightly_psoc64": config_psoc64,
1001 "nightly_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001002 "nightly_b_u585i_iot02a": config_b_u585i_iot02a,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001003 "nightly_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001004
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001005 # release test groups
1006 "release_test": config_release_test,
1007 "release_profile_s": config_profile_s,
1008 "release_profile_m": config_profile_m,
David Hu3d333762022-10-27 18:12:33 +08001009 "release_profile_m_arotless": config_profile_m_arotless,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001010 "release_profile_l": config_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001011 "release_ipc_backend": config_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001012 "release_cc_driver_psa": config_cc_driver_psa,
1013 "release_fp": config_fp,
1014 "release_psa_api": config_psa_api,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001015 "release_nsce": config_nsce,
1016 "release_mmio": config_mmio,
1017 "release_an547": config_an547,
1018 "release_an552": config_an552,
Bence Balogh8731a092022-05-24 17:24:54 +02001019 "release_corstone310": config_corstone310,
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001020 "release_rss": config_rss,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001021 "release_psoc64": config_psoc64,
1022 "release_stm32l562e_dk": config_stm32l562e_dk,
Arthur She026ebb62023-02-08 18:47:39 -08001023 "release_b_u585i_iot02a": config_b_u585i_iot02a,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001024 "release_lpcxpresso55s69": config_lpcxpresso55s69,
Karl Zhang14573bc2020-06-08 09:23:21 +08001025
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001026 # code coverage test groups
1027 "coverage_profile_s": config_cov_profile_s,
1028 "coverage_profile_m": config_cov_profile_m,
1029 "coverage_profile_l": config_cov_profile_l,
Xinyu Zhang88b965c2022-11-21 17:50:33 +08001030 "coverage_ipc_backend": config_cov_ipc_backend,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001031 "coverage_nsce": config_cov_nsce,
1032 "coverage_mmio": config_cov_mmio,
Xinyu Zhang5f725ee2022-12-19 10:29:20 +08001033 "coverage_fp": config_cov_fp,
Xinyu Zhangf25856a2021-06-17 14:06:46 +08001034
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001035 # MISRA analysis
1036 "misra": config_misra,
Paul Sokolovskya526e5d2023-06-15 09:49:13 +03001037 "misra_debug": config_misra_debug,
Paul Sokolovsky4fe40b12023-04-21 02:17:57 +03001038
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001039 # platform groups
1040 "an521": config_an521,
1041 "an519": config_an519,
1042 "an524": config_an524,
1043 "an547": config_an547,
1044 "an552": config_an552,
1045 "musca_b1": config_musca_b1,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001046 "musca_s1": config_musca_s1,
Bence Balogh8731a092022-05-24 17:24:54 +02001047 "corstone310": config_corstone310,
Jamie Foxf3b8aa82022-09-08 11:52:01 +01001048 "rss": config_rss,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001049 "cypress_psoc64": config_psoc64,
Antonio de Angelis8c2de822023-05-02 17:01:48 +02001050 #"corstone1000": config_corstone1000,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001051 "stm_stm32l562e_dk": config_stm32l562e_dk,
1052 "stm_b_u585i_iot02a": config_b_u585i_iot02a,
1053 "stm_nucleo_l552ze_q": config_nucleo_l552ze_q,
1054 "nxp_lpcxpresso55s69": config_lpcxpresso55s69,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001055 "laird_bl5340": config_bl5340,
1056 "nordic_nrf5340dk": config_nrf5340dk,
1057 "nordic_nrf9160dk": config_nrf9160dk,
1058 "nuvoton_m2351": config_m2351,
1059 "nuvoton_m2354": config_m2354,
Xinyu Zhang38b76742021-11-11 13:57:56 +08001060
Bence Balogh79fda442022-10-14 18:01:37 +02001061 # config groups for tf-m-extras examples
1062 "example_vad": config_example_vad,
1063 "example_dma350_trigger": config_example_dma350_trigger,
Bence Balogh852f8bd2023-08-07 14:46:54 +02001064 "example_dma350_clcd": config_example_dma350_clcd,
Bence Balogh79fda442022-10-14 18:01:37 +02001065 "example_dma350_s": config_example_dma350_s,
1066
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001067 # config groups for debug
Dean Birch4c6ad622020-03-13 11:28:03 +00001068 "debug": config_debug,
Paul Sokolovsky6c3c6562022-04-04 23:23:02 +03001069 "debug_regr": config_debug_regr,
Paul Sokolovsky1ec752b2022-01-22 19:50:58 +03001070 "debug_PSA_API": config_debug_PSA_API,
Xinyu Zhang0aebb3d2022-04-11 18:27:12 +08001071 }
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001072
1073if __name__ == '__main__':
1074 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001075
Minos Galanakisea421232019-06-20 17:11:28 +01001076 # Default behavior is to export refference config when called
1077 _dir = os.getcwd()
1078 from utils import save_json
1079 for _cname, _cfg in _builtin_configs.items():
1080 _fname = os.path.join(_dir, _cname + ".json")
1081 print("Exporting config %s" % _fname)
1082 save_json(_fname, _cfg)