blob: b87fcf229c7f14fd1ee8644d77b3fdf61a5cc644 [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 = [
Karl Zhangc858a722021-03-22 21:38:19 +0800144 # Load range overlap on Musca for IPC Debug type: T895
Xinyu Zhang6bf39f52021-03-19 17:03:09 +0800145 ("musca_b1/sse_200", "toolchain_ARMCLANG.cmake", "*", "*", "*", "IPC", "Debug", "*", "*", "*", "*", "*"),
Karl Zhangc858a722021-03-22 21:38:19 +0800146 ("musca_s1", "toolchain_ARMCLANG.cmake", "*", "*", "*", "IPC", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800147 # LVL2 and LVL3 requires PSA api
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800148 ("*", "*", False, "2", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800149 ("*", "*", False, "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800150 # Regression requires NS
151 ("*", "*", "*", "*", True, "*", "*", "*", "*", False, "*", "*"),
Xinyu Zhang11d66112020-11-04 15:38:29 +0800152 # psoc64 requires PSA api
153 ("cypress/psoc64", "*", False, "*", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800154 # No PSA_ACK with regression
155 ("*", "*", "*", "*", True, "IPC", "*", "*", "*", "*", "*", "*"),
156 ("*", "*", "*", "*", True, "CRYPTO", "*", "*", "*", "*", "*", "*"),
157 ("*", "*", "*", "*", True, "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
158 ("*", "*", "*", "*", True, "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
159 ("*", "*", "*", "*", True, "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
160 # PSA_ACK requires NS
161 ("*", "*", "*", "*", "*", "IPC", "*", "*", "*", False, "*", "*"),
162 ("*", "*", "*", "*", "*", "CRYPTO", "*", "*", "*", False, "*", "*"),
163 ("*", "*", "*", "*", "*", "PROTECTED_STORAGE", "*", "*", "*", False, "*", "*"),
164 ("*", "*", "*", "*", "*", "INITIAL_ATTESTATION", "*", "*", "*", False, "*", "*"),
165 ("*", "*", "*", "*", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", False, "*", "*"),
Xinyu Zhang3227da42021-03-19 17:37:17 +0800166 # PSA_ACK does not support LVL3
167 ("*", "*", "*", "3", "*", "IPC", "*", "*", "*", "*", "*", "*"),
168 ("*", "*", "*", "3", "*", "CRYPTO", "*", "*", "*", "*", "*", "*"),
169 ("*", "*", "*", "3", "*", "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
170 ("*", "*", "*", "3", "*", "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
171 ("*", "*", "*", "3", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800172 # Musca requires BL2
173 ("musca_a", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100174 ("musca_b1/sse_200", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800175 ("musca_s1", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
176 # psoc64 cannot use BL2
177 ("cypress/psoc64", "*", "*", "*", "*", "*", "*", "*", True, "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800178 # psoc64 does not support Debug build type
179 ("cypress/psoc64", "*", "*", "*", "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800180 # Musca b1 does not support Profile S
Mark Horvath8d281cd2020-12-07 15:20:26 +0100181 ("musca_b1/sse_200", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
182 # Musca B1 Secure Enclave requires PSA api, BL2, and supports only Isolation Level 1
183 ("musca_b1/secure_enclave", "*", False, "*", "*", "*", "*", "*", "*", "*", "*", "*"),
184 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", False, "*", "*", "*"),
185 ("musca_b1/secure_enclave", "*", "*", "2", "*", "*", "*", "*", "*", "*", "*", "*"),
186 # Musca B1 Secure Enclave does not support tests, profiles, NS side building
187 ("musca_b1/secure_enclave", "*", "*", "*", True, "*", "*", "*", "*", "*", "*", "*"),
188 ("musca_b1/secure_enclave", "*", "*", "*", "*", "IPC", "*", "*", "*", "*", "*", "*"),
189 ("musca_b1/secure_enclave", "*", "*", "*", "*", "CRYPTO", "*", "*", "*", "*", "*", "*"),
190 ("musca_b1/secure_enclave", "*", "*", "*", "*", "PROTECTED_STORAGE", "*", "*", "*", "*", "*", "*"),
191 ("musca_b1/secure_enclave", "*", "*", "*", "*", "INITIAL_ATTESTATION", "*", "*", "*", "*", "*", "*"),
192 ("musca_b1/secure_enclave", "*", "*", "*", "*", "INTERNAL_TRUSTED_STORAGE", "*", "*", "*", "*", "*", "*"),
193 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
194 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
195 ("musca_b1/secure_enclave", "*", "*", "*", "*", "*", "*", "*", "*", True, "*", "*"),
Xinyu Zhang709c1542020-11-02 18:41:07 +0800196 # PARTITION_PS could be OFF only for Profile S and M
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800197 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "", "OFF"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800198 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_large", "OFF"),
Xinyu Zhang709c1542020-11-02 18:41:07 +0800199 # PARTITION_PS should be OFF for Profile S
200 ("*", "*", "*", "*", "*", "*", "*", "*", "*", "*", "profile_small", "ON"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800201 # Proile M only support for PSA_API
202 ("*", "*", False, "*", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
203 # Profile M only support for Isolation Level 2
204 ("*", "*", "*", "1", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
Xinyu Zhange8de4512020-11-13 10:37:56 +0800205 ("*", "*", "*", "3", "*", "*", "*", "*", "*", "*", "profile_medium", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800206 # Profile L only support for Isolation Level 3
207 ("*", "*", "*", "1", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
208 ("*", "*", "*", "2", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800209 # Profile S does not support PSA_API
210 ("*", "*", True, "*", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
211 # Profile S only supports Isolation Level 2
212 ("*", "*", "*", "2", "*", "*", "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800213 # Only AN521 and MUSCA_B1 support Isolation Level 3
214 ("mps2/an519", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800215 ("mps3/an524", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800216 ("musca_a", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
217 ("musca_s1", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
218 ("cypress/psoc64", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100219 ("musca_b1/secure_enclave", "*", "*", "3", "*", "*", "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800220 ]
221
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100222# Configure build manager to build several combinations
Karl Zhangaff558a2020-05-15 14:28:23 +0100223config_AN524 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800224 "tfm_platform": ["mps3/an524"],
225 "toolchain_file": ["toolchain_GNUARM.cmake",
226 "toolchain_ARMCLANG.cmake"],
227 "psa_api": [True, False],
228 "isolation_level": ["1", "2"],
229 "test_regression": [True, False],
230 "test_psa_api": ["OFF"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100231 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800232 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800233 "with_bl2": [True, False],
234 "with_ns": [True, False],
235 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800236 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100237 },
238 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800239 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100240 }
241
Karl Zhangaff558a2020-05-15 14:28:23 +0100242config_AN521 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800243 "tfm_platform": ["mps2/an521"],
244 "toolchain_file": ["toolchain_GNUARM.cmake",
245 "toolchain_ARMCLANG.cmake"],
246 "psa_api": [True, False],
247 "isolation_level": ["1", "2"],
248 "test_regression": [True, False],
249 "test_psa_api": ["OFF"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100250 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800251 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800252 "with_bl2": [True, False],
253 "with_ns": [True, False],
254 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800255 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100256 },
257 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800258 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100259 }
260
Karl Zhangaff558a2020-05-15 14:28:23 +0100261config_PSA_API = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800262 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
263 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800264 "toolchain_file": ["toolchain_GNUARM.cmake",
265 "toolchain_ARMCLANG.cmake"],
266 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800267 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800268 "test_regression": [False],
269 "test_psa_api": ["CRYPTO",
270 "PROTECTED_STORAGE",
271 "INITIAL_ATTESTATION",
272 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100273 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800274 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800275 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800276 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800277 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800278 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100279 },
280 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800281 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100282 }
283
Karl Zhangaff558a2020-05-15 14:28:23 +0100284config_PSA_FF = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800285 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
286 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800287 "toolchain_file": ["toolchain_GNUARM.cmake",
288 "toolchain_ARMCLANG.cmake"],
289 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800290 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800291 "test_regression": [False],
292 "test_psa_api": ["IPC"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100293 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800294 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800295 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800296 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800297 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800298 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100299 },
300 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800301 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100302 }
303
Karl Zhangaff558a2020-05-15 14:28:23 +0100304config_PSA_API_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100305 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800306 "toolchain_file": ["toolchain_GNUARM.cmake",
307 "toolchain_ARMCLANG.cmake"],
308 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800309 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800310 "test_regression": [False],
311 "test_psa_api": ["CRYPTO",
312 "PROTECTED_STORAGE",
313 "INITIAL_ATTESTATION",
314 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100315 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800316 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800317 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800318 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800319 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800320 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100321 },
322 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800323 "invalid": _common_tfm_invalid_configs + []
Karl Zhangaff558a2020-05-15 14:28:23 +0100324 }
Minos Galanakisea421232019-06-20 17:11:28 +0100325
Xinyu Zhangb708f572020-09-15 11:43:46 +0800326config_PSA_FF_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100327 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800328 "toolchain_file": ["toolchain_GNUARM.cmake",
329 "toolchain_ARMCLANG.cmake"],
330 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800331 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800332 "test_regression": [False],
333 "test_psa_api": ["IPC"],
334 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800335 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800336 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800337 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800338 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800339 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800340 },
341 "common_params": _common_tfm_builder_cfg,
342 "invalid": _common_tfm_invalid_configs + []
343 }
344
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800345config_PSOC64 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800346 "tfm_platform": ["cypress/psoc64"],
347 "toolchain_file": ["toolchain_GNUARM.cmake",
348 "toolchain_ARMCLANG.cmake"],
349 "psa_api": [True],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800350 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800351 "test_regression": [True],
352 "test_psa_api": ["OFF"],
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800353 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800354 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800355 "with_bl2": [False],
356 "with_ns": [True, False],
357 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800358 "partition_ps": ["ON"],
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800359 },
360 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800361 "invalid": _common_tfm_invalid_configs + []
Karl Zhang96dfe2d2020-05-11 11:31:40 +0800362 }
363
Minos Galanakisea421232019-06-20 17:11:28 +0100364config_AN519 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800365 "tfm_platform": ["mps2/an519"],
366 "toolchain_file": ["toolchain_GNUARM.cmake",
367 "toolchain_ARMCLANG.cmake"],
368 "psa_api": [True, False],
369 "isolation_level": ["1", "2"],
370 "test_regression": [True, False],
371 "test_psa_api": ["OFF"],
Minos Galanakisea421232019-06-20 17:11:28 +0100372 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800373 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800374 "with_bl2": [True, False],
375 "with_ns": [True, False],
376 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800377 "partition_ps": ["ON"],
Minos Galanakisea421232019-06-20 17:11:28 +0100378 },
379 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800380 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100381 }
382
Xinyu Zhangb708f572020-09-15 11:43:46 +0800383config_IPC = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100384 "tfm_platform": ["mps2/an521", "mps2/an519", "musca_a",
385 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800386 "toolchain_file": ["toolchain_GNUARM.cmake",
387 "toolchain_ARMCLANG.cmake"],
388 "psa_api": [True],
389 "isolation_level": ["1", "2"],
390 "test_regression": [True, False],
391 "test_psa_api": ["OFF"],
392 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800393 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800394 "with_bl2": [True, False],
395 "with_ns": [True, False],
396 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800397 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800398 },
Minos Galanakisea421232019-06-20 17:11:28 +0100399 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800400 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100401 }
402
Minos Galanakisea421232019-06-20 17:11:28 +0100403config_full = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800404 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100405 "musca_a", "musca_b1/sse_200",
Karl Zhang6919ff62021-01-05 14:17:44 +0800406 "mps3/an524", "cypress/psoc64",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100407 "musca_b1/secure_enclave"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800408 "toolchain_file": ["toolchain_GNUARM.cmake",
409 "toolchain_ARMCLANG.cmake"],
410 "psa_api": [True, False],
411 "isolation_level": ["1", "2"],
412 "test_regression": [True, False],
413 "test_psa_api": ["OFF"],
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800414 "cmake_build_type": ["Debug", "Release", "RelWithDebInfo"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800415 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800416 "with_bl2": [True, False],
417 "with_ns": [True, False],
418 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800419 "partition_ps": ["ON"],
Dean Birchd6ce2c82020-05-13 13:16:15 +0100420 },
421 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800422 "invalid": _common_tfm_invalid_configs + [
423 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800424 "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800425 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800426 "*", "*", "*", "*", True, True, "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800427 ("mps2/an521", "*", "*", "*",
428 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
429 ("mps2/an519", "*", "*", "*",
430 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
431 ("musca_a", "*", "*", "*",
432 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100433 ("musca_b1/sse_200", "*", "*", "*",
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800434 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800435 ("mps3/an524", "*", "*", "*",
436 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800437 ]
Karl Zhang81a76772020-05-11 18:28:52 +0800438 }
439
Karl Zhangaff558a2020-05-15 14:28:23 +0100440config_tfm_test = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800441 "tfm_platform": ["mps2/an521", "musca_a",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100442 "musca_b1/sse_200", "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800443 "toolchain_file": ["toolchain_ARMCLANG.cmake",
444 "toolchain_GNUARM.cmake"],
445 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800446 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800447 "test_regression": [True, False],
448 "test_psa_api": ["OFF"],
449 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800450 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800451 "with_bl2": [True],
452 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800453 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800454 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800455 },
456 "common_params": _common_tfm_builder_cfg,
457 "invalid": _common_tfm_invalid_configs + []
458 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800459
Karl Zhangaff558a2020-05-15 14:28:23 +0100460config_tfm_test2 = {"seed_params": {
Karl Zhang6919ff62021-01-05 14:17:44 +0800461 "tfm_platform": ["mps2/an519", "mps3/an524"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800462 "toolchain_file": ["toolchain_ARMCLANG.cmake",
463 "toolchain_GNUARM.cmake"],
464 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800465 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800466 "test_regression": [True, False],
467 "test_psa_api": ["OFF"],
468 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800469 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800470 "with_bl2": [True],
471 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800472 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800473 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800474 },
475 "common_params": _common_tfm_builder_cfg,
476 "invalid": _common_tfm_invalid_configs + [
477 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800478 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800479 ]
480 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100481
Karl Zhang14573bc2020-06-08 09:23:21 +0800482config_tfm_profile = {"seed_params": {
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800483 "tfm_platform": ["mps2/an519", "mps2/an521",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100484 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800485 "toolchain_file": ["toolchain_ARMCLANG.cmake",
486 "toolchain_GNUARM.cmake"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800487 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800488 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800489 "test_regression": [True, False],
490 "test_psa_api": ["OFF"],
491 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800492 "with_otp": ["off"],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800493 "with_bl2": [True],
494 "with_ns": [True],
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800495 "profile": ["profile_small", "profile_medium", "profile_large"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800496 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800497 },
498 "common_params": _common_tfm_builder_cfg,
499 "invalid": _common_tfm_invalid_configs + [
500 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800501 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800502 # Profile Large is only supported by AN521
503 ("mps2/an519", "*", "*",
504 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
505 ("musca_b1/sse_200", "*", "*",
506 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800507 ]
508 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800509
Karl Zhangaff558a2020-05-15 14:28:23 +0100510config_tfm_test_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100511 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800512 "toolchain_file": ["toolchain_ARMCLANG.cmake",
513 "toolchain_GNUARM.cmake"],
514 "psa_api": [True, False],
Xinyu Zhang6922b7a2020-11-05 15:21:27 +0800515 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800516 "test_regression": [True, False],
517 "test_psa_api": ["OFF"],
518 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800519 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800520 "with_bl2": [True],
Xinyu Zhang5564d8b2020-11-13 10:22:27 +0800521 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800522 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800523 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800524 },
525 "common_params": _common_tfm_builder_cfg,
526 "invalid": _common_tfm_invalid_configs + []
527 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100528
Minos Galanakisea421232019-06-20 17:11:28 +0100529config_MUSCA_A = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800530 "tfm_platform": ["musca_a"],
531 "toolchain_file": ["toolchain_ARMCLANG.cmake",
532 "toolchain_GNUARM.cmake"],
533 "psa_api": [True, False],
534 "isolation_level": ["1", "2"],
535 "test_regression": [True, False],
536 "test_psa_api": ["OFF"],
537 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800538 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800539 "with_bl2": [True],
540 "with_ns": [True, False],
541 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800542 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800543 },
544 "common_params": _common_tfm_builder_cfg,
545 "invalid": _common_tfm_invalid_configs + []
546 }
Minos Galanakisea421232019-06-20 17:11:28 +0100547
548config_MUSCA_B1 = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100549 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800550 "toolchain_file": ["toolchain_ARMCLANG.cmake",
551 "toolchain_GNUARM.cmake"],
552 "psa_api": [True, False],
553 "isolation_level": ["1", "2"],
554 "test_regression": [True, False],
555 "test_psa_api": ["OFF"],
556 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800557 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800558 "with_bl2": [True],
559 "with_ns": [True, False],
560 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800561 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800562 },
563 "common_params": _common_tfm_builder_cfg,
564 "invalid": _common_tfm_invalid_configs + []
565 }
Minos Galanakisea421232019-06-20 17:11:28 +0100566
Mark Horvath8d281cd2020-12-07 15:20:26 +0100567config_MUSCA_B1_SE = {"seed_params": {
568 "tfm_platform": ["musca_b1/secure_enclave"],
569 "toolchain_file": ["toolchain_ARMCLANG.cmake",
570 "toolchain_GNUARM.cmake"],
571 "psa_api": [True],
572 "isolation_level": ["1"],
573 "test_regression": [False],
574 "test_psa_api": ["OFF"],
575 "cmake_build_type": ["Debug", "Release"],
576 "with_otp": ["off"],
577 "with_bl2": [True],
578 "with_ns": [False],
579 "profile": [""],
580 "partition_ps": ["ON"],
581 },
582 "common_params": _common_tfm_builder_cfg,
583 "invalid": _common_tfm_invalid_configs + []
584 }
585
Karl Zhangeffed972020-06-30 15:48:01 +0800586config_MUSCA_S1 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800587 "tfm_platform": ["musca_s1"],
588 "toolchain_file": ["toolchain_ARMCLANG.cmake",
589 "toolchain_GNUARM.cmake"],
590 "psa_api": [True, False],
591 "isolation_level": ["1", "2"],
592 "test_regression": [True, False],
593 "test_psa_api": ["OFF"],
594 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800595 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800596 "with_bl2": [True],
597 "with_ns": [True, False],
598 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800599 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800600 },
601 "common_params": _common_tfm_builder_cfg,
602 "invalid": _common_tfm_invalid_configs + []
603 }
Karl Zhangeffed972020-06-30 15:48:01 +0800604
Karl Zhangaff558a2020-05-15 14:28:23 +0100605config_release = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800606 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100607 "musca_a", "musca_b1/sse_200", "musca_s1",
Karl Zhang6919ff62021-01-05 14:17:44 +0800608 "mps3/an524"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800609 "toolchain_file": ["toolchain_ARMCLANG.cmake",
610 "toolchain_GNUARM.cmake"],
611 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800612 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800613 "test_regression": [True, False],
614 "test_psa_api": ["OFF"],
615 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800616 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800617 "with_bl2": [True, False],
618 "with_ns": [True, False],
619 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800620 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800621 },
622 "common_params": _common_tfm_builder_cfg,
623 "invalid": _common_tfm_invalid_configs + [
624 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800625 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800626 ]
627 }
Karl Zhangaff558a2020-05-15 14:28:23 +0100628
629# Configure build manager to build several combinations
630config_AN521_PSA_API = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800631 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100632 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800633 "toolchain_file": ["toolchain_GNUARM.cmake",
634 "toolchain_ARMCLANG.cmake"],
635 "psa_api": [True, False],
636 "isolation_level": ["1", "2"],
637 "test_regression": [False],
638 "test_psa_api": ["IPC",
639 "CRYPTO",
640 "PROTECTED_STORAGE",
641 "INITIAL_ATTESTATION",
642 "INTERNAL_TRUSTED_STORAGE"],
643 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800644 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800645 "with_bl2": [True],
646 "with_ns": [True, False],
647 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800648 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100649 },
650 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800651 "invalid": _common_tfm_invalid_configs + [
652 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800653 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800654 ]
Karl Zhangaff558a2020-05-15 14:28:23 +0100655 }
656
Karl Zhangaff558a2020-05-15 14:28:23 +0100657config_AN521_PSA_IPC = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800658 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100659 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800660 "toolchain_file": ["toolchain_GNUARM.cmake",
661 "toolchain_ARMCLANG.cmake"],
662 "psa_api": [True],
663 "isolation_level": ["1", "2"],
664 "test_regression": [False],
665 "test_psa_api": ["IPC"],
666 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800667 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800668 "with_bl2": [True],
669 "with_ns": [True, False],
670 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800671 "partition_ps": ["ON"],
Karl Zhangaff558a2020-05-15 14:28:23 +0100672 },
673 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800674 "invalid": _common_tfm_invalid_configs + [
675 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800676 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800677 ]
Karl Zhangaff558a2020-05-15 14:28:23 +0100678 }
679
Karl Zhang14573bc2020-06-08 09:23:21 +0800680config_nightly = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800681 "tfm_platform": ["mps2/an521", "mps2/an519",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100682 "musca_a", "musca_b1/sse_200", "musca_s1",
Karl Zhang6919ff62021-01-05 14:17:44 +0800683 "mps3/an524", "cypress/psoc64",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100684 "musca_b1/secure_enclave"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800685 "toolchain_file": ["toolchain_GNUARM.cmake",
686 "toolchain_ARMCLANG.cmake"],
687 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800688 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800689 "test_regression": [True, False],
690 "test_psa_api": ["OFF"],
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800691 "cmake_build_type": ["Debug", "Release", "Minsizerel", "RelWithDebInfo"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800692 "with_otp": ["off"],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800693 "with_bl2": [True],
694 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800695 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800696 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800697 },
698 "common_params": _common_tfm_builder_cfg,
699 "invalid": _common_tfm_invalid_configs + [
700 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800701 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800702 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800703 "*", "*", "Debug", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800704 ("cypress/psoc64", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800705 "*", "*", "*", "*", True, True, "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800706 ("mps2/an521", "*", "*", "*",
707 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
708 ("mps2/an519", "*", "*", "*",
709 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
710 ("musca_a", "*", "*", "*",
711 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Mark Horvath8d281cd2020-12-07 15:20:26 +0100712 ("musca_b1/sse_200", "*", "*", "*",
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800713 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
714 ("musca_s1", "*", "*", "*",
715 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangc61c87a2020-11-03 11:14:49 +0800716 ("mps3/an524", "*", "*", "*",
717 "*", "*", "RelWithDebInfo", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800718 ]
719 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800720
Karl Zhang14573bc2020-06-08 09:23:21 +0800721config_nightly_profile = {"seed_params": {
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800722 "tfm_platform": ["mps2/an519", "mps2/an521",
Mark Horvath8d281cd2020-12-07 15:20:26 +0100723 "musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800724 "toolchain_file": ["toolchain_ARMCLANG.cmake",
725 "toolchain_GNUARM.cmake"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800726 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800727 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800728 "test_regression": [True, False],
729 "test_psa_api": ["OFF"],
730 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800731 "with_otp": ["off"],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800732 "with_bl2": [True],
733 "with_ns": [True],
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800734 "profile": ["profile_small", "profile_medium", "profile_large"],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800735 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800736 },
737 "common_params": _common_tfm_builder_cfg,
738 "invalid": _common_tfm_invalid_configs + [
739 ("mps2/an519", "toolchain_GNUARM.cmake", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800740 "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800741 # Profile Large is only supported by AN521
742 ("mps2/an519", "*", "*",
743 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
744 ("musca_b1/sse_200", "*", "*",
745 "*", "*", "*", "*", "*", "*", "*", "profile_large", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800746 ]
747 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800748
Karl Zhang14573bc2020-06-08 09:23:21 +0800749config_nightly_PSA_API = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800750 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
751 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800752 "toolchain_file": ["toolchain_GNUARM.cmake",
753 "toolchain_ARMCLANG.cmake"],
754 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800755 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800756 "test_regression": [False],
757 "test_psa_api": ["CRYPTO",
758 "PROTECTED_STORAGE",
759 "INITIAL_ATTESTATION",
760 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800761 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800762 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800763 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800764 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800765 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800766 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800767 },
768 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800769 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800770 }
771
Karl Zhang14573bc2020-06-08 09:23:21 +0800772config_nightly_PSA_FF = {"seed_params": {
Karl Zhang5ccb5522021-03-01 22:16:29 +0800773 "tfm_platform": ["mps2/an521", "musca_b1/sse_200",
774 "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800775 "toolchain_file": ["toolchain_GNUARM.cmake",
776 "toolchain_ARMCLANG.cmake"],
777 "psa_api": [True],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800778 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800779 "test_regression": [False],
780 "test_psa_api": ["IPC"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800781 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800782 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800783 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800784 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800785 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800786 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800787 },
788 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800789 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800790 }
791
Karl Zhang14573bc2020-06-08 09:23:21 +0800792config_nightly_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100793 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800794 "toolchain_file": ["toolchain_GNUARM.cmake",
795 "toolchain_ARMCLANG.cmake"],
796 "psa_api": [True, False],
Xinyu Zhangb1c550f2020-10-28 15:32:38 +0800797 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800798 "test_regression": [True],
799 "test_psa_api": ["OFF"],
800 "cmake_build_type": ["Debug", "Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800801 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800802 "with_bl2": [True],
Xinyu Zhang55363aa2020-11-16 16:38:30 +0800803 "with_ns": [True],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800804 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800805 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800806 },
807 "common_params": _common_tfm_builder_cfg,
808 "invalid": _common_tfm_invalid_configs + []
809 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800810
Karl Zhang14573bc2020-06-08 09:23:21 +0800811config_pp_test = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800812 "tfm_platform": ["mps2/an521", "mps2/an519",
Karl Zhang0d765af2021-01-05 11:32:29 +0800813 "musca_b1/sse_200", "musca_s1"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800814 "toolchain_file": ["toolchain_GNUARM.cmake",
815 "toolchain_ARMCLANG.cmake"],
816 "psa_api": [True, False],
Karl Zhangde36b772021-01-08 10:17:03 +0800817 "isolation_level": ["1", "2", "3"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800818 "test_regression": [True],
819 "test_psa_api": ["OFF"],
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800820 "cmake_build_type": ["Debug", "Release", "Minsizerel"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800821 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800822 "with_bl2": [True],
823 "with_ns": [True, False],
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800824 "profile": ["", "profile_small", "profile_medium"],
825 "partition_ps": ["ON", "OFF"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800826 },
827 "common_params": _common_tfm_builder_cfg,
828 "invalid": _common_tfm_invalid_configs + [
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800829 # invalid configs that are not supported by TF-M
830 ("musca_s1", "*", "*", "*", "*", "*",
831 "*", "*", "*", "*", "profile_medium", "*"),
832 # valid configs supported by TF-M but not needed in per-patch
833 ("*", "*", "*", "1", "*", "*", "Release",
834 "*", "*", "*", "*", "*"),
835 ("*", "*", "*", "1", "*", "*", "Minsizerel",
836 "*", "*", "*", "*", "*"),
837 ("*", "*", "*", "2", "*", "*", "Debug",
838 "*", "*", "*", "*", "*"),
839 ("*", "*", "*", "2", "*", "*", "Minsizerel",
840 "*", "*", "*", "*", "*"),
841 ("*", "*", "*", "3", "*", "*", "Debug",
842 "*", "*", "*", "*", "*"),
843 ("*", "*", "*", "3", "*", "*", "Release",
844 "*", "*", "*", "*", "*"),
845 ("mps2/an519", "*", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800846 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800847 ("musca_s1", "*", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800848 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800849 ("mps2/an519", "*", "*", "*", "*", "*",
850 "*", "*", "*", "*", "profile_medium", "*"),
851 ("mps2/an521", "*", "*", "*", "*", "*",
852 "*", "*", "*", "*", "profile_medium", "*"),
853 ("*", "toolchain_GNUARM.cmake", "*", "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800854 "*", "*", "*", "*", "profile_small", "*"),
Xinyu Zhangeb442a12021-02-01 15:16:19 +0800855 ("*", "toolchain_ARMCLANG.cmake", "*", "*", "*", "*",
856 "*", "*", "*", "*", "profile_medium", "*"),
857 ("*", "toolchain_ARMCLANG.cmake", "False", "*", "*", "*",
858 "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800859 ]
860 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800861
Karl Zhang14573bc2020-06-08 09:23:21 +0800862config_pp_OTP = {"seed_params": {
Mark Horvath8d281cd2020-12-07 15:20:26 +0100863 "tfm_platform": ["musca_b1/sse_200"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800864 "toolchain_file": ["toolchain_GNUARM.cmake"],
865 "psa_api": [True, False],
866 "isolation_level": ["1", "2"],
867 "test_regression": [True],
868 "test_psa_api": ["OFF"],
869 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800870 "with_otp": ["ENABLED"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800871 "with_bl2": [True],
872 "with_ns": [True, False],
873 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800874 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800875 },
876 "common_params": _common_tfm_builder_cfg,
877 "invalid": _common_tfm_invalid_configs + []
878 }
Karl Zhang14573bc2020-06-08 09:23:21 +0800879
880# Configure build manager to build several combinations
881config_pp_PSA_API = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800882 "tfm_platform": ["mps2/an521"],
883 "toolchain_file": ["toolchain_GNUARM.cmake"],
884 "psa_api": [True],
885 "isolation_level": ["2"],
886 "test_regression": [False],
887 "test_psa_api": ["IPC",
888 "CRYPTO",
889 "PROTECTED_STORAGE",
890 "INITIAL_ATTESTATION",
891 "INTERNAL_TRUSTED_STORAGE"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800892 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800893 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800894 "with_bl2": [True],
895 "with_ns": [True, False],
896 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800897 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800898 },
899 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800900 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800901 }
902
Karl Zhang14573bc2020-06-08 09:23:21 +0800903config_pp_PSoC64 = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800904 "tfm_platform": ["cypress/psoc64"],
905 "toolchain_file": ["toolchain_GNUARM.cmake"],
906 "psa_api": [True],
907 "isolation_level": ["1", "2"],
908 "test_regression": [True],
909 "test_psa_api": ["OFF"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800910 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800911 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800912 "with_bl2": [False],
913 "with_ns": [True, False],
914 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800915 "partition_ps": ["ON"],
Karl Zhang14573bc2020-06-08 09:23:21 +0800916 },
917 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800918 "invalid": _common_tfm_invalid_configs + []
Karl Zhang14573bc2020-06-08 09:23:21 +0800919 }
920
Minos Galanakisea421232019-06-20 17:11:28 +0100921# Configruation used for document building
922config_doxygen = {"common_params": {
923 "config_type": "tf-m_documents",
924 "codebase_root_dir": "tf-m",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800925 "build_cmds": {"all": ["-DTFM_PLATFORM=mps2/an521 "
Fathi Boudra324fee72020-11-20 10:31:12 +0100926 "-DTFM_TOOLCHAIN_FILE=%(_tfm_code_dir_)s/toolchain_GNUARM.cmake"
Minos Galanakisea421232019-06-20 17:11:28 +0100927 "-DCMAKE_BUILD_TYPE=Debug "
Minos Galanakisea421232019-06-20 17:11:28 +0100928 "%(_tbm_code_dir_)s/",
Xinyu Zhangb708f572020-09-15 11:43:46 +0800929 "cmake --build ./ -- docs"]},
930 "artifact_capture_rex": r'%(_tbm_build_dir_)s/docs/'
931 r'reference_manual/(?:latex|html)'
Minos Galanakisea421232019-06-20 17:11:28 +0100932 r'/(\w+\.(?:html|md|pdf))$',
933 },
Xinyu Zhangb708f572020-09-15 11:43:46 +0800934 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100935 }
936
Karl Zhangaff558a2020-05-15 14:28:23 +0100937# Configuration used in testing
Minos Galanakisea421232019-06-20 17:11:28 +0100938config_debug = {"seed_params": {
Xinyu Zhangb708f572020-09-15 11:43:46 +0800939 "tfm_platform": ["mps2/an521"],
940 "toolchain_file": ["toolchain_ARMCLANG.cmake"],
941 "psa_api": [False],
942 "isolation_level": ["1"],
943 "test_regression": [False],
944 "test_psa_api": ["OFF"],
Minos Galanakisea421232019-06-20 17:11:28 +0100945 "cmake_build_type": ["Debug"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800946 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800947 "with_bl2": [True],
948 "with_ns": [True],
949 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800950 "partition_ps": ["ON"],
Minos Galanakisea421232019-06-20 17:11:28 +0100951 },
952 "common_params": _common_tfm_builder_cfg,
Xinyu Zhangb708f572020-09-15 11:43:46 +0800953 "invalid": _common_tfm_invalid_configs + []
Minos Galanakisea421232019-06-20 17:11:28 +0100954 }
955
Dean Birch4c6ad622020-03-13 11:28:03 +0000956# Configuration used in CI
Xinyu Zhangb708f572020-09-15 11:43:46 +0800957config_ci = {"seed_params": {
958 "tfm_platform": ["mps2/an521"],
959 "toolchain_file": ["toolchain_ARMCLANG.cmake",
960 "toolchain_GNUARM.cmake"],
961 "psa_api": [True, False],
962 "isolation_level": ["1", "2"],
963 "test_regression": [True, False],
964 "test_psa_api": ["OFF"],
965 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800966 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800967 "with_bl2": [True, False],
968 "with_ns": [True],
969 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800970 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800971 },
972 "common_params": _common_tfm_builder_cfg,
973 "invalid": _common_tfm_invalid_configs + [
974 ("*", "toolchain_ARMCLANG.cmake", True, "*", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800975 "*", "*", "*", "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800976 ("*", "toolchain_ARMCLANG.cmake", False, "1", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800977 "*", "*", False, "*", "*", "*"),
Xinyu Zhangb708f572020-09-15 11:43:46 +0800978 ]
979 }
Matthew Hartfb6fd362020-03-04 21:03:59 +0000980
Xinyu Zhangb708f572020-09-15 11:43:46 +0800981config_lava_debug = {"seed_params": {
982 "tfm_platform": ["mps2/an521", "mps2/an519"],
983 "toolchain_file": ["toolchain_GNUARM.cmake"],
984 "psa_api": [True, False],
985 "isolation_level": ["1", "2"],
986 "test_regression": [True],
987 "test_psa_api": ["OFF"],
988 "cmake_build_type": ["Release"],
Xinyu Zhanga50432e2020-10-23 18:00:18 +0800989 "with_otp": ["off"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800990 "with_bl2": [True, False],
991 "with_ns": [True, False],
992 "profile": [""],
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800993 "partition_ps": ["ON"],
Xinyu Zhangb708f572020-09-15 11:43:46 +0800994 },
995 "common_params": _common_tfm_builder_cfg,
996 "invalid": _common_tfm_invalid_configs + [
997 ("mps2/an521", "toolchain_GNUARM.cmake", True, "2", "*", "*",
Xinyu Zhang9fd74242020-10-22 11:30:50 +0800998 "*", "*", True, "*", "*", "*")
Xinyu Zhangb708f572020-09-15 11:43:46 +0800999 ]
1000 }
Dean Birch4c6ad622020-03-13 11:28:03 +00001001
Karl Zhangaff558a2020-05-15 14:28:23 +01001002_builtin_configs = {
Karl Zhang14573bc2020-06-08 09:23:21 +08001003 #release test group
Karl Zhangaff558a2020-05-15 14:28:23 +01001004 "tfm_test": config_tfm_test,
1005 "tfm_test2": config_tfm_test2,
Karl Zhang14573bc2020-06-08 09:23:21 +08001006 "tfm_profile": config_tfm_profile,
Karl Zhangaff558a2020-05-15 14:28:23 +01001007 "tfm_test_otp": config_tfm_test_OTP,
1008 "psa_api": config_PSA_API,
1009 "psa_api_otp": config_PSA_API_OTP,
1010 "psa_ff": config_PSA_FF,
1011 "psa_ff_otp": config_PSA_FF_OTP,
Karl Zhang14573bc2020-06-08 09:23:21 +08001012 "tfm_psoc64": config_PSOC64,
1013
1014 #nightly test group
1015 "nightly_test": config_nightly,
1016 "nightly_profile": config_nightly_profile,
1017 "nightly_psa_api": config_nightly_PSA_API,
1018 "nightly_ff": config_nightly_PSA_FF,
1019 "nightly_otp": config_nightly_OTP,
1020
1021 #per patch test group
1022 "pp_test": config_pp_test,
1023 "pp_OTP": config_pp_OTP,
1024 "pp_PSA_API": config_pp_PSA_API,
1025 "pp_psoc64": config_pp_PSoC64,
1026
1027 #full test group in the old CI
Karl Zhangaff558a2020-05-15 14:28:23 +01001028 "full": config_full,
Karl Zhang14573bc2020-06-08 09:23:21 +08001029
1030 #specific test group
Karl Zhangaff558a2020-05-15 14:28:23 +01001031 "an524": config_AN524,
Minos Galanakisea421232019-06-20 17:11:28 +01001032 "an521": config_AN521,
Karl Zhang14573bc2020-06-08 09:23:21 +08001033 "an521_psa_api": config_AN521_PSA_API,
1034 "an521_psa_ipc": config_AN521_PSA_IPC,
Minos Galanakisea421232019-06-20 17:11:28 +01001035 "an519": config_AN519,
1036 "musca_a": config_MUSCA_A,
1037 "musca_b1": config_MUSCA_B1,
Mark Horvath8d281cd2020-12-07 15:20:26 +01001038 "musca_b1_se": config_MUSCA_B1_SE,
Karl Zhangeffed972020-06-30 15:48:01 +08001039 "musca_s1": config_MUSCA_S1,
Karl Zhang96dfe2d2020-05-11 11:31:40 +08001040 "psoc64": config_PSOC64,
Minos Galanakisea421232019-06-20 17:11:28 +01001041 "ipc": config_IPC,
1042 "doxygen": config_doxygen,
Dean Birch4c6ad622020-03-13 11:28:03 +00001043 "debug": config_debug,
Karl Zhangaff558a2020-05-15 14:28:23 +01001044 "release": config_release,
Matthew Hartfb6fd362020-03-04 21:03:59 +00001045 "debug": config_debug,
Karl Zhang14573bc2020-06-08 09:23:21 +08001046
1047 #DevOps team test group
Matthew Hartfb6fd362020-03-04 21:03:59 +00001048 "lava_debug": config_lava_debug,
Xinyu Zhanga1000582020-12-04 15:25:24 +08001049 "ci": config_ci}
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001050
1051if __name__ == '__main__':
1052 import os
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001053
Minos Galanakisea421232019-06-20 17:11:28 +01001054 # Default behavior is to export refference config when called
1055 _dir = os.getcwd()
1056 from utils import save_json
1057 for _cname, _cfg in _builtin_configs.items():
1058 _fname = os.path.join(_dir, _cname + ".json")
1059 print("Exporting config %s" % _fname)
1060 save_json(_fname, _cfg)