blob: e7d5ebd75330632708e0c91b48b808fb088c94ec [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 },
Paul Sokolovsky1cc66422022-07-05 18:30:40 +0300217
218 'PsaApiTestIPC_FF': {
219 "monitors": monitors_psaapitest_ff,
220 },
221 'PsaApiTestIPCTfmLevel2_FF': {
222 "monitors": monitors_psaapitest_ff,
223 },
224
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100225 } # Tests
226}
227
Bence Balogh4fe9b882022-03-30 15:23:47 +0200228# FVP with BL2 bootloader
229# firmware <-> ns <-> application: --application cpu0=bl2.axf
230# bootloader <-> s <-> data: --data cpu0=tfm_s_ns_signed.bin@0x01000000
231fvp_mps3_an552_bl2 = {
232 "templ": "fvp_mps3.jinja2",
233 "job_name": "fvp_mps3_an552_bl2",
234 "device_type": "fvp",
235 "job_timeout": 15,
236 "action_timeout": 10,
237 "monitor_timeout": 15,
238 "poweroff_timeout": 1,
239 "platforms": {"AN552": ""},
240 "compilers": ["GCC", "ARMCLANG"],
241 "build_types": ["Debug", "Release"],
242 "boot_types": ["BL2"],
243 "data_bin_offset": "0x01000000",
244 "binaries": {
245 "application": "bl2.axf",
246 "data": "tfm_s_ns_signed.bin"
247 },
248 "tests": {
249 'Default': {
250 "monitors": monitors_no_reg_tests
251 }, # Default
252 'Regression': {
253 "monitors": monitors_reg_tests
254 }, # Regression
255 'RegressionIPC': {
256 "monitors": monitors_reg_tests
257 }, # Regression
258 'RegressionIPCTfmLevel2': {
259 "monitors": monitors_reg_tests
260 }, # Regression
261 'RegressionIPCTfmLevel3': {
262 "monitors": monitors_reg_tests
263 }, # Regression
264 'CoreIPC': {
265 "monitors": monitors_no_reg_tests
266 }, # CoreIPC
267 'CoreIPCTfmLevel2': {
268 "monitors": monitors_no_reg_tests
269 }, # CoreIPCTfmLevel2
270 'CoreIPCTfmLevel3': {
271 "monitors": monitors_no_reg_tests
272 }, # CoreIPCTfmLevel3
273
274 } # Tests
275}
Dean Bircha6ede7e2020-03-13 14:00:33 +0000276
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100277# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800278# application: --application cpu0=bl2.axf
279# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100280fvp_mps2_an521_bl2 = {
281 "templ": "fvp_mps2.jinja2",
282 "job_name": "fvp_mps2_an521_bl2",
Dean Bircha6ede7e2020-03-13 14:00:33 +0000283 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100284 "job_timeout": 15,
285 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800286 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000287 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100288 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800289 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100290 "build_types": ["Debug", "Release", "Minsizerel"],
Dean Bircha6ede7e2020-03-13 14:00:33 +0000291 "boot_types": ["BL2"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000292 "data_bin_offset": "0x10080000",
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800293 "binaries": {
294 "application": "bl2.axf",
295 "data": "tfm_s_ns_signed.bin"
296 },
Matthew Hartfb6fd362020-03-04 21:03:59 +0000297 "tests": {
298 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800299 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000300 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800301 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800302 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800303 }, # DefaultProfileS
304 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800305 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800306 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800307 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800308 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800309 }, # DefaultProfileL
Matthew Hartfb6fd362020-03-04 21:03:59 +0000310 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800311 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100312 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800313 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800314 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800315 }, # RegressionProfileM
316 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800317 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800318 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800319 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800320 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800321 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100322 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800323 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100324 }, # Regression
325 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800326 "monitors": monitors_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000327 }, # Regression
Karl Zhang3b092ef2020-11-06 16:56:25 +0800328 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800329 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800330 }, # Regression
Matthew Hartfb6fd362020-03-04 21:03:59 +0000331 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800332 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000333 }, # CoreIPC
334 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800335 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000336 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800337 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800338 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800339 }, # CoreIPCTfmLevel3
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300340 'PsaApiTest_Crypto': {
Paul Sokolovskyde2239e2022-05-02 14:55:31 +0300341 "monitors": monitors_psaapitest_by_ut,
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300342 }, # PsaApiTest_Crypto
Paul Sokolovsky68c86e32022-05-02 16:39:24 +0300343 'PsaApiTestIPC_Crypto': {
344 "monitors": monitors_psaapitest_by_ut,
345 },
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300346 'PsaApiTestIPCTfmLevel2_Crypto': {
347 "monitors": monitors_psaapitest_by_ut,
348 },
349 'PsaApiTestIPCTfmLevel3_Crypto': {
350 "monitors": monitors_psaapitest_by_ut,
351 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300352 'PsaApiTest_STORAGE': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300353 "monitors": monitors_psaapitest_by_desc,
354 }, # PsaApiTest_Storage
355
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300356 'PsaApiTestIPC_STORAGE': {
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300357 "monitors": monitors_psaapitest_by_desc,
358 }, # PsaApiTestIPC_Storage
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300359 'PsaApiTestIPCTfmLevel2_STORAGE': {
360 "monitors": monitors_psaapitest_by_desc,
361 },
362 'PsaApiTestIPCTfmLevel3_STORAGE': {
363 "monitors": monitors_psaapitest_by_desc,
364 },
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300365 'PsaApiTest_Attest': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300366 "monitors": monitors_psaapitest_by_ut,
367 }, # PsaApiTest_Attest
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300368 'PsaApiTestIPC_Attest': {
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300369 "monitors": monitors_psaapitest_by_ut,
370 }, # PsaApiTestIPC_Attest
Paul Sokolovsky1d744622022-05-04 23:23:44 +0300371 'PsaApiTestIPCTfmLevel2_Attest': {
372 "monitors": monitors_psaapitest_by_ut,
373 },
374 'PsaApiTestIPCTfmLevel3_Attest': {
375 "monitors": monitors_psaapitest_by_ut,
376 },
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300377
Paul Sokolovsky1cc66422022-07-05 18:30:40 +0300378 'PsaApiTestIPC_FF': {
379 "monitors": monitors_psaapitest_ff,
380 },
381 'PsaApiTestIPCTfmLevel2_FF': {
382 "monitors": monitors_psaapitest_ff,
383 },
384
Matthew Hartfb6fd362020-03-04 21:03:59 +0000385 } # Tests
386}
387
388
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100389# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800390# application: --application cpu0=tfm_s.axf
391# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100392fvp_mps2_an521_nobl2 = {
393 "templ": "fvp_mps2.jinja2",
394 "job_name": "fvp_mps2_an521_nobl2",
Matthew Hartfb6fd362020-03-04 21:03:59 +0000395 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100396 "job_timeout": 15,
397 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800398 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000399 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100400 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800401 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100402 "build_types": ["Debug", "Release", "Minsizerel"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000403 "boot_types": ["NOBL2"],
404 "data_bin_offset": "0x00100000",
Dean Birch1d545c02020-05-29 14:09:21 +0100405 "cpu_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800406 "binaries": {
407 "application": "tfm_s.axf",
408 "data": "tfm_ns.bin"
409 },
Dean Bircha6ede7e2020-03-13 14:00:33 +0000410 "tests": {
411 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800412 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000413 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800414 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800415 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800416 }, # DefaultProfileS
417 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800418 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800419 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800420 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800421 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800422 }, # DefaultProfileL
Dean Bircha6ede7e2020-03-13 14:00:33 +0000423 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800424 "monitors": monitors_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000425 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800426 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800427 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800428 }, # RegressionProfileM
429 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800430 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800431 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800432 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800433 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800434 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100435 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800436 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100437 }, # RegressionIPC
438 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800439 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100440 }, # RegressionIPCTfmLevel2
Karl Zhang3b092ef2020-11-06 16:56:25 +0800441 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800442 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800443 }, # RegressionIPCTfmLevel3
Dean Bircha6ede7e2020-03-13 14:00:33 +0000444 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800445 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000446 }, # CoreIPC
447 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800448 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000449 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800450 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800451 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800452 }, # CoreIPCTfmLevel3
Paul Sokolovsky1cc66422022-07-05 18:30:40 +0300453
454 'PsaApiTestIPC_FF': {
455 "monitors": monitors_psaapitest_ff,
456 },
457 'PsaApiTestIPCTfmLevel2_FF': {
458 "monitors": monitors_psaapitest_ff,
459 },
460
Dean Bircha6ede7e2020-03-13 14:00:33 +0000461 } # Tests
462}
463
Matthew Hart2c2688f2020-05-26 13:09:20 +0100464
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100465# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800466# application: --application cpu0=bl2.axf
467# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100468fvp_mps2_an519_bl2 = {
469 "templ": "fvp_mps2.jinja2",
470 "job_name": "fvp_mps2_an519_bl2",
471 "device_type": "fvp",
472 "job_timeout": 15,
473 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800474 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100475 "poweroff_timeout": 1,
476 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800477 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100478 "build_types": ["Debug", "Release", "Minsizerel"],
479 "boot_types": ["BL2"],
480 "data_bin_offset": "0x10080000",
481 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800482 "binaries": {
483 "application": "bl2.axf",
484 "data": "tfm_s_ns_signed.bin"
485 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100486 "tests": {
487 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800488 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100489 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800490 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800491 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800492 }, # DefaultProfileS
493 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800494 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800495 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100496 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800497 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100498 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800499 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800500 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800501 }, # RegressionProfileM
502 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800503 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800504 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100505 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800506 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100507 }, # Regression
508 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800509 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100510 }, # Regression
511 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800512 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100513 }, # CoreIPC
514 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800515 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100516 }, # CoreIPCTfmLevel2
517 } # Tests
518}
519
520
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100521# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800522# application: --application cpu0=tfm_s.axf
523# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100524fvp_mps2_an519_nobl2 = {
525 "templ": "fvp_mps2.jinja2",
526 "job_name": "fvp_mps2_an519_nobl2",
527 "device_type": "fvp",
528 "job_timeout": 15,
529 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800530 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100531 "poweroff_timeout": 1,
532 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800533 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100534 "build_types": ["Debug", "Release", "Minsizerel"],
535 "boot_types": ["NOBL2"],
536 "data_bin_offset": "0x00100000",
537 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800538 "binaries": {
539 "application": "tfm_s.axf",
540 "data": "tfm_ns.bin"
541 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100542 "tests": {
543 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800544 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100545 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800546 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800547 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800548 }, # DefaultProfileS
549 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800550 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800551 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100552 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800553 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100554 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800555 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800556 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800557 }, # RegressionProfileM
558 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800559 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800560 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100561 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800562 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100563 }, # RegressionIPC
564 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800565 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100566 }, # RegressionIPCTfmLevel2
567 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800568 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100569 }, # CoreIPC
570 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800571 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100572 }, # CoreIPCTfmLevel2
573 } # Tests
574}
575
576
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800577# QEMU for MPS2 with BL2 bootloader
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100578qemu_mps2_bl2 = {
579 "templ": "qemu_mps2_bl2.jinja2",
580 "job_name": "qemu_mps2_bl2",
581 "device_type": "qemu",
582 "job_timeout": 300,
583 "action_timeout": 300,
584 "poweroff_timeout": 20,
585 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800586 "compilers": ["GCC", "ARMCLANG"],
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100587 "build_types": ["Debug", "Release"],
588 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800589 "binaries": {
590 "firmware": "tfm_s_ns_signed.bin",
591 "bootloader": "bl2.bin"
592 },
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800593 "tests": {
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800594 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800595 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800596 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800597 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800598 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800599 }, # RegressionProfileS
600 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800601 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800602 }, # Regression
603 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800604 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800605 }, # Regression
606 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800607 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800608 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800609 }
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100610}
611
612
613# Musca-B1 with BL2 bootloader
614# unified hex file comprising of both bl2.bin and tfm_s_ns_signed.bin
615# 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 +0100616musca_b1_bl2 = {
617 "templ": "musca_b1.jinja2",
618 "job_name": "musca_b1_bl2",
619 "device_type": "musca-b",
Xinyu Zhang630dfe62021-06-17 14:38:11 +0800620 "job_timeout": 40,
621 "action_timeout": 20,
622 "monitor_timeout": 30,
Ryan Harkinf6981082020-12-18 14:54:33 +0000623 "poweroff_timeout": 40,
Fathi Boudra31225f72020-11-25 13:51:07 +0100624 "platforms": {"MUSCA_B1": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800625 "compilers": ["GCC", "ARMCLANG"],
Xinyu Zhang43e5d672021-03-24 16:30:26 +0800626 "build_types": ["Debug", "Release", "Minsizerel"],
Fathi Boudra31225f72020-11-25 13:51:07 +0100627 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800628 "binaries": {
629 "firmware": "tfm.hex",
630 },
Fathi Boudra31225f72020-11-25 13:51:07 +0100631 "tests": {
632 "Default": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800633 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100634 },
635 "CoreIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800636 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100637 },
638 "CoreIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800639 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100640 },
641 "CoreIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800642 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100643 },
644 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800645 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100646 },
647 "DefaultProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800648 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100649 },
650 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800651 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100652 },
653 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800654 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100655 },
656 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800657 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100658 },
659 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800660 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100661 },
662 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800663 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100664 },
665 "RegressionProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800666 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100667 },
668 },
669}
670
Arthur She07c91b52021-07-15 15:03:10 -0700671# STM32L562E-DK
672stm32l562e_dk = {
673 "templ": "stm32l562e_dk.jinja2",
674 "job_name": "stm32l562e_dk",
675 "device_type": "stm32l562e-dk",
676 "job_timeout": 24,
677 "action_timeout": 15,
678 "monitor_timeout": 15,
679 "poweroff_timeout": 5,
680 "platforms": {"stm32l562e_dk": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800681 "compilers": ["GCC", "ARMCLANG"],
Arthur She07c91b52021-07-15 15:03:10 -0700682 "build_types": ["Release", "Minsizerel"],
683 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800684 "binaries": {
685 "tarball": "stm32l562e-dk-tfm.tar.bz2",
686 },
Arthur She07c91b52021-07-15 15:03:10 -0700687 "tests": {
688 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800689 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700690 },
691 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800692 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700693 },
694 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800695 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700696 },
697 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800698 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700699 },
700 },
701}
Xinyu Zhang97114342021-01-21 14:08:03 +0800702
Arthur She3c0dadd2021-11-18 21:17:48 -0800703# LPCxpresso55S69
704lpcxpresso55s69 = {
705 "templ": "lpcxpresso55s69.jinja2",
706 "job_name": "lpcxpresso55s69",
707 "device_type": "lpcxpresso55s69",
708 "job_timeout": 24,
709 "action_timeout": 15,
710 "monitor_timeout": 15,
711 "poweroff_timeout": 5,
712 "platforms": {"lpcxpresso55s69": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800713 "compilers": ["GCC"],
Arthur She3c0dadd2021-11-18 21:17:48 -0800714 "build_types": ["Relwithdebinfo"],
715 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800716 "binaries": {
717 "tarball": "lpcxpresso55s69-tfm.tar.bz2",
718 },
Arthur She3c0dadd2021-11-18 21:17:48 -0800719 "tests": {
720 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800721 "monitors": monitors_no_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800722 },
723 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800724 "monitors": monitors_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800725 },
726 }
727}
728
Arthur She87602dc2022-02-06 14:42:18 -0800729# Cypress PSoC64
730psoc64 = {
731 "templ": "psoc64.jinja2",
732 "job_name": "psoc64",
733 "device_type": "cy8ckit-064s0s2-4343w",
734 "job_timeout": 120,
735 "action_timeout": 120,
736 "monitor_timeout": 120,
737 "poweroff_timeout": 5,
738 "platforms": {"psoc64": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800739 "compilers": ["GCC", "ARMCLANG"],
Arthur She87602dc2022-02-06 14:42:18 -0800740 "build_types": ["Release", "Minsizerel"],
741 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800742 "binaries": {
743 "spe": "tfm_s_signed.hex",
744 "nspe": "tfm_ns_signed.hex",
745 },
Arthur She87602dc2022-02-06 14:42:18 -0800746 "tests": {
747 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800748 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800749 },
750 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800751 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800752 },
753 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800754 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800755 },
756 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800757 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800758 },
759 },
760}
761
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100762# All configurations should be mapped here
Fathi Boudra31225f72020-11-25 13:51:07 +0100763lava_gen_config_map = {
764 "mps2_an521_bl2": tfm_mps2_sse_200,
Bence Balogh4fe9b882022-03-30 15:23:47 +0200765 "fvp_mps3_an552_bl2": fvp_mps3_an552_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100766 "fvp_mps2_an521_bl2": fvp_mps2_an521_bl2,
767 "fvp_mps2_an521_nobl2": fvp_mps2_an521_nobl2,
768 "fvp_mps2_an519_bl2": fvp_mps2_an519_bl2,
769 "fvp_mps2_an519_nobl2": fvp_mps2_an519_nobl2,
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100770 "qemu_mps2_bl2": qemu_mps2_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100771 "musca_b1": musca_b1_bl2,
Arthur She07c91b52021-07-15 15:03:10 -0700772 "stm32l562e_dk": stm32l562e_dk,
Arthur She3c0dadd2021-11-18 21:17:48 -0800773 "lpcxpresso55s69": lpcxpresso55s69,
Arthur She87602dc2022-02-06 14:42:18 -0800774 "psoc64": psoc64,
Fathi Boudra31225f72020-11-25 13:51:07 +0100775}
Matthew Hart2c2688f2020-05-26 13:09:20 +0100776
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100777lavagen_config_sort_order = [
778 "templ",
779 "job_name",
780 "device_type",
781 "job_timeout",
782 "action_timeout",
783 "monitor_timeout",
784 "recovery_store_url",
785 "artifact_store_url",
786 "platforms",
787 "compilers",
788 "build_types",
789 "boot_types",
790 "tests"
791]
792
793lava_gen_monitor_sort_order = [
794 'name',
795 'start',
796 'end',
797 'pattern',
798 'fixup',
799]
800
801if __name__ == "__main__":
802 import os
803 import sys
804 from lava_helper import sort_lavagen_config
805 try:
806 from tfm_ci_pylib.utils import export_config_map
807 except ImportError:
808 dir_path = os.path.dirname(os.path.realpath(__file__))
809 sys.path.append(os.path.join(dir_path, "../"))
810 from tfm_ci_pylib.utils import export_config_map
811
812 if len(sys.argv) == 2:
813 if sys.argv[1] == "--export":
814 export_config_map(lava_gen_config_map)
815 if len(sys.argv) == 3:
816 if sys.argv[1] == "--export":
817 export_config_map(sort_lavagen_config(lava_gen_config_map),
818 sys.argv[2])