blob: 6d51509e4796c1316468858408bc2e3cc48a2e06 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001#!/usr/bin/env python3
2
3""" lava_job_generator_configs.py:
4
5 Default configurations for lava job generator """
6
7from __future__ import print_function
8
9__copyright__ = """
10/*
Xinyu Zhang04d77472022-03-21 14:37:37 +080011 * Copyright (c) 2018-2022, Arm Limited. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010012 *
13 * SPDX-License-Identifier: BSD-3-Clause
14 *
15 */
16 """
Karl Zhang08681e62020-10-30 13:56:03 +080017
18__author__ = "tf-m@lists.trustedfirmware.org"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010019__project__ = "Trusted Firmware-M Open CI"
Xinyu Zhang06286a92021-07-22 14:00:51 +080020__version__ = "1.4.0"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010021
Leonardo Sandoval66386a22021-04-15 14:35:08 -050022tf_downloads="https://downloads.trustedfirmware.org"
23coverage_trace_plugin=tf_downloads + "/coverage-plugin/qa-tools/coverage-tool/coverage-plugin/coverage_trace.so"
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010024
25def lava_gen_get_config_subset(config,
26 default=True,
27 core=True,
28 regression=True):
29 """ Allow dynamic generation of configuration combinations by subtracking
30 undesired ones """
31
32 from copy import deepcopy
33 cfg = deepcopy(config)
34 tests = deepcopy(config["tests"])
35
36 # Remove all configs not requests by the caller
37 if not default:
38 tests.pop("Default")
Minos Galanakisea421232019-06-20 17:11:28 +010039 if not core:
40 tests.pop("CoreIPC")
41 tests.pop("CoreIPCTfmLevel2")
Xinyu Zhang204dc372020-11-12 14:18:00 +080042 tests.pop("CoreIPCTfmLevel3")
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010043 if not regression:
44 tests.pop("Regression")
45
46 cfg["tests"] = tests
47 return cfg
48
Xinyu Zhangf724cd22022-03-21 15:46:26 +080049# LAVA test-monitor definition for configs with regression tests.
50# "Non-Secure system starting..." is expected to indicate
51# that TF-M has been booted successfully.
52monitors_no_reg_tests = [
53 {
54 'name': 'NS_SYSTEM_BOOTING',
55 'start': 'Non-Secure system',
56 'end': r'starting\\.{3}',
57 'pattern': r'Non-Secure system starting\\.{3}',
58 'fixup': {"pass": "!", "fail": ""},
59 }
60]
61
62# LAVA test-monitor definition for configs with regression tests.
Paul Sokolovsky65671e62022-03-23 21:09:12 +030063# Results of each test case is parsed separately, capturing test case id.
64# Works across any test suites enabled.
Xinyu Zhangf724cd22022-03-21 15:46:26 +080065monitors_reg_tests = [
66 {
Paul Sokolovsky65671e62022-03-23 21:09:12 +030067 'name': 'regression_suite',
Xinyu Zhange4db0632022-04-10 23:22:22 +080068 'start': 'Execute test suites',
Paul Sokolovsky65671e62022-03-23 21:09:12 +030069 'end': 'End of Non-secure test suites',
70 'pattern': r"TEST: (?P<test_case_id>.+?) - (?P<result>(PASSED|FAILED|SKIPPED))",
71 'fixup': {"pass": "PASSED", "fail": "FAILED", "skip": "SKIPPED"},
Xinyu Zhangf724cd22022-03-21 15:46:26 +080072 },
Paul Sokolovsky65671e62022-03-23 21:09:12 +030073] # Monitors
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010074
Paul Sokolovsky6024d012022-01-22 20:21:07 +030075# LAVA test-monitor definition for PSA API testsuites, testcases identified
76# by "UT" value in output (testcase identifier).
77monitors_psaapitest_by_ut = [
78 {
79 'name': 'psa_api_suite',
80 'start': 'Running..',
81 'end': 'Entering standby..',
82 'pattern': r" UT: +(?P<test_case_id>[A-Za-z0-9_]+)\r?\n"
83 r".+?"
84 r"TEST RESULT: (?P<result>(PASSED|FAILED|SKIPPED))",
85 'fixup': {"pass": "PASSED", "fail": "FAILED", "skip": "SKIPPED"},
86 },
87]
88
89# LAVA test-monitor definition for PSA API testsuites, testcases identified
90# by description in output (for when UT is not set to unique identifier).
91monitors_psaapitest_by_desc = [
92 {
93 'name': 'psa_api_suite',
94 'start': 'Running..',
95 'end': 'Entering standby..',
96 'pattern': r" DESCRIPTION: +(?P<test_case_id>.+?) \\|"
97 r".+?"
98 r"TEST RESULT: (?P<result>(PASSED|FAILED|SKIPPED))",
99 'fixup': {"pass": "PASSED", "fail": "FAILED", "skip": "SKIPPED"},
100 },
101]
102
Paul Sokolovskye3d2bb12022-06-06 17:04:34 +0300103monitors_psaapitest_ff = [
104 {
105 'name': 'psa_api_suite',
106 'start': 'Running..',
107 'end': 'Entering standby..',
108 'pattern': r" DESCRIPTION: +(?P<test_case_id>.+?)\r?\n"
109 r".+"
110 r"TEST RESULT: (?P<result>(PASSED|FAILED|SKIPPED|SIM ERROR))",
111 'fixup': {"pass": "PASSED", "fail": "FAILED", "skip": "SKIPPED"},
112 },
113]
114
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300115
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100116# MPS2 with BL2 bootloader
117# IMAGE0ADDRESS: 0x10000000
118# IMAGE0FILE: \Software\bl2.bin ; BL2 bootloader
119# IMAGE1ADDRESS: 0x10080000
120# IMAGE1FILE: \Software\tfm_s_ns_signed.bin ; TF-M example application binary blob
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100121tfm_mps2_sse_200 = {
Matthew Hart2c2688f2020-05-26 13:09:20 +0100122 "templ": "mps2.jinja2",
123 "job_name": "mps2_an521_bl2",
Minos Galanakisafb43152019-09-25 14:17:39 +0100124 "device_type": "mps",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100125 "job_timeout": 15,
126 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800127 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100128 "poweroff_timeout": 1,
129 "recovery_store_url": "https://ci.trustedfirmware.org/userContent/",
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100130 "platforms": {"AN521": "mps2_sse200_an512_new.tar.gz"},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800131 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100132 "build_types": ["Debug", "Release", "Minsizerel"],
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100133 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800134 "binaries": {
135 "firmware": "tfm_s_ns_signed.bin",
136 "bootloader": "bl2.bin"
137 },
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100138 "tests": {
139 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800140 "monitors": monitors_no_reg_tests
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100141 }, # Default
Xinyu Zhang244e1862021-03-12 16:21:54 +0800142 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800143 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800144 }, # DefaultProfileS
145 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800146 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800147 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800148 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800149 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800150 }, # DefaultProfileL
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100151 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800152 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100153 }, # Regression
Xinyu Zhang244e1862021-03-12 16:21:54 +0800154 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800155 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800156 }, # RegressionProfileM
157 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800158 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800159 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800160 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800161 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800162 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100163 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800164 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100165 }, # Regression
166 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800167 "monitors": monitors_reg_tests
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100168 }, # Regression
Xinyu Zhang244e1862021-03-12 16:21:54 +0800169 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800170 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800171 }, # Regression
Minos Galanakisea421232019-06-20 17:11:28 +0100172 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800173 "monitors": monitors_no_reg_tests
Minos Galanakisea421232019-06-20 17:11:28 +0100174 }, # CoreIPC
175 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800176 "monitors": monitors_no_reg_tests
Minos Galanakisea421232019-06-20 17:11:28 +0100177 }, # CoreIPCTfmLevel2
Xinyu Zhang244e1862021-03-12 16:21:54 +0800178 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800179 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800180 }, # CoreIPCTfmLevel3
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300181 'PsaApiTest_Crypto': {
Paul Sokolovskyde2239e2022-05-02 14:55:31 +0300182 "monitors": monitors_psaapitest_by_ut,
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300183 }, # PsaApiTest_Crypto
Paul Sokolovsky68c86e32022-05-02 16:39:24 +0300184 'PsaApiTestIPC_Crypto': {
185 "monitors": monitors_psaapitest_by_ut,
186 },
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300187 'PsaApiTestIPCTfmLevel2_Crypto': {
188 "monitors": monitors_psaapitest_by_ut,
189 },
190 'PsaApiTestIPCTfmLevel3_Crypto': {
191 "monitors": monitors_psaapitest_by_ut,
192 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300193 'PsaApiTest_STORAGE': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300194 "monitors": monitors_psaapitest_by_desc,
195 }, # PsaApiTest_Storage
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300196 'PsaApiTestIPC_STORAGE': {
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300197 "monitors": monitors_psaapitest_by_desc,
198 }, # PsaApiTestIPC_Storage
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300199 'PsaApiTestIPCTfmLevel2_STORAGE': {
200 "monitors": monitors_psaapitest_by_desc,
201 },
202 'PsaApiTestIPCTfmLevel3_STORAGE': {
203 "monitors": monitors_psaapitest_by_desc,
204 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300205 'PsaApiTest_Attest': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300206 "monitors": monitors_psaapitest_by_ut,
207 }, # PsaApiTest_Attest
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300208 'PsaApiTestIPC_Attest': {
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300209 "monitors": monitors_psaapitest_by_ut,
210 }, # PsaApiTestIPC_Attest
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300211 'PsaApiTestIPCTfmLevel2_Attest': {
212 "monitors": monitors_psaapitest_by_ut,
213 },
214 'PsaApiTestIPCTfmLevel3_Attest': {
215 "monitors": monitors_psaapitest_by_ut,
216 },
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100217 } # Tests
218}
219
Bence Balogh4fe9b882022-03-30 15:23:47 +0200220# FVP with BL2 bootloader
221# firmware <-> ns <-> application: --application cpu0=bl2.axf
222# bootloader <-> s <-> data: --data cpu0=tfm_s_ns_signed.bin@0x01000000
223fvp_mps3_an552_bl2 = {
224 "templ": "fvp_mps3.jinja2",
225 "job_name": "fvp_mps3_an552_bl2",
226 "device_type": "fvp",
227 "job_timeout": 15,
228 "action_timeout": 10,
229 "monitor_timeout": 15,
230 "poweroff_timeout": 1,
231 "platforms": {"AN552": ""},
232 "compilers": ["GCC", "ARMCLANG"],
233 "build_types": ["Debug", "Release"],
234 "boot_types": ["BL2"],
235 "data_bin_offset": "0x01000000",
236 "binaries": {
237 "application": "bl2.axf",
238 "data": "tfm_s_ns_signed.bin"
239 },
240 "tests": {
241 'Default': {
242 "monitors": monitors_no_reg_tests
243 }, # Default
244 'Regression': {
245 "monitors": monitors_reg_tests
246 }, # Regression
247 'RegressionIPC': {
248 "monitors": monitors_reg_tests
249 }, # Regression
250 'RegressionIPCTfmLevel2': {
251 "monitors": monitors_reg_tests
252 }, # Regression
253 'RegressionIPCTfmLevel3': {
254 "monitors": monitors_reg_tests
255 }, # Regression
256 'CoreIPC': {
257 "monitors": monitors_no_reg_tests
258 }, # CoreIPC
259 'CoreIPCTfmLevel2': {
260 "monitors": monitors_no_reg_tests
261 }, # CoreIPCTfmLevel2
262 'CoreIPCTfmLevel3': {
263 "monitors": monitors_no_reg_tests
264 }, # CoreIPCTfmLevel3
265
266 } # Tests
267}
Dean Bircha6ede7e2020-03-13 14:00:33 +0000268
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100269# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800270# application: --application cpu0=bl2.axf
271# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100272fvp_mps2_an521_bl2 = {
273 "templ": "fvp_mps2.jinja2",
274 "job_name": "fvp_mps2_an521_bl2",
Dean Bircha6ede7e2020-03-13 14:00:33 +0000275 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100276 "job_timeout": 15,
277 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800278 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000279 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100280 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800281 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100282 "build_types": ["Debug", "Release", "Minsizerel"],
Dean Bircha6ede7e2020-03-13 14:00:33 +0000283 "boot_types": ["BL2"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000284 "data_bin_offset": "0x10080000",
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800285 "binaries": {
286 "application": "bl2.axf",
287 "data": "tfm_s_ns_signed.bin"
288 },
Matthew Hartfb6fd362020-03-04 21:03:59 +0000289 "tests": {
290 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800291 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000292 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800293 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800294 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800295 }, # DefaultProfileS
296 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800297 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800298 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800299 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800300 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800301 }, # DefaultProfileL
Matthew Hartfb6fd362020-03-04 21:03:59 +0000302 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800303 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100304 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800305 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800306 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800307 }, # RegressionProfileM
308 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800309 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800310 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800311 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800312 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800313 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100314 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800315 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100316 }, # Regression
317 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800318 "monitors": monitors_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000319 }, # Regression
Karl Zhang3b092ef2020-11-06 16:56:25 +0800320 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800321 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800322 }, # Regression
Matthew Hartfb6fd362020-03-04 21:03:59 +0000323 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800324 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000325 }, # CoreIPC
326 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800327 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000328 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800329 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800330 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800331 }, # CoreIPCTfmLevel3
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300332 'PsaApiTest_Crypto': {
Paul Sokolovskyde2239e2022-05-02 14:55:31 +0300333 "monitors": monitors_psaapitest_by_ut,
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300334 }, # PsaApiTest_Crypto
Paul Sokolovsky68c86e32022-05-02 16:39:24 +0300335 'PsaApiTestIPC_Crypto': {
336 "monitors": monitors_psaapitest_by_ut,
337 },
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300338 'PsaApiTestIPCTfmLevel2_Crypto': {
339 "monitors": monitors_psaapitest_by_ut,
340 },
341 'PsaApiTestIPCTfmLevel3_Crypto': {
342 "monitors": monitors_psaapitest_by_ut,
343 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300344 'PsaApiTest_STORAGE': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300345 "monitors": monitors_psaapitest_by_desc,
346 }, # PsaApiTest_Storage
347
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300348 'PsaApiTestIPC_STORAGE': {
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300349 "monitors": monitors_psaapitest_by_desc,
350 }, # PsaApiTestIPC_Storage
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300351 'PsaApiTestIPCTfmLevel2_STORAGE': {
352 "monitors": monitors_psaapitest_by_desc,
353 },
354 'PsaApiTestIPCTfmLevel3_STORAGE': {
355 "monitors": monitors_psaapitest_by_desc,
356 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300357 'PsaApiTest_Attest': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300358 "monitors": monitors_psaapitest_by_ut,
359 }, # PsaApiTest_Attest
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300360 'PsaApiTestIPC_Attest': {
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300361 "monitors": monitors_psaapitest_by_ut,
362 }, # PsaApiTestIPC_Attest
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300363 'PsaApiTestIPCTfmLevel2_Attest': {
364 "monitors": monitors_psaapitest_by_ut,
365 },
366 'PsaApiTestIPCTfmLevel3_Attest': {
367 "monitors": monitors_psaapitest_by_ut,
368 },
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300369
Paul Sokolovsky1cc66422022-07-05 18:30:40 +0300370 'PsaApiTestIPC_FF': {
371 "monitors": monitors_psaapitest_ff,
372 },
373 'PsaApiTestIPCTfmLevel2_FF': {
374 "monitors": monitors_psaapitest_ff,
375 },
376
Matthew Hartfb6fd362020-03-04 21:03:59 +0000377 } # Tests
378}
379
380
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100381# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800382# application: --application cpu0=tfm_s.axf
383# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100384fvp_mps2_an521_nobl2 = {
385 "templ": "fvp_mps2.jinja2",
386 "job_name": "fvp_mps2_an521_nobl2",
Matthew Hartfb6fd362020-03-04 21:03:59 +0000387 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100388 "job_timeout": 15,
389 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800390 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000391 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100392 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800393 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100394 "build_types": ["Debug", "Release", "Minsizerel"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000395 "boot_types": ["NOBL2"],
396 "data_bin_offset": "0x00100000",
Dean Birch1d545c02020-05-29 14:09:21 +0100397 "cpu_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800398 "binaries": {
399 "application": "tfm_s.axf",
400 "data": "tfm_ns.bin"
401 },
Dean Bircha6ede7e2020-03-13 14:00:33 +0000402 "tests": {
403 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800404 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000405 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800406 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800407 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800408 }, # DefaultProfileS
409 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800410 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800411 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800412 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800413 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800414 }, # DefaultProfileL
Dean Bircha6ede7e2020-03-13 14:00:33 +0000415 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800416 "monitors": monitors_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000417 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800418 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800419 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800420 }, # RegressionProfileM
421 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800422 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800423 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800424 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800425 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800426 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100427 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800428 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100429 }, # RegressionIPC
430 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800431 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100432 }, # RegressionIPCTfmLevel2
Karl Zhang3b092ef2020-11-06 16:56:25 +0800433 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800434 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800435 }, # RegressionIPCTfmLevel3
Dean Bircha6ede7e2020-03-13 14:00:33 +0000436 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800437 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000438 }, # CoreIPC
439 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800440 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000441 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800442 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800443 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800444 }, # CoreIPCTfmLevel3
Paul Sokolovsky1cc66422022-07-05 18:30:40 +0300445
446 'PsaApiTestIPC_FF': {
447 "monitors": monitors_psaapitest_ff,
448 },
449 'PsaApiTestIPCTfmLevel2_FF': {
450 "monitors": monitors_psaapitest_ff,
451 },
452
Dean Bircha6ede7e2020-03-13 14:00:33 +0000453 } # Tests
454}
455
Matthew Hart2c2688f2020-05-26 13:09:20 +0100456
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100457# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800458# application: --application cpu0=bl2.axf
459# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100460fvp_mps2_an519_bl2 = {
461 "templ": "fvp_mps2.jinja2",
462 "job_name": "fvp_mps2_an519_bl2",
463 "device_type": "fvp",
464 "job_timeout": 15,
465 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800466 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100467 "poweroff_timeout": 1,
468 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800469 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100470 "build_types": ["Debug", "Release", "Minsizerel"],
471 "boot_types": ["BL2"],
472 "data_bin_offset": "0x10080000",
473 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800474 "binaries": {
475 "application": "bl2.axf",
476 "data": "tfm_s_ns_signed.bin"
477 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100478 "tests": {
479 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800480 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100481 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800482 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800483 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800484 }, # DefaultProfileS
485 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800486 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800487 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100488 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800489 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100490 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800491 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800492 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800493 }, # RegressionProfileM
494 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800495 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800496 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100497 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800498 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100499 }, # Regression
500 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800501 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100502 }, # Regression
503 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800504 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100505 }, # CoreIPC
506 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800507 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100508 }, # CoreIPCTfmLevel2
509 } # Tests
510}
511
512
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100513# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800514# application: --application cpu0=tfm_s.axf
515# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100516fvp_mps2_an519_nobl2 = {
517 "templ": "fvp_mps2.jinja2",
518 "job_name": "fvp_mps2_an519_nobl2",
519 "device_type": "fvp",
520 "job_timeout": 15,
521 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800522 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100523 "poweroff_timeout": 1,
524 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800525 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100526 "build_types": ["Debug", "Release", "Minsizerel"],
527 "boot_types": ["NOBL2"],
528 "data_bin_offset": "0x00100000",
529 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800530 "binaries": {
531 "application": "tfm_s.axf",
532 "data": "tfm_ns.bin"
533 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100534 "tests": {
535 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800536 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100537 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800538 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800539 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800540 }, # DefaultProfileS
541 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800542 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800543 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100544 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800545 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100546 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800547 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800548 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800549 }, # RegressionProfileM
550 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800551 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800552 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100553 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800554 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100555 }, # RegressionIPC
556 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800557 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100558 }, # RegressionIPCTfmLevel2
559 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800560 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100561 }, # CoreIPC
562 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800563 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100564 }, # CoreIPCTfmLevel2
565 } # Tests
566}
567
568
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800569# QEMU for MPS2 with BL2 bootloader
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100570qemu_mps2_bl2 = {
571 "templ": "qemu_mps2_bl2.jinja2",
572 "job_name": "qemu_mps2_bl2",
573 "device_type": "qemu",
574 "job_timeout": 300,
575 "action_timeout": 300,
576 "poweroff_timeout": 20,
577 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800578 "compilers": ["GCC", "ARMCLANG"],
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100579 "build_types": ["Debug", "Release"],
580 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800581 "binaries": {
582 "firmware": "tfm_s_ns_signed.bin",
583 "bootloader": "bl2.bin"
584 },
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800585 "tests": {
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800586 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800587 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800588 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800589 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800590 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800591 }, # RegressionProfileS
592 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800593 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800594 }, # Regression
595 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800596 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800597 }, # Regression
598 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800599 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800600 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800601 }
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100602}
603
604
605# Musca-B1 with BL2 bootloader
606# unified hex file comprising of both bl2.bin and tfm_s_ns_signed.bin
607# srec_cat bin/bl2.bin -Binary -offset 0xA000000 bin/tfm_s_ns_signed.bin -Binary -offset 0xA020000 -o tfm.hex -Intel
Fathi Boudra31225f72020-11-25 13:51:07 +0100608musca_b1_bl2 = {
609 "templ": "musca_b1.jinja2",
610 "job_name": "musca_b1_bl2",
611 "device_type": "musca-b",
Xinyu Zhang630dfe62021-06-17 14:38:11 +0800612 "job_timeout": 40,
613 "action_timeout": 20,
614 "monitor_timeout": 30,
Ryan Harkinf6981082020-12-18 14:54:33 +0000615 "poweroff_timeout": 40,
Fathi Boudra31225f72020-11-25 13:51:07 +0100616 "platforms": {"MUSCA_B1": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800617 "compilers": ["GCC", "ARMCLANG"],
Xinyu Zhang43e5d672021-03-24 16:30:26 +0800618 "build_types": ["Debug", "Release", "Minsizerel"],
Fathi Boudra31225f72020-11-25 13:51:07 +0100619 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800620 "binaries": {
621 "firmware": "tfm.hex",
622 },
Fathi Boudra31225f72020-11-25 13:51:07 +0100623 "tests": {
624 "Default": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800625 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100626 },
627 "CoreIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800628 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100629 },
630 "CoreIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800631 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100632 },
633 "CoreIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800634 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100635 },
636 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800637 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100638 },
639 "DefaultProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800640 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100641 },
642 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800643 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100644 },
645 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800646 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100647 },
648 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800649 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100650 },
651 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800652 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100653 },
654 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800655 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100656 },
657 "RegressionProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800658 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100659 },
660 },
661}
662
Arthur She07c91b52021-07-15 15:03:10 -0700663# STM32L562E-DK
664stm32l562e_dk = {
665 "templ": "stm32l562e_dk.jinja2",
666 "job_name": "stm32l562e_dk",
667 "device_type": "stm32l562e-dk",
668 "job_timeout": 24,
669 "action_timeout": 15,
670 "monitor_timeout": 15,
671 "poweroff_timeout": 5,
672 "platforms": {"stm32l562e_dk": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800673 "compilers": ["GCC", "ARMCLANG"],
Arthur She07c91b52021-07-15 15:03:10 -0700674 "build_types": ["Release", "Minsizerel"],
675 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800676 "binaries": {
677 "tarball": "stm32l562e-dk-tfm.tar.bz2",
678 },
Arthur She07c91b52021-07-15 15:03:10 -0700679 "tests": {
680 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800681 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700682 },
683 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800684 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700685 },
686 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800687 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700688 },
689 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800690 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700691 },
692 },
693}
Xinyu Zhang97114342021-01-21 14:08:03 +0800694
Arthur She3c0dadd2021-11-18 21:17:48 -0800695# LPCxpresso55S69
696lpcxpresso55s69 = {
697 "templ": "lpcxpresso55s69.jinja2",
698 "job_name": "lpcxpresso55s69",
699 "device_type": "lpcxpresso55s69",
700 "job_timeout": 24,
701 "action_timeout": 15,
702 "monitor_timeout": 15,
703 "poweroff_timeout": 5,
704 "platforms": {"lpcxpresso55s69": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800705 "compilers": ["GCC"],
Arthur She3c0dadd2021-11-18 21:17:48 -0800706 "build_types": ["Relwithdebinfo"],
707 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800708 "binaries": {
709 "tarball": "lpcxpresso55s69-tfm.tar.bz2",
710 },
Arthur She3c0dadd2021-11-18 21:17:48 -0800711 "tests": {
712 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800713 "monitors": monitors_no_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800714 },
715 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800716 "monitors": monitors_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800717 },
718 }
719}
720
Arthur She87602dc2022-02-06 14:42:18 -0800721# Cypress PSoC64
722psoc64 = {
723 "templ": "psoc64.jinja2",
724 "job_name": "psoc64",
725 "device_type": "cy8ckit-064s0s2-4343w",
726 "job_timeout": 120,
727 "action_timeout": 120,
728 "monitor_timeout": 120,
729 "poweroff_timeout": 5,
730 "platforms": {"psoc64": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800731 "compilers": ["GCC", "ARMCLANG"],
Arthur She87602dc2022-02-06 14:42:18 -0800732 "build_types": ["Release", "Minsizerel"],
733 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800734 "binaries": {
735 "spe": "tfm_s_signed.hex",
736 "nspe": "tfm_ns_signed.hex",
737 },
Arthur She87602dc2022-02-06 14:42:18 -0800738 "tests": {
739 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800740 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800741 },
742 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800743 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800744 },
745 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800746 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800747 },
748 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800749 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800750 },
751 },
752}
753
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100754# All configurations should be mapped here
Fathi Boudra31225f72020-11-25 13:51:07 +0100755lava_gen_config_map = {
756 "mps2_an521_bl2": tfm_mps2_sse_200,
Bence Balogh4fe9b882022-03-30 15:23:47 +0200757 "fvp_mps3_an552_bl2": fvp_mps3_an552_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100758 "fvp_mps2_an521_bl2": fvp_mps2_an521_bl2,
759 "fvp_mps2_an521_nobl2": fvp_mps2_an521_nobl2,
760 "fvp_mps2_an519_bl2": fvp_mps2_an519_bl2,
761 "fvp_mps2_an519_nobl2": fvp_mps2_an519_nobl2,
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100762 "qemu_mps2_bl2": qemu_mps2_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100763 "musca_b1": musca_b1_bl2,
Arthur She07c91b52021-07-15 15:03:10 -0700764 "stm32l562e_dk": stm32l562e_dk,
Arthur She3c0dadd2021-11-18 21:17:48 -0800765 "lpcxpresso55s69": lpcxpresso55s69,
Arthur She87602dc2022-02-06 14:42:18 -0800766 "psoc64": psoc64,
Fathi Boudra31225f72020-11-25 13:51:07 +0100767}
Matthew Hart2c2688f2020-05-26 13:09:20 +0100768
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100769lavagen_config_sort_order = [
770 "templ",
771 "job_name",
772 "device_type",
773 "job_timeout",
774 "action_timeout",
775 "monitor_timeout",
776 "recovery_store_url",
777 "artifact_store_url",
778 "platforms",
779 "compilers",
780 "build_types",
781 "boot_types",
782 "tests"
783]
784
785lava_gen_monitor_sort_order = [
786 'name',
787 'start',
788 'end',
789 'pattern',
790 'fixup',
791]
792
793if __name__ == "__main__":
794 import os
795 import sys
796 from lava_helper import sort_lavagen_config
797 try:
798 from tfm_ci_pylib.utils import export_config_map
799 except ImportError:
800 dir_path = os.path.dirname(os.path.realpath(__file__))
801 sys.path.append(os.path.join(dir_path, "../"))
802 from tfm_ci_pylib.utils import export_config_map
803
804 if len(sys.argv) == 2:
805 if sys.argv[1] == "--export":
806 export_config_map(lava_gen_config_map)
807 if len(sys.argv) == 3:
808 if sys.argv[1] == "--export":
809 export_config_map(sort_lavagen_config(lava_gen_config_map),
810 sys.argv[2])