blob: a49efb3ae734bea4ade2e0e3bff3e5d6be02d6b8 [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/*
Xinyu Zhangeb442a12021-02-01 15:16:19 +080011 * Copyright (c) 2018-2021, 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"
Karl Zhang08681e62020-10-30 13:56:03 +080020__version__ = "1.2.0"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010021
Minos Galanakisea421232019-06-20 17:11:28 +010022# common parameters for tf-m build system
23# This configuration template will be passed into the tfm-builder module after
24# the template evaluation is converted to a command
25
26_common_tfm_builder_cfg = {
27 "config_type": "tf-m",
28 "codebase_root_dir": "tf-m",
29 # Order to which the variants are evaluated. This affects the name of
30 # variant configuration and the wildcard replacement logic in invalid
31 # configuration tuples
Xinyu Zhangb708f572020-09-15 11:43:46 +080032 "sort_order": ["tfm_platform",
33 "toolchain_file",
34 "psa_api",
35 "isolation_level",
36 "test_regression",
37 "test_psa_api",
Minos Galanakisea421232019-06-20 17:11:28 +010038 "cmake_build_type",
Xinyu Zhangb708f572020-09-15 11:43:46 +080039 "with_otp",
40 "with_bl2",
41 "with_ns",
Xinyu Zhang9fd74242020-10-22 11:30:50 +080042 "profile",
43 "partition_ps"],
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 Zhangb708f572020-09-15 11:43:46 +080048 "config_template": "cmake " + \
49 "-DTFM_PLATFORM=%(tfm_platform)s " + \
Fathi Boudra324fee72020-11-20 10:31:12 +010050 "-DTFM_TOOLCHAIN_FILE=%(codebase_root_dir)s/%(toolchain_file)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080051 "-DTFM_PSA_API=%(psa_api)s " + \
52 "-DTFM_ISOLATION_LEVEL=%(isolation_level)s " + \
53 "-DTEST_NS=%(test_regression)s -DTEST_S=%(test_regression)s " + \
54 "-DTEST_PSA_API=%(test_psa_api)s " + \
55 "-DCMAKE_BUILD_TYPE=%(cmake_build_type)s " + \
56 "-DCRYPTO_HW_ACCELERATOR_OTP_STATE=%(with_otp)s " + \
57 "-DBL2=%(with_bl2)s " + \
58 "-DNS=%(with_ns)s " + \
59 "-DTFM_TEST_REPO_PATH=%(codebase_root_dir)s/../tf-m-tests " + \
60 "-DMBEDCRYPTO_PATH=%(codebase_root_dir)s/../mbedtls " + \
61 "-DPSA_ARCH_TESTS_PATH=%(codebase_root_dir)s/../psa-arch-tests " + \
62 "-DMCUBOOT_PATH=%(codebase_root_dir)s/../mcuboot " + \
63 "-DTFM_PROFILE=%(profile)s " + \
Xinyu Zhangb5bbb692020-10-26 10:14:33 +080064 "-DTFM_PARTITION_PROTECTED_STORAGE=%(partition_ps)s " + \
Xinyu Zhangb708f572020-09-15 11:43:46 +080065 "%(codebase_root_dir)s",
Karl Zhangaff558a2020-05-15 14:28:23 +010066
Minos Galanakisea421232019-06-20 17:11:28 +010067 # A small subset of string substitution params is allowed in commands.
68 # tfm_build_manager will replace %(_tbm_build_dir_)s, %(_tbm_code_dir_)s,
69 # _tbm_target_platform_ with the paths set when building
70
Xinyu Zhangb708f572020-09-15 11:43:46 +080071 "artifact_capture_rex": (r'%(_tbm_build_dir_)s/bin'
Minos Galanakisea421232019-06-20 17:11:28 +010072 r'/(\w+\.(?:axf|bin|hex))$'),
73
74 # ALL commands will be executed for every build.
75 # Other keys will append extra commands when matching target_platform
Fathi Boudra83e4f292020-12-04 22:33:40 +010076 "build_cmds": {"all": ["cmake --build ./ -- install"],
Xinyu Zhang694eb492020-11-04 18:29:08 +080077 "musca_a": [("srec_cat "
Xinyu Zhangb708f572020-09-15 11:43:46 +080078 "%(_tbm_build_dir_)s/bin/"
79 "bl2.bin "
Minos Galanakisea421232019-06-20 17:11:28 +010080 "-Binary -offset 0x200000 "
Raef Coles543aab32020-12-03 11:12:02 +000081 "-fill 0xFF 0x200000 0x220000 "
Xinyu Zhangb708f572020-09-15 11:43:46 +080082 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +080083 "tfm_s_ns_signed.bin "
Raef Coles543aab32020-12-03 11:12:02 +000084 "-Binary -offset 0x220000 "
85 "-fill 0xFF 0x220000 0xA00000 "
86 "-o %(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +080087 "tfm.hex -Intel")],
Mark Horvath8d281cd2020-12-07 15:20:26 +010088 "musca_b1/sse_200": [("srec_cat "
89 "%(_tbm_build_dir_)s/bin/"
90 "bl2.bin "
91 "-Binary -offset 0xA000000 "
92 "-fill 0xFF 0xA000000 0xA020000 "
93 "%(_tbm_build_dir_)s/bin/"
94 "tfm_s_ns_signed.bin "
95 "-Binary -offset 0xA020000 "
96 "-fill 0xFF 0xA020000 0xA200000 "
97 "-o %(_tbm_build_dir_)s/bin/"
98 "tfm.hex -Intel")],
Xinyu Zhang694eb492020-11-04 18:29:08 +080099 "musca_s1": [("srec_cat "
Xinyu Zhangb708f572020-09-15 11:43:46 +0800100 "%(_tbm_build_dir_)s/bin/"
101 "bl2.bin "
Karl Zhangeffed972020-06-30 15:48:01 +0800102 "-Binary -offset 0xA000000 "
Raef Coles543aab32020-12-03 11:12:02 +0000103 "-fill 0xFF 0xA000000 0xA020000 "
Xinyu Zhangb708f572020-09-15 11:43:46 +0800104 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800105 "tfm_s_ns_signed.bin "
Raef Coles543aab32020-12-03 11:12:02 +0000106 "-Binary -offset 0xA020000 "
107 "-fill 0xFF 0xA020000 0xA200000 "
108 "-o %(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800109 "tfm.hex -Intel")]
Minos Galanakisea421232019-06-20 17:11:28 +0100110 },
111
112 # (Optional) If set will fail if those artefacts are missing post build
113 "required_artefacts": {"all": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800114 "%(_tbm_build_dir_)s/bin/"
115 "tfm_s.bin",
116 "%(_tbm_build_dir_)s/bin/"
117 "tfm_ns.bin"],
Xinyu Zhang694eb492020-11-04 18:29:08 +0800118 "musca_a": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800119 "%(_tbm_build_dir_)s/bin/"
120 "tfm.hex",
121 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800122 "bl2.bin",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800123 "%(_tbm_build_dir_)s/bin/"
124 "tfm_sign.bin"],
Mark Horvath8d281cd2020-12-07 15:20:26 +0100125 "musca_b1/sse_200": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800126 "%(_tbm_build_dir_)s/bin/"
127 "tfm.hex",
128 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800129 "bl2.bin",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800130 "%(_tbm_build_dir_)s/bin/"
131 "tfm_sign.bin"],
Xinyu Zhang694eb492020-11-04 18:29:08 +0800132 "musca_s1": [
Xinyu Zhangb708f572020-09-15 11:43:46 +0800133 "%(_tbm_build_dir_)s/bin/"
134 "tfm.hex",
135 "%(_tbm_build_dir_)s/bin/"
Xinyu Zhang694eb492020-11-04 18:29:08 +0800136 "bl2.bin",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800137 "%(_tbm_build_dir_)s/bin/"
138 "tfm_sign.bin"]
Minos Galanakisea421232019-06-20 17:11:28 +0100139 }
140}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100141
Xinyu Zhangb708f572020-09-15 11:43:46 +0800142# List of all build configs that are impossible under all circumstances
143_common_tfm_invalid_configs = [
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800144 # LVL2 and LVL3 requires PSA api
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800145 ("*", "*", False, "2", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800146 ("*", "*", False, "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800147 # Regression requires NS
148 ("*", "*", "*", "*", True, "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhang11d66112020-11-04 15:38:29 +0800149 # psoc64 requires PSA api
150 ("cypress/psoc64", "*", False, "*", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800151 # No PSA_ACK with regression
152 ("*", "*", "*", "*", True, "IPC", "*", "*", "*", "*", "*", "*"),
153 ("*", "*", "*", "*", True, "CRYPTO", "*", "*", "*", "*", "*", "*"),
154 ("*", "*", "*", "*", True, "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
155 ("*", "*", "*", "*", True, "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
156 ("*", "*", "*", "*", True, "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
157 # PSA_ACK requires NS
158 ("*", "*", "*", "*", "*", "IPC", "*", "*", "*", False, "*", "*"),
159 ("*", "*", "*", "*", "*", "CRYPTO", "*", "*", "*", False, "*", "*"),
160 ("*", "*", "*", "*", "*", "PROTECTED_STORAGE", "*", "*", "*", False, "*", "*"),
161 ("*", "*", "*", "*", "*", "INITIAL_ATTESTATION", "*", "*", "*", False, "*", "*"),
162 ("*", "*", "*", "*", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", False, "*", "*"),
Xinyu Zhang3227da42021-03-19 17:37:17 +0800163 # PSA_ACK does not support LVL3
164 ("*", "*", "*", "3", "*", "IPC", "*", "*", "*", "*", "*", "*"),
165 ("*", "*", "*", "3", "*", "CRYPTO", "*", "*", "*", "*", "*", "*"),
166 ("*", "*", "*", "3", "*", "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
167 ("*", "*", "*", "3", "*", "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
168 ("*", "*", "*", "3", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800169 # Musca requires BL2
170 ("musca_a", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100171 ("musca_b1/sse_200", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800172 ("musca_s1", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
173 # psoc64 cannot use BL2
174 ("cypress/psoc64", "*", "*", "*", "*", "*", "*", "*", True, "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800175 # psoc64 does not support Debug build type
176 ("cypress/psoc64", "*", "*", "*", "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800177 # Musca b1 does not support Profile S
Mark Horvath8d281cd2020-12-07 15:20:26 +0100178 ("musca_b1/sse_200", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
179 # Musca B1 Secure Enclave requires PSA api, BL2, and supports only Isolation Level 1
180 ("musca_b1/secure_enclave", "*", False, "*", "*", "*", "*", "*", "*", "*", "*", "*"),
181 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
182 ("musca_b1/secure_enclave", "*", "*", "2", "*", "*", "*", "*", "*", "*", "*", "*"),
183 # Musca B1 Secure Enclave does not support tests, profiles, NS side building
184 ("musca_b1/secure_enclave", "*", "*", "*", True, "*", "*", "*", "*", "*", "*", "*"),
185 ("musca_b1/secure_enclave", "*", "*", "*", "*", "IPC", "*", "*", "*", "*", "*", "*"),
186 ("musca_b1/secure_enclave", "*", "*", "*", "*", "CRYPTO", "*", "*", "*", "*", "*", "*"),
187 ("musca_b1/secure_enclave", "*", "*", "*", "*", "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
188 ("musca_b1/secure_enclave", "*", "*", "*", "*", "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
189 ("musca_b1/secure_enclave", "*", "*", "*", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
190 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
191 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
192 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", True, "*", "*"),
Xinyu Zhang709c1542020-11-02 18:41:07 +0800193 # PARTITION_PS could be OFF only for Profile S and M
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800194 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "", "OFF"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800195 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_large", "OFF"),
Xinyu Zhang709c1542020-11-02 18:41:07 +0800196 # PARTITION_PS should be OFF for Profile S
197 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "ON"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800198 # Proile M only support for PSA_API
199 ("*", "*", False, "*", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
200 # Profile M only support for Isolation Level 2
201 ("*", "*", "*", "1", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
Xinyu Zhange8de4512020-11-13 10:37:56 +0800202 ("*", "*", "*", "3", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800203 # Profile L only support for Isolation Level 3
204 ("*", "*", "*", "1", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
205 ("*", "*", "*", "2", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800206 # Profile S does not support PSA_API
207 ("*", "*", True, "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
208 # Profile S only supports Isolation Level 2
209 ("*", "*", "*", "2", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800210 # Only AN521 and MUSCA_B1 support Isolation Level 3
211 ("mps2/an519", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800212 ("mps3/an524", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800213 ("musca_a", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
214 ("musca_s1", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
215 ("cypress/psoc64", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100216 ("musca_b1/secure_enclave", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800217 ]
218
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100219# Configure build manager to build several combinations
Karl Zhangaff558a2020-05-15 14:28:23 +0100220config_AN524 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800221 "tfm_platform": ["mps3/an524"],
222 "toolchain_file": ["toolchain_GNUARM.cmake",
223 "toolchain_ARMCLANG.cmake"],
224 "psa_api": [True, False],
225 "isolation_level": ["1", "2"],
226 "test_regression": [True, False],
227 "test_psa_api": ["OFF"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100228 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800229 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800230 "with_bl2": [True, False],
231 "with_ns": [True, False],
232 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800233 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100234 },
235 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800236 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100237 }
238
Karl Zhangaff558a2020-05-15 14:28:23 +0100239config_AN521 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800240 "tfm_platform": ["mps2/an521"],
241 "toolchain_file": ["toolchain_GNUARM.cmake",
242 "toolchain_ARMCLANG.cmake"],
243 "psa_api": [True, False],
244 "isolation_level": ["1", "2"],
245 "test_regression": [True, False],
246 "test_psa_api": ["OFF"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100247 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800248 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800249 "with_bl2": [True, False],
250 "with_ns": [True, False],
251 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800252 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100253 },
254 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800255 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100256 }
257
Karl Zhangaff558a2020-05-15 14:28:23 +0100258config_PSA_API = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800259 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
260 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800261 "toolchain_file": ["toolchain_GNUARM.cmake",
262 "toolchain_ARMCLANG.cmake"],
263 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800264 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800265 "test_regression": [False],
266 "test_psa_api": ["CRYPTO",
267 "PROTECTED_STORAGE",
268 "INITIAL_ATTESTATION",
269 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100270 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800271 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800272 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800273 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800274 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800275 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100276 },
277 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800278 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100279 }
280
Karl Zhangaff558a2020-05-15 14:28:23 +0100281config_PSA_FF = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800282 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
283 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800284 "toolchain_file": ["toolchain_GNUARM.cmake",
285 "toolchain_ARMCLANG.cmake"],
286 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800287 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800288 "test_regression": [False],
289 "test_psa_api": ["IPC"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100290 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800291 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800292 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800293 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800294 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800295 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100296 },
297 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800298 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100299 }
300
Karl Zhangaff558a2020-05-15 14:28:23 +0100301config_PSA_API_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100302 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800303 "toolchain_file": ["toolchain_GNUARM.cmake",
304 "toolchain_ARMCLANG.cmake"],
305 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800306 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800307 "test_regression": [False],
308 "test_psa_api": ["CRYPTO",
309 "PROTECTED_STORAGE",
310 "INITIAL_ATTESTATION",
311 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100312 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800313 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800314 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800315 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800316 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800317 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100318 },
319 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800320 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100321 }
Minos Galanakisea421232019-06-20 17:11:28 +0100322
Xinyu Zhangb708f572020-09-15 11:43:46 +0800323config_PSA_FF_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100324 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800325 "toolchain_file": ["toolchain_GNUARM.cmake",
326 "toolchain_ARMCLANG.cmake"],
327 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800328 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800329 "test_regression": [False],
330 "test_psa_api": ["IPC"],
331 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800332 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800333 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800334 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800335 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800336 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800337 },
338 "common_params": _common_tfm_builder_cfg,
339 "invalid": _common_tfm_invalid_configs + []
340 }
341
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800342config_PSOC64 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800343 "tfm_platform": ["cypress/psoc64"],
344 "toolchain_file": ["toolchain_GNUARM.cmake",
345 "toolchain_ARMCLANG.cmake"],
346 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800347 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800348 "test_regression": [True],
349 "test_psa_api": ["OFF"],
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800350 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800351 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800352 "with_bl2": [False],
353 "with_ns": [True, False],
354 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800355 "partition_ps": ["ON"],
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800356 },
357 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800358 "invalid": _common_tfm_invalid_configs + []
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800359 }
360
Minos Galanakisea421232019-06-20 17:11:28 +0100361config_AN519 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800362 "tfm_platform": ["mps2/an519"],
363 "toolchain_file": ["toolchain_GNUARM.cmake",
364 "toolchain_ARMCLANG.cmake"],
365 "psa_api": [True, False],
366 "isolation_level": ["1", "2"],
367 "test_regression": [True, False],
368 "test_psa_api": ["OFF"],
Minos Galanakisea421232019-06-20 17:11:28 +0100369 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800370 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800371 "with_bl2": [True, False],
372 "with_ns": [True, False],
373 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800374 "partition_ps": ["ON"],
Minos Galanakisea421232019-06-20 17:11:28 +0100375 },
376 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800377 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100378 }
379
Xinyu Zhangb708f572020-09-15 11:43:46 +0800380config_IPC = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100381 "tfm_platform": ["mps2/an521", "mps2/an519", "musca_a",
382 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800383 "toolchain_file": ["toolchain_GNUARM.cmake",
384 "toolchain_ARMCLANG.cmake"],
385 "psa_api": [True],
386 "isolation_level": ["1", "2"],
387 "test_regression": [True, False],
388 "test_psa_api": ["OFF"],
389 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800390 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800391 "with_bl2": [True, False],
392 "with_ns": [True, False],
393 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800394 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800395 },
Minos Galanakisea421232019-06-20 17:11:28 +0100396 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800397 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100398 }
399
Minos Galanakisea421232019-06-20 17:11:28 +0100400config_full = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800401 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100402 "musca_a", "musca_b1/sse_200",
Karl Zhang6919ff62021-01-05 14:17:44 +0800403 "mps3/an524", "cypress/psoc64",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100404 "musca_b1/secure_enclave"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800405 "toolchain_file": ["toolchain_GNUARM.cmake",
406 "toolchain_ARMCLANG.cmake"],
407 "psa_api": [True, False],
408 "isolation_level": ["1", "2"],
409 "test_regression": [True, False],
410 "test_psa_api": ["OFF"],
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800411 "cmake_build_type": ["Debug", "Release", "RelWithDebInfo"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800412 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800413 "with_bl2": [True, False],
414 "with_ns": [True, False],
415 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800416 "partition_ps": ["ON"],
Dean Birchd6ce2c82020-05-13 13:16:15 +0100417 },
418 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800419 "invalid": _common_tfm_invalid_configs + [
420 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800421 "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800422 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800423 "*", "*", "*", "*", True, True, "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800424 ("mps2/an521", "*", "*", "*",
425 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
426 ("mps2/an519", "*", "*", "*",
427 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
428 ("musca_a", "*", "*", "*",
429 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100430 ("musca_b1/sse_200", "*", "*", "*",
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800431 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800432 ("mps3/an524", "*", "*", "*",
433 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800434 ]
Karl Zhang81a76772020-05-11 18:28:52 +0800435 }
436
Karl Zhangaff558a2020-05-15 14:28:23 +0100437config_tfm_test = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800438 "tfm_platform": ["mps2/an521", "musca_a",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100439 "musca_b1/sse_200", "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800440 "toolchain_file": ["toolchain_ARMCLANG.cmake",
441 "toolchain_GNUARM.cmake"],
442 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800443 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800444 "test_regression": [True, False],
445 "test_psa_api": ["OFF"],
446 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800447 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800448 "with_bl2": [True],
449 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800450 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800451 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800452 },
453 "common_params": _common_tfm_builder_cfg,
454 "invalid": _common_tfm_invalid_configs + []
455 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800456
Karl Zhangaff558a2020-05-15 14:28:23 +0100457config_tfm_test2 = {"seed_params": {
Karl Zhang6919ff62021-01-05 14:17:44 +0800458 "tfm_platform": ["mps2/an519", "mps3/an524"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800459 "toolchain_file": ["toolchain_ARMCLANG.cmake",
460 "toolchain_GNUARM.cmake"],
461 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800462 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800463 "test_regression": [True, False],
464 "test_psa_api": ["OFF"],
465 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800466 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800467 "with_bl2": [True],
468 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800469 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800470 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800471 },
472 "common_params": _common_tfm_builder_cfg,
473 "invalid": _common_tfm_invalid_configs + [
474 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800475 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800476 ]
477 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100478
Karl Zhang14573bc2020-06-08 09:23:21 +0800479config_tfm_profile = {"seed_params": {
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800480 "tfm_platform": ["mps2/an519", "mps2/an521",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100481 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800482 "toolchain_file": ["toolchain_ARMCLANG.cmake",
483 "toolchain_GNUARM.cmake"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800484 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800485 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800486 "test_regression": [True, False],
487 "test_psa_api": ["OFF"],
488 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800489 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800490 "with_bl2": [True],
491 "with_ns": [True],
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800492 "profile": ["profile_small", "profile_medium", "profile_large"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800493 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800494 },
495 "common_params": _common_tfm_builder_cfg,
496 "invalid": _common_tfm_invalid_configs + [
497 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800498 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800499 # Profile Large is only supported by AN521
500 ("mps2/an519", "*", "*",
501 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
502 ("musca_b1/sse_200", "*", "*",
503 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800504 ]
505 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800506
Karl Zhangaff558a2020-05-15 14:28:23 +0100507config_tfm_test_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100508 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800509 "toolchain_file": ["toolchain_ARMCLANG.cmake",
510 "toolchain_GNUARM.cmake"],
511 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800512 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800513 "test_regression": [True, False],
514 "test_psa_api": ["OFF"],
515 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800516 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800517 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800518 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800519 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800520 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800521 },
522 "common_params": _common_tfm_builder_cfg,
523 "invalid": _common_tfm_invalid_configs + []
524 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100525
Minos Galanakisea421232019-06-20 17:11:28 +0100526config_MUSCA_A = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800527 "tfm_platform": ["musca_a"],
528 "toolchain_file": ["toolchain_ARMCLANG.cmake",
529 "toolchain_GNUARM.cmake"],
530 "psa_api": [True, False],
531 "isolation_level": ["1", "2"],
532 "test_regression": [True, False],
533 "test_psa_api": ["OFF"],
534 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800535 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800536 "with_bl2": [True],
537 "with_ns": [True, False],
538 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800539 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800540 },
541 "common_params": _common_tfm_builder_cfg,
542 "invalid": _common_tfm_invalid_configs + []
543 }
Minos Galanakisea421232019-06-20 17:11:28 +0100544
545config_MUSCA_B1 = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100546 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800547 "toolchain_file": ["toolchain_ARMCLANG.cmake",
548 "toolchain_GNUARM.cmake"],
549 "psa_api": [True, False],
550 "isolation_level": ["1", "2"],
551 "test_regression": [True, False],
552 "test_psa_api": ["OFF"],
553 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800554 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800555 "with_bl2": [True],
556 "with_ns": [True, False],
557 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800558 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800559 },
560 "common_params": _common_tfm_builder_cfg,
561 "invalid": _common_tfm_invalid_configs + []
562 }
Minos Galanakisea421232019-06-20 17:11:28 +0100563
Mark Horvath8d281cd2020-12-07 15:20:26 +0100564config_MUSCA_B1_SE = {"seed_params": {
565 "tfm_platform": ["musca_b1/secure_enclave"],
566 "toolchain_file": ["toolchain_ARMCLANG.cmake",
567 "toolchain_GNUARM.cmake"],
568 "psa_api": [True],
569 "isolation_level": ["1"],
570 "test_regression": [False],
571 "test_psa_api": ["OFF"],
572 "cmake_build_type": ["Debug", "Release"],
573 "with_otp": ["off"],
574 "with_bl2": [True],
575 "with_ns": [False],
576 "profile": [""],
577 "partition_ps": ["ON"],
578 },
579 "common_params": _common_tfm_builder_cfg,
580 "invalid": _common_tfm_invalid_configs + []
581 }
582
Karl Zhangeffed972020-06-30 15:48:01 +0800583config_MUSCA_S1 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800584 "tfm_platform": ["musca_s1"],
585 "toolchain_file": ["toolchain_ARMCLANG.cmake",
586 "toolchain_GNUARM.cmake"],
587 "psa_api": [True, False],
588 "isolation_level": ["1", "2"],
589 "test_regression": [True, False],
590 "test_psa_api": ["OFF"],
591 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800592 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800593 "with_bl2": [True],
594 "with_ns": [True, False],
595 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800596 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800597 },
598 "common_params": _common_tfm_builder_cfg,
599 "invalid": _common_tfm_invalid_configs + []
600 }
Karl Zhangeffed972020-06-30 15:48:01 +0800601
Karl Zhangaff558a2020-05-15 14:28:23 +0100602config_release = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800603 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100604 "musca_a", "musca_b1/sse_200", "musca_s1",
Karl Zhang6919ff62021-01-05 14:17:44 +0800605 "mps3/an524"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800606 "toolchain_file": ["toolchain_ARMCLANG.cmake",
607 "toolchain_GNUARM.cmake"],
608 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800609 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800610 "test_regression": [True, False],
611 "test_psa_api": ["OFF"],
612 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800613 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800614 "with_bl2": [True, False],
615 "with_ns": [True, False],
616 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800617 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800618 },
619 "common_params": _common_tfm_builder_cfg,
620 "invalid": _common_tfm_invalid_configs + [
621 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800622 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800623 ]
624 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100625
626# Configure build manager to build several combinations
627config_AN521_PSA_API = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800628 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100629 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800630 "toolchain_file": ["toolchain_GNUARM.cmake",
631 "toolchain_ARMCLANG.cmake"],
632 "psa_api": [True, False],
633 "isolation_level": ["1", "2"],
634 "test_regression": [False],
635 "test_psa_api": ["IPC",
636 "CRYPTO",
637 "PROTECTED_STORAGE",
638 "INITIAL_ATTESTATION",
639 "INTERNAL_TRUSTED_STORAGE"],
640 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800641 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800642 "with_bl2": [True],
643 "with_ns": [True, False],
644 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800645 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100646 },
647 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800648 "invalid": _common_tfm_invalid_configs + [
649 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800650 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800651 ]
Karl Zhangaff558a2020-05-15 14:28:23 +0100652 }
653
Karl Zhangaff558a2020-05-15 14:28:23 +0100654config_AN521_PSA_IPC = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800655 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100656 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800657 "toolchain_file": ["toolchain_GNUARM.cmake",
658 "toolchain_ARMCLANG.cmake"],
659 "psa_api": [True],
660 "isolation_level": ["1", "2"],
661 "test_regression": [False],
662 "test_psa_api": ["IPC"],
663 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800664 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800665 "with_bl2": [True],
666 "with_ns": [True, False],
667 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800668 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100669 },
670 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800671 "invalid": _common_tfm_invalid_configs + [
672 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800673 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800674 ]
Karl Zhangaff558a2020-05-15 14:28:23 +0100675 }
676
Karl Zhang14573bc2020-06-08 09:23:21 +0800677config_nightly = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800678 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100679 "musca_a", "musca_b1/sse_200", "musca_s1",
Karl Zhang6919ff62021-01-05 14:17:44 +0800680 "mps3/an524", "cypress/psoc64",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100681 "musca_b1/secure_enclave"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800682 "toolchain_file": ["toolchain_GNUARM.cmake",
683 "toolchain_ARMCLANG.cmake"],
684 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800685 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800686 "test_regression": [True, False],
687 "test_psa_api": ["OFF"],
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800688 "cmake_build_type": ["Debug", "Release", "Minsizerel", "RelWithDebInfo"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800689 "with_otp": ["off"],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800690 "with_bl2": [True],
691 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800692 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800693 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800694 },
695 "common_params": _common_tfm_builder_cfg,
696 "invalid": _common_tfm_invalid_configs + [
697 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800698 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800699 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800700 "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800701 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800702 "*", "*", "*", "*", True, True, "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800703 ("mps2/an521", "*", "*", "*",
704 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
705 ("mps2/an519", "*", "*", "*",
706 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
707 ("musca_a", "*", "*", "*",
708 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100709 ("musca_b1/sse_200", "*", "*", "*",
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800710 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
711 ("musca_s1", "*", "*", "*",
712 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800713 ("mps3/an524", "*", "*", "*",
714 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800715 ]
716 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800717
Karl Zhang14573bc2020-06-08 09:23:21 +0800718config_nightly_profile = {"seed_params": {
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800719 "tfm_platform": ["mps2/an519", "mps2/an521",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100720 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800721 "toolchain_file": ["toolchain_ARMCLANG.cmake",
722 "toolchain_GNUARM.cmake"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800723 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800724 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800725 "test_regression": [True, False],
726 "test_psa_api": ["OFF"],
727 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800728 "with_otp": ["off"],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800729 "with_bl2": [True],
730 "with_ns": [True],
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800731 "profile": ["profile_small", "profile_medium", "profile_large"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800732 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800733 },
734 "common_params": _common_tfm_builder_cfg,
735 "invalid": _common_tfm_invalid_configs + [
736 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800737 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800738 # Profile Large is only supported by AN521
739 ("mps2/an519", "*", "*",
740 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
741 ("musca_b1/sse_200", "*", "*",
742 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800743 ]
744 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800745
Karl Zhang14573bc2020-06-08 09:23:21 +0800746config_nightly_PSA_API = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800747 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
748 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800749 "toolchain_file": ["toolchain_GNUARM.cmake",
750 "toolchain_ARMCLANG.cmake"],
751 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800752 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800753 "test_regression": [False],
754 "test_psa_api": ["CRYPTO",
755 "PROTECTED_STORAGE",
756 "INITIAL_ATTESTATION",
757 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800758 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800759 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800760 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800761 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800762 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800763 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800764 },
765 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800766 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800767 }
768
Karl Zhang14573bc2020-06-08 09:23:21 +0800769config_nightly_PSA_FF = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800770 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
771 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800772 "toolchain_file": ["toolchain_GNUARM.cmake",
773 "toolchain_ARMCLANG.cmake"],
774 "psa_api": [True],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800775 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800776 "test_regression": [False],
777 "test_psa_api": ["IPC"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800778 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800779 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800780 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800781 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800782 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800783 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800784 },
785 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800786 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800787 }
788
Karl Zhang14573bc2020-06-08 09:23:21 +0800789config_nightly_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100790 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800791 "toolchain_file": ["toolchain_GNUARM.cmake",
792 "toolchain_ARMCLANG.cmake"],
793 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800794 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800795 "test_regression": [True],
796 "test_psa_api": ["OFF"],
797 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800798 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800799 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800800 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800801 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800802 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800803 },
804 "common_params": _common_tfm_builder_cfg,
805 "invalid": _common_tfm_invalid_configs + []
806 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800807
Karl Zhang14573bc2020-06-08 09:23:21 +0800808config_pp_test = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800809 "tfm_platform": ["mps2/an521", "mps2/an519",
Karl Zhang0d765af2021-01-05 11:32:29 +0800810 "musca_b1/sse_200", "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800811 "toolchain_file": ["toolchain_GNUARM.cmake",
812 "toolchain_ARMCLANG.cmake"],
813 "psa_api": [True, False],
Karl Zhangde36b772021-01-08 10:17:03 +0800814 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800815 "test_regression": [True],
816 "test_psa_api": ["OFF"],
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800817 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800818 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800819 "with_bl2": [True],
820 "with_ns": [True, False],
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800821 "profile": ["", "profile_small", "profile_medium"],
822 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800823 },
824 "common_params": _common_tfm_builder_cfg,
825 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800826 # invalid configs that are not supported by TF-M
827 ("musca_s1", "*", "*", "*", "*", "*",
828 "*", "*", "*", "*", "profile_medium", "*"),
829 # valid configs supported by TF-M but not needed in per-patch
830 ("*", "*", "*", "1", "*", "*", "Release",
831 "*", "*", "*", "*", "*"),
832 ("*", "*", "*", "1", "*", "*", "Minsizerel",
833 "*", "*", "*", "*", "*"),
834 ("*", "*", "*", "2", "*", "*", "Debug",
835 "*", "*", "*", "*", "*"),
836 ("*", "*", "*", "2", "*", "*", "Minsizerel",
837 "*", "*", "*", "*", "*"),
838 ("*", "*", "*", "3", "*", "*", "Debug",
839 "*", "*", "*", "*", "*"),
840 ("*", "*", "*", "3", "*", "*", "Release",
841 "*", "*", "*", "*", "*"),
842 ("mps2/an519", "*", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800843 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800844 ("musca_s1", "*", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800845 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800846 ("mps2/an519", "*", "*", "*", "*", "*",
847 "*", "*", "*", "*", "profile_medium", "*"),
848 ("mps2/an521", "*", "*", "*", "*", "*",
849 "*", "*", "*", "*", "profile_medium", "*"),
850 ("*", "toolchain_GNUARM.cmake", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800851 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800852 ("*", "toolchain_ARMCLANG.cmake", "*", "*", "*", "*",
853 "*", "*", "*", "*", "profile_medium", "*"),
854 ("*", "toolchain_ARMCLANG.cmake", "False", "*", "*", "*",
855 "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800856 ]
857 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800858
Karl Zhang14573bc2020-06-08 09:23:21 +0800859config_pp_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100860 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800861 "toolchain_file": ["toolchain_GNUARM.cmake"],
862 "psa_api": [True, False],
863 "isolation_level": ["1", "2"],
864 "test_regression": [True],
865 "test_psa_api": ["OFF"],
866 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800867 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800868 "with_bl2": [True],
869 "with_ns": [True, False],
870 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800871 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800872 },
873 "common_params": _common_tfm_builder_cfg,
874 "invalid": _common_tfm_invalid_configs + []
875 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800876
877# Configure build manager to build several combinations
878config_pp_PSA_API = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800879 "tfm_platform": ["mps2/an521"],
880 "toolchain_file": ["toolchain_GNUARM.cmake"],
881 "psa_api": [True],
882 "isolation_level": ["2"],
883 "test_regression": [False],
884 "test_psa_api": ["IPC",
885 "CRYPTO",
886 "PROTECTED_STORAGE",
887 "INITIAL_ATTESTATION",
888 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800889 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800890 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800891 "with_bl2": [True],
892 "with_ns": [True, False],
893 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800894 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800895 },
896 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800897 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800898 }
899
Karl Zhang14573bc2020-06-08 09:23:21 +0800900config_pp_PSoC64 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800901 "tfm_platform": ["cypress/psoc64"],
902 "toolchain_file": ["toolchain_GNUARM.cmake"],
903 "psa_api": [True],
904 "isolation_level": ["1", "2"],
905 "test_regression": [True],
906 "test_psa_api": ["OFF"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800907 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800908 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800909 "with_bl2": [False],
910 "with_ns": [True, False],
911 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800912 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800913 },
914 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800915 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800916 }
917
Minos Galanakisea421232019-06-20 17:11:28 +0100918# Configruation used for document building
919config_doxygen = {"common_params": {
920 "config_type": "tf-m_documents",
921 "codebase_root_dir": "tf-m",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800922 "build_cmds": {"all": ["-DTFM_PLATFORM=mps2/an521 "
Fathi Boudra324fee72020-11-20 10:31:12 +0100923 "-DTFM_TOOLCHAIN_FILE=%(_tfm_code_dir_)s/toolchain_GNUARM.cmake"
Minos Galanakisea421232019-06-20 17:11:28 +0100924 "-DCMAKE_BUILD_TYPE=Debug "
Minos Galanakisea421232019-06-20 17:11:28 +0100925 "%(_tbm_code_dir_)s/",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800926 "cmake --build ./ -- docs"]},
927 "artifact_capture_rex": r'%(_tbm_build_dir_)s/docs/'
928 r'reference_manual/(?:latex|html)'
Minos Galanakisea421232019-06-20 17:11:28 +0100929 r'/(\w+\.(?:html|md|pdf))$',
930 },
Xinyu Zhangb708f572020-09-15 11:43:46 +0800931 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100932 }
933
Karl Zhangaff558a2020-05-15 14:28:23 +0100934# Configuration used in testing
Minos Galanakisea421232019-06-20 17:11:28 +0100935config_debug = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800936 "tfm_platform": ["mps2/an521"],
937 "toolchain_file": ["toolchain_ARMCLANG.cmake"],
938 "psa_api": [False],
939 "isolation_level": ["1"],
940 "test_regression": [False],
941 "test_psa_api": ["OFF"],
Minos Galanakisea421232019-06-20 17:11:28 +0100942 "cmake_build_type": ["Debug"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800943 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800944 "with_bl2": [True],
945 "with_ns": [True],
946 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800947 "partition_ps": ["ON"],
Minos Galanakisea421232019-06-20 17:11:28 +0100948 },
949 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800950 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100951 }
952
Dean Birch4c6ad622020-03-13 11:28:03 +0000953# Configuration used in CI
Xinyu Zhangb708f572020-09-15 11:43:46 +0800954config_ci = {"seed_params": {
955 "tfm_platform": ["mps2/an521"],
956 "toolchain_file": ["toolchain_ARMCLANG.cmake",
957 "toolchain_GNUARM.cmake"],
958 "psa_api": [True, False],
959 "isolation_level": ["1", "2"],
960 "test_regression": [True, False],
961 "test_psa_api": ["OFF"],
962 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800963 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800964 "with_bl2": [True, False],
965 "with_ns": [True],
966 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800967 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800968 },
969 "common_params": _common_tfm_builder_cfg,
970 "invalid": _common_tfm_invalid_configs + [
971 ("*", "toolchain_ARMCLANG.cmake", True, "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800972 "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800973 ("*", "toolchain_ARMCLANG.cmake", False, "1", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800974 "*", "*", False, "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800975 ]
976 }
Matthew Hartfb6fd362020-03-04 21:03:59 +0000977
Xinyu Zhangb708f572020-09-15 11:43:46 +0800978config_lava_debug = {"seed_params": {
979 "tfm_platform": ["mps2/an521", "mps2/an519"],
980 "toolchain_file": ["toolchain_GNUARM.cmake"],
981 "psa_api": [True, False],
982 "isolation_level": ["1", "2"],
983 "test_regression": [True],
984 "test_psa_api": ["OFF"],
985 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800986 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800987 "with_bl2": [True, False],
988 "with_ns": [True, False],
989 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800990 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800991 },
992 "common_params": _common_tfm_builder_cfg,
993 "invalid": _common_tfm_invalid_configs + [
994 ("mps2/an521", "toolchain_GNUARM.cmake", True, "2", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800995 "*", "*", True, "*", "*", "*")
Xinyu Zhangb708f572020-09-15 11:43:46 +0800996 ]
997 }
Dean Birch4c6ad622020-03-13 11:28:03 +0000998
Karl Zhangaff558a2020-05-15 14:28:23 +0100999_builtin_configs = {
Karl Zhang14573bc2020-06-08 09:23:21 +08001000 #release test group
Karl Zhangaff558a2020-05-15 14:28:23 +01001001 "tfm_test": config_tfm_test,
1002 "tfm_test2": config_tfm_test2,
Karl Zhang14573bc2020-06-08 09:23:21 +08001003 "tfm_profile": config_tfm_profile,
Karl Zhangaff558a2020-05-15 14:28:23 +01001004 "tfm_test_otp": config_tfm_test_OTP,
1005 "psa_api": config_PSA_API,
1006 "psa_api_otp": config_PSA_API_OTP,
1007 "psa_ff": config_PSA_FF,
1008 "psa_ff_otp": config_PSA_FF_OTP,
Karl Zhang14573bc2020-06-08 09:23:21 +08001009 "tfm_psoc64": config_PSOC64,
1010
1011 #nightly test group
1012 "nightly_test": config_nightly,
1013 "nightly_profile": config_nightly_profile,
1014 "nightly_psa_api": config_nightly_PSA_API,
1015 "nightly_ff": config_nightly_PSA_FF,
1016 "nightly_otp": config_nightly_OTP,
1017
1018 #per patch test group
1019 "pp_test": config_pp_test,
1020 "pp_OTP": config_pp_OTP,
1021 "pp_PSA_API": config_pp_PSA_API,
1022 "pp_psoc64": config_pp_PSoC64,
1023
1024 #full test group in the old CI
Karl Zhangaff558a2020-05-15 14:28:23 +01001025 "full": config_full,
Karl Zhang14573bc2020-06-08 09:23:21 +08001026
1027 #specific test group
Karl Zhangaff558a2020-05-15 14:28:23 +01001028 "an524": config_AN524,
Minos Galanakisea421232019-06-20 17:11:28 +01001029 "an521": config_AN521,
Karl Zhang14573bc2020-06-08 09:23:21 +08001030 "an521_psa_api": config_AN521_PSA_API,
1031 "an521_psa_ipc": config_AN521_PSA_IPC,
Minos Galanakisea421232019-06-20 17:11:28 +01001032 "an519": config_AN519,
1033 "musca_a": config_MUSCA_A,
1034 "musca_b1": config_MUSCA_B1,
Mark Horvath8d281cd2020-12-07 15:20:26 +01001035 "musca_b1_se": config_MUSCA_B1_SE,
Karl Zhangeffed972020-06-30 15:48:01 +08001036 "musca_s1": config_MUSCA_S1,
Karl Zhang96dfe2d2020-05-11 11:31:40 +08001037 "psoc64": config_PSOC64,
Minos Galanakisea421232019-06-20 17:11:28 +01001038 "ipc": config_IPC,
1039 "doxygen": config_doxygen,
Dean Birch4c6ad622020-03-13 11:28:03 +00001040 "debug": config_debug,
Karl Zhangaff558a2020-05-15 14:28:23 +01001041 "release": config_release,
Matthew Hartfb6fd362020-03-04 21:03:59 +00001042 "debug": config_debug,
Karl Zhang14573bc2020-06-08 09:23:21 +08001043
1044 #DevOps team test group
Matthew Hartfb6fd362020-03-04 21:03:59 +00001045 "lava_debug": config_lava_debug,
Xinyu Zhanga1000582020-12-04 15:25:24 +08001046 "ci": config_ci}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001047
1048if __name__ == '__main__':
1049 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001050
Minos Galanakisea421232019-06-20 17:11:28 +01001051 # Default behavior is to export refference config when called
1052 _dir = os.getcwd()
1053 from utils import save_json
1054 for _cname, _cfg in _builtin_configs.items():
1055 _fname = os.path.join(_dir, _cname + ".json")
1056 print("Exporting config %s" % _fname)
1057 save_json(_fname, _cfg)