blob: 5decd34830565e70b469c4dbf5a6304c0826fdbb [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 Sokolovsky7eae9752022-02-09 21:38:55 +0300103# LAVA test-monitor definition for PSA API "crypto" testsuite, which has some
104# failing testcases which we don't want to treat as failures, so can't use
105# normal monitors_psaapitest_by_ut. Note that this is a flaky workaround
106# which will break if e.g. a new testcase is added. This issue should be
107# fixed on TF-M side instead
108monitors_psaapitest_crypto_workaround = [
109 {
110 'name': 'psa_api_crypto_workaround',
111 'start': 'Running..',
Xinyu Zhang7b1bc5a2022-04-07 10:35:34 +0800112 'end': r"TOTAL TESTS : 63\r?\n.*?TOTAL PASSED : 61\r?\n",
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300113 'pattern': '__ignored__',
114 'fixup': {"pass": "PASSED", "fail": "FAILED", "skip": "SKIPPED"},
115 },
116]
117
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300118
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100119# MPS2 with BL2 bootloader
120# IMAGE0ADDRESS: 0x10000000
121# IMAGE0FILE: \Software\bl2.bin ; BL2 bootloader
122# IMAGE1ADDRESS: 0x10080000
123# IMAGE1FILE: \Software\tfm_s_ns_signed.bin ; TF-M example application binary blob
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100124tfm_mps2_sse_200 = {
Matthew Hart2c2688f2020-05-26 13:09:20 +0100125 "templ": "mps2.jinja2",
126 "job_name": "mps2_an521_bl2",
Minos Galanakisafb43152019-09-25 14:17:39 +0100127 "device_type": "mps",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100128 "job_timeout": 15,
129 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800130 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100131 "poweroff_timeout": 1,
132 "recovery_store_url": "https://ci.trustedfirmware.org/userContent/",
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100133 "platforms": {"AN521": "mps2_sse200_an512_new.tar.gz"},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800134 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100135 "build_types": ["Debug", "Release", "Minsizerel"],
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100136 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800137 "binaries": {
138 "firmware": "tfm_s_ns_signed.bin",
139 "bootloader": "bl2.bin"
140 },
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100141 "tests": {
142 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800143 "monitors": monitors_no_reg_tests
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100144 }, # Default
Xinyu Zhang244e1862021-03-12 16:21:54 +0800145 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800146 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800147 }, # DefaultProfileS
148 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800149 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800150 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800151 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800152 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800153 }, # DefaultProfileL
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100154 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800155 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100156 }, # Regression
Xinyu Zhang244e1862021-03-12 16:21:54 +0800157 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800158 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800159 }, # RegressionProfileM
160 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800161 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800162 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800163 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800164 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800165 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100166 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800167 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100168 }, # Regression
169 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800170 "monitors": monitors_reg_tests
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100171 }, # Regression
Xinyu Zhang244e1862021-03-12 16:21:54 +0800172 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800173 "monitors": monitors_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800174 }, # Regression
Minos Galanakisea421232019-06-20 17:11:28 +0100175 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800176 "monitors": monitors_no_reg_tests
Minos Galanakisea421232019-06-20 17:11:28 +0100177 }, # CoreIPC
178 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800179 "monitors": monitors_no_reg_tests
Minos Galanakisea421232019-06-20 17:11:28 +0100180 }, # CoreIPCTfmLevel2
Xinyu Zhang244e1862021-03-12 16:21:54 +0800181 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800182 "monitors": monitors_no_reg_tests
Xinyu Zhang244e1862021-03-12 16:21:54 +0800183 }, # CoreIPCTfmLevel3
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300184 'PsaApiTest_Crypto': {
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300185 "monitors": monitors_psaapitest_crypto_workaround,
186 }, # PsaApiTest_Crypto
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300187 'PsaApiTest_STORAGE': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300188 "monitors": monitors_psaapitest_by_desc,
189 }, # PsaApiTest_Storage
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300190 'PsaApiTestIPC_STORAGE': {
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300191 "monitors": monitors_psaapitest_by_desc,
192 }, # PsaApiTestIPC_Storage
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300193 'PsaApiTest_Attest': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300194 "monitors": monitors_psaapitest_by_ut,
195 }, # PsaApiTest_Attest
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300196 'PsaApiTestIPC_Attest': {
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300197 "monitors": monitors_psaapitest_by_ut,
198 }, # PsaApiTestIPC_Attest
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100199 } # Tests
200}
201
Bence Balogh4fe9b882022-03-30 15:23:47 +0200202# FVP with BL2 bootloader
203# firmware <-> ns <-> application: --application cpu0=bl2.axf
204# bootloader <-> s <-> data: --data cpu0=tfm_s_ns_signed.bin@0x01000000
205fvp_mps3_an552_bl2 = {
206 "templ": "fvp_mps3.jinja2",
207 "job_name": "fvp_mps3_an552_bl2",
208 "device_type": "fvp",
209 "job_timeout": 15,
210 "action_timeout": 10,
211 "monitor_timeout": 15,
212 "poweroff_timeout": 1,
213 "platforms": {"AN552": ""},
214 "compilers": ["GCC", "ARMCLANG"],
215 "build_types": ["Debug", "Release"],
216 "boot_types": ["BL2"],
217 "data_bin_offset": "0x01000000",
218 "binaries": {
219 "application": "bl2.axf",
220 "data": "tfm_s_ns_signed.bin"
221 },
222 "tests": {
223 'Default': {
224 "monitors": monitors_no_reg_tests
225 }, # Default
226 'Regression': {
227 "monitors": monitors_reg_tests
228 }, # Regression
229 'RegressionIPC': {
230 "monitors": monitors_reg_tests
231 }, # Regression
232 'RegressionIPCTfmLevel2': {
233 "monitors": monitors_reg_tests
234 }, # Regression
235 'RegressionIPCTfmLevel3': {
236 "monitors": monitors_reg_tests
237 }, # Regression
238 'CoreIPC': {
239 "monitors": monitors_no_reg_tests
240 }, # CoreIPC
241 'CoreIPCTfmLevel2': {
242 "monitors": monitors_no_reg_tests
243 }, # CoreIPCTfmLevel2
244 'CoreIPCTfmLevel3': {
245 "monitors": monitors_no_reg_tests
246 }, # CoreIPCTfmLevel3
247
248 } # Tests
249}
Dean Bircha6ede7e2020-03-13 14:00:33 +0000250
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100251# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800252# application: --application cpu0=bl2.axf
253# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100254fvp_mps2_an521_bl2 = {
255 "templ": "fvp_mps2.jinja2",
256 "job_name": "fvp_mps2_an521_bl2",
Dean Bircha6ede7e2020-03-13 14:00:33 +0000257 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100258 "job_timeout": 15,
259 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800260 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000261 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100262 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800263 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100264 "build_types": ["Debug", "Release", "Minsizerel"],
Dean Bircha6ede7e2020-03-13 14:00:33 +0000265 "boot_types": ["BL2"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000266 "data_bin_offset": "0x10080000",
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800267 "binaries": {
268 "application": "bl2.axf",
269 "data": "tfm_s_ns_signed.bin"
270 },
Matthew Hartfb6fd362020-03-04 21:03:59 +0000271 "tests": {
272 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800273 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000274 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800275 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800276 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800277 }, # DefaultProfileS
278 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800279 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800280 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800281 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800282 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800283 }, # DefaultProfileL
Matthew Hartfb6fd362020-03-04 21:03:59 +0000284 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800285 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100286 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800287 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800288 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800289 }, # RegressionProfileM
290 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800291 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800292 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800293 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800294 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800295 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100296 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800297 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100298 }, # Regression
299 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800300 "monitors": monitors_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000301 }, # Regression
Karl Zhang3b092ef2020-11-06 16:56:25 +0800302 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800303 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800304 }, # Regression
Matthew Hartfb6fd362020-03-04 21:03:59 +0000305 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800306 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000307 }, # CoreIPC
308 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800309 "monitors": monitors_no_reg_tests
Matthew Hartfb6fd362020-03-04 21:03:59 +0000310 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800311 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800312 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800313 }, # CoreIPCTfmLevel3
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300314 'PsaApiTest_Crypto': {
Paul Sokolovsky7eae9752022-02-09 21:38:55 +0300315 "monitors": monitors_psaapitest_crypto_workaround,
316 }, # PsaApiTest_Crypto
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300317 'PsaApiTest_STORAGE': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300318 "monitors": monitors_psaapitest_by_desc,
319 }, # PsaApiTest_Storage
320
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300321 'PsaApiTestIPC_STORAGE': {
Paul Sokolovsky0c82ae22022-02-16 20:01:10 +0300322 "monitors": monitors_psaapitest_by_desc,
323 }, # PsaApiTestIPC_Storage
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300324 'PsaApiTest_Attest': {
Paul Sokolovsky6024d012022-01-22 20:21:07 +0300325 "monitors": monitors_psaapitest_by_ut,
326 }, # PsaApiTest_Attest
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300327 'PsaApiTestIPC_Attest': {
Paul Sokolovsky46ff5312022-02-16 20:23:01 +0300328 "monitors": monitors_psaapitest_by_ut,
329 }, # PsaApiTestIPC_Attest
330
Matthew Hartfb6fd362020-03-04 21:03:59 +0000331 } # Tests
332}
333
334
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100335# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800336# application: --application cpu0=tfm_s.axf
337# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100338fvp_mps2_an521_nobl2 = {
339 "templ": "fvp_mps2.jinja2",
340 "job_name": "fvp_mps2_an521_nobl2",
Matthew Hartfb6fd362020-03-04 21:03:59 +0000341 "device_type": "fvp",
Matthew Hart2c2688f2020-05-26 13:09:20 +0100342 "job_timeout": 15,
343 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800344 "monitor_timeout": 15,
Matthew Hartfb6fd362020-03-04 21:03:59 +0000345 "poweroff_timeout": 1,
Dean Birch1d545c02020-05-29 14:09:21 +0100346 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800347 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100348 "build_types": ["Debug", "Release", "Minsizerel"],
Matthew Hartfb6fd362020-03-04 21:03:59 +0000349 "boot_types": ["NOBL2"],
350 "data_bin_offset": "0x00100000",
Dean Birch1d545c02020-05-29 14:09:21 +0100351 "cpu_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800352 "binaries": {
353 "application": "tfm_s.axf",
354 "data": "tfm_ns.bin"
355 },
Dean Bircha6ede7e2020-03-13 14:00:33 +0000356 "tests": {
357 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800358 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000359 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800360 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800361 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800362 }, # DefaultProfileS
363 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800364 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800365 }, # DefaultProfileM
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800366 'DefaultProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800367 "monitors": monitors_no_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800368 }, # DefaultProfileL
Dean Bircha6ede7e2020-03-13 14:00:33 +0000369 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800370 "monitors": monitors_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000371 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800372 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800373 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800374 }, # RegressionProfileM
375 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800376 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800377 }, # RegressionProfileS
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800378 'RegressionProfileL': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800379 "monitors": monitors_reg_tests
Xinyu Zhang9b1aef92021-03-12 15:36:44 +0800380 }, # RegressionProfileL
Matthew Hart2c2688f2020-05-26 13:09:20 +0100381 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800382 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100383 }, # RegressionIPC
384 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800385 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100386 }, # RegressionIPCTfmLevel2
Karl Zhang3b092ef2020-11-06 16:56:25 +0800387 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800388 "monitors": monitors_reg_tests
Karl Zhang3b092ef2020-11-06 16:56:25 +0800389 }, # RegressionIPCTfmLevel3
Dean Bircha6ede7e2020-03-13 14:00:33 +0000390 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800391 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000392 }, # CoreIPC
393 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800394 "monitors": monitors_no_reg_tests
Dean Bircha6ede7e2020-03-13 14:00:33 +0000395 }, # CoreIPCTfmLevel2
Xinyu Zhang204dc372020-11-12 14:18:00 +0800396 'CoreIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800397 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800398 }, # CoreIPCTfmLevel3
Dean Bircha6ede7e2020-03-13 14:00:33 +0000399 } # Tests
400}
401
Matthew Hart2c2688f2020-05-26 13:09:20 +0100402
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100403# FVP with BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800404# application: --application cpu0=bl2.axf
405# data: --data cpu0=tfm_s_ns_signed.bin@0x10080000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100406fvp_mps2_an519_bl2 = {
407 "templ": "fvp_mps2.jinja2",
408 "job_name": "fvp_mps2_an519_bl2",
409 "device_type": "fvp",
410 "job_timeout": 15,
411 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800412 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100413 "poweroff_timeout": 1,
414 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800415 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100416 "build_types": ["Debug", "Release", "Minsizerel"],
417 "boot_types": ["BL2"],
418 "data_bin_offset": "0x10080000",
419 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800420 "binaries": {
421 "application": "bl2.axf",
422 "data": "tfm_s_ns_signed.bin"
423 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100424 "tests": {
425 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800426 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100427 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800428 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800429 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800430 }, # DefaultProfileS
431 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800432 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800433 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100434 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800435 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100436 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800437 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800438 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800439 }, # RegressionProfileM
440 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800441 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800442 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100443 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800444 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100445 }, # Regression
446 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800447 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100448 }, # Regression
449 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800450 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100451 }, # CoreIPC
452 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800453 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100454 }, # CoreIPCTfmLevel2
455 } # Tests
456}
457
458
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100459# FVP without BL2 bootloader
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800460# application: --application cpu0=tfm_s.axf
461# data: --data cpu0=tfm_ns.bin@0x00100000
Matthew Hart2c2688f2020-05-26 13:09:20 +0100462fvp_mps2_an519_nobl2 = {
463 "templ": "fvp_mps2.jinja2",
464 "job_name": "fvp_mps2_an519_nobl2",
465 "device_type": "fvp",
466 "job_timeout": 15,
467 "action_timeout": 10,
Xinyu Zhangd8703f02021-05-18 20:30:07 +0800468 "monitor_timeout": 15,
Matthew Hart2c2688f2020-05-26 13:09:20 +0100469 "poweroff_timeout": 1,
470 "platforms": {"AN519": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800471 "compilers": ["GCC", "ARMCLANG"],
Matthew Hart2c2688f2020-05-26 13:09:20 +0100472 "build_types": ["Debug", "Release", "Minsizerel"],
473 "boot_types": ["NOBL2"],
474 "data_bin_offset": "0x00100000",
475 "cpu0_baseline": 1,
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800476 "binaries": {
477 "application": "tfm_s.axf",
478 "data": "tfm_ns.bin"
479 },
Matthew Hart2c2688f2020-05-26 13:09:20 +0100480 "tests": {
481 'Default': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800482 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100483 }, # Default
Xinyu Zhang204dc372020-11-12 14:18:00 +0800484 'DefaultProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800485 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800486 }, # DefaultProfileS
487 'DefaultProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800488 "monitors": monitors_no_reg_tests
Xinyu Zhang204dc372020-11-12 14:18:00 +0800489 }, # DefaultProfileM
Matthew Hart2c2688f2020-05-26 13:09:20 +0100490 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800491 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100492 }, # Regression
Karl Zhang2b10b342020-11-09 14:50:11 +0800493 'RegressionProfileM': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800494 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800495 }, # RegressionProfileM
496 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800497 "monitors": monitors_reg_tests
Karl Zhang2b10b342020-11-09 14:50:11 +0800498 }, # RegressionProfileS
Matthew Hart2c2688f2020-05-26 13:09:20 +0100499 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800500 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100501 }, # RegressionIPC
502 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800503 "monitors": monitors_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100504 }, # RegressionIPCTfmLevel2
505 'CoreIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800506 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100507 }, # CoreIPC
508 'CoreIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800509 "monitors": monitors_no_reg_tests
Matthew Hart2c2688f2020-05-26 13:09:20 +0100510 }, # CoreIPCTfmLevel2
511 } # Tests
512}
513
514
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800515# QEMU for MPS2 with BL2 bootloader
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100516qemu_mps2_bl2 = {
517 "templ": "qemu_mps2_bl2.jinja2",
518 "job_name": "qemu_mps2_bl2",
519 "device_type": "qemu",
520 "job_timeout": 300,
521 "action_timeout": 300,
522 "poweroff_timeout": 20,
523 "platforms": {"AN521": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800524 "compilers": ["GCC", "ARMCLANG"],
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100525 "build_types": ["Debug", "Release"],
526 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800527 "binaries": {
528 "firmware": "tfm_s_ns_signed.bin",
529 "bootloader": "bl2.bin"
530 },
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800531 "tests": {
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800532 'Regression': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800533 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800534 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800535 'RegressionProfileS': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800536 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800537 }, # RegressionProfileS
538 'RegressionIPC': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800539 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800540 }, # Regression
541 'RegressionIPCTfmLevel2': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800542 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800543 }, # Regression
544 'RegressionIPCTfmLevel3': {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800545 "monitors": monitors_reg_tests
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800546 }, # Regression
Xinyu Zhange89f45c2021-09-14 21:11:59 +0800547 }
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100548}
549
550
551# Musca-B1 with BL2 bootloader
552# unified hex file comprising of both bl2.bin and tfm_s_ns_signed.bin
553# 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 +0100554musca_b1_bl2 = {
555 "templ": "musca_b1.jinja2",
556 "job_name": "musca_b1_bl2",
557 "device_type": "musca-b",
Xinyu Zhang630dfe62021-06-17 14:38:11 +0800558 "job_timeout": 40,
559 "action_timeout": 20,
560 "monitor_timeout": 30,
Ryan Harkinf6981082020-12-18 14:54:33 +0000561 "poweroff_timeout": 40,
Fathi Boudra31225f72020-11-25 13:51:07 +0100562 "platforms": {"MUSCA_B1": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800563 "compilers": ["GCC", "ARMCLANG"],
Xinyu Zhang43e5d672021-03-24 16:30:26 +0800564 "build_types": ["Debug", "Release", "Minsizerel"],
Fathi Boudra31225f72020-11-25 13:51:07 +0100565 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800566 "binaries": {
567 "firmware": "tfm.hex",
568 },
Fathi Boudra31225f72020-11-25 13:51:07 +0100569 "tests": {
570 "Default": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800571 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100572 },
573 "CoreIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800574 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100575 },
576 "CoreIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800577 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100578 },
579 "CoreIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800580 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100581 },
582 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800583 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100584 },
585 "DefaultProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800586 "monitors": monitors_no_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100587 },
588 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800589 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100590 },
591 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800592 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100593 },
594 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800595 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100596 },
597 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800598 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100599 },
600 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800601 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100602 },
603 "RegressionProfileS": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800604 "monitors": monitors_reg_tests
Fathi Boudra31225f72020-11-25 13:51:07 +0100605 },
606 },
607}
608
Xinyu Zhang97114342021-01-21 14:08:03 +0800609# Musca-B1 with BL2 bootloader and OTP enabled
610# unified hex file comprising of both bl2.bin and tfm_s_ns_signed.bin
611# srec_cat bin/bl2.bin -Binary -offset 0xA000000 bin/tfm_s_ns_signed.bin -Binary -offset 0xA020000 -o tfm.hex -Intel
612musca_b1_otp_bl2 = {
613 "templ": "musca_b1_otp.jinja2",
614 "job_name": "musca_b1_opt_bl2",
615 "device_type": "musca-b",
Xinyu Zhang630dfe62021-06-17 14:38:11 +0800616 "job_timeout": 40,
617 "action_timeout": 20,
618 "monitor_timeout": 30,
Xinyu Zhang97114342021-01-21 14:08:03 +0800619 "poweroff_timeout": 40,
620 "platforms": {"MUSCA_B1_OTP": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800621 "compilers": ["GCC"],
Xinyu Zhang97114342021-01-21 14:08:03 +0800622 "build_types": ["Debug"],
623 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800624 "binaries": {
625 "firmware": "tfm.hex",
626 },
Xinyu Zhang97114342021-01-21 14:08:03 +0800627 "tests": {
628 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800629 "monitors": monitors_reg_tests
Xinyu Zhang97114342021-01-21 14:08:03 +0800630 },
631 },
632}
633
Arthur She07c91b52021-07-15 15:03:10 -0700634# STM32L562E-DK
635stm32l562e_dk = {
636 "templ": "stm32l562e_dk.jinja2",
637 "job_name": "stm32l562e_dk",
638 "device_type": "stm32l562e-dk",
639 "job_timeout": 24,
640 "action_timeout": 15,
641 "monitor_timeout": 15,
642 "poweroff_timeout": 5,
643 "platforms": {"stm32l562e_dk": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800644 "compilers": ["GCC", "ARMCLANG"],
Arthur She07c91b52021-07-15 15:03:10 -0700645 "build_types": ["Release", "Minsizerel"],
646 "boot_types": ["BL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800647 "binaries": {
648 "tarball": "stm32l562e-dk-tfm.tar.bz2",
649 },
Arthur She07c91b52021-07-15 15:03:10 -0700650 "tests": {
651 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800652 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700653 },
654 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800655 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700656 },
657 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800658 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700659 },
660 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800661 "monitors": monitors_reg_tests
Arthur She07c91b52021-07-15 15:03:10 -0700662 },
663 },
664}
Xinyu Zhang97114342021-01-21 14:08:03 +0800665
Arthur She3c0dadd2021-11-18 21:17:48 -0800666# LPCxpresso55S69
667lpcxpresso55s69 = {
668 "templ": "lpcxpresso55s69.jinja2",
669 "job_name": "lpcxpresso55s69",
670 "device_type": "lpcxpresso55s69",
671 "job_timeout": 24,
672 "action_timeout": 15,
673 "monitor_timeout": 15,
674 "poweroff_timeout": 5,
675 "platforms": {"lpcxpresso55s69": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800676 "compilers": ["GCC"],
Arthur She3c0dadd2021-11-18 21:17:48 -0800677 "build_types": ["Relwithdebinfo"],
678 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800679 "binaries": {
680 "tarball": "lpcxpresso55s69-tfm.tar.bz2",
681 },
Arthur She3c0dadd2021-11-18 21:17:48 -0800682 "tests": {
683 "DefaultProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800684 "monitors": monitors_no_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800685 },
686 "RegressionProfileM": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800687 "monitors": monitors_reg_tests
Arthur She3c0dadd2021-11-18 21:17:48 -0800688 },
689 }
690}
691
Arthur She87602dc2022-02-06 14:42:18 -0800692# Cypress PSoC64
693psoc64 = {
694 "templ": "psoc64.jinja2",
695 "job_name": "psoc64",
696 "device_type": "cy8ckit-064s0s2-4343w",
697 "job_timeout": 120,
698 "action_timeout": 120,
699 "monitor_timeout": 120,
700 "poweroff_timeout": 5,
701 "platforms": {"psoc64": ""},
Xinyu Zhang433771e2022-04-01 16:49:17 +0800702 "compilers": ["GCC", "ARMCLANG"],
Arthur She87602dc2022-02-06 14:42:18 -0800703 "build_types": ["Release", "Minsizerel"],
704 "boot_types": ["NOBL2"],
Xinyu Zhang28d61b42022-03-21 16:46:35 +0800705 "binaries": {
706 "spe": "tfm_s_signed.hex",
707 "nspe": "tfm_ns_signed.hex",
708 },
Arthur She87602dc2022-02-06 14:42:18 -0800709 "tests": {
710 "Regression": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800711 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800712 },
713 "RegressionIPC": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800714 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800715 },
716 "RegressionIPCTfmLevel2": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800717 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800718 },
719 "RegressionIPCTfmLevel3": {
Xinyu Zhangf724cd22022-03-21 15:46:26 +0800720 "monitors": monitors_reg_tests
Arthur She87602dc2022-02-06 14:42:18 -0800721 },
722 },
723}
724
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100725# All configurations should be mapped here
Fathi Boudra31225f72020-11-25 13:51:07 +0100726lava_gen_config_map = {
727 "mps2_an521_bl2": tfm_mps2_sse_200,
Bence Balogh4fe9b882022-03-30 15:23:47 +0200728 "fvp_mps3_an552_bl2": fvp_mps3_an552_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100729 "fvp_mps2_an521_bl2": fvp_mps2_an521_bl2,
730 "fvp_mps2_an521_nobl2": fvp_mps2_an521_nobl2,
731 "fvp_mps2_an519_bl2": fvp_mps2_an519_bl2,
732 "fvp_mps2_an519_nobl2": fvp_mps2_an519_nobl2,
Fathi Boudracaa90bd2020-12-04 22:00:14 +0100733 "qemu_mps2_bl2": qemu_mps2_bl2,
Fathi Boudra31225f72020-11-25 13:51:07 +0100734 "musca_b1": musca_b1_bl2,
Xinyu Zhang97114342021-01-21 14:08:03 +0800735 "musca_b1_otp": musca_b1_otp_bl2,
Arthur She07c91b52021-07-15 15:03:10 -0700736 "stm32l562e_dk": stm32l562e_dk,
Arthur She3c0dadd2021-11-18 21:17:48 -0800737 "lpcxpresso55s69": lpcxpresso55s69,
Arthur She87602dc2022-02-06 14:42:18 -0800738 "psoc64": psoc64,
Fathi Boudra31225f72020-11-25 13:51:07 +0100739}
Matthew Hart2c2688f2020-05-26 13:09:20 +0100740
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +0100741lavagen_config_sort_order = [
742 "templ",
743 "job_name",
744 "device_type",
745 "job_timeout",
746 "action_timeout",
747 "monitor_timeout",
748 "recovery_store_url",
749 "artifact_store_url",
750 "platforms",
751 "compilers",
752 "build_types",
753 "boot_types",
754 "tests"
755]
756
757lava_gen_monitor_sort_order = [
758 'name',
759 'start',
760 'end',
761 'pattern',
762 'fixup',
763]
764
765if __name__ == "__main__":
766 import os
767 import sys
768 from lava_helper import sort_lavagen_config
769 try:
770 from tfm_ci_pylib.utils import export_config_map
771 except ImportError:
772 dir_path = os.path.dirname(os.path.realpath(__file__))
773 sys.path.append(os.path.join(dir_path, "../"))
774 from tfm_ci_pylib.utils import export_config_map
775
776 if len(sys.argv) == 2:
777 if sys.argv[1] == "--export":
778 export_config_map(lava_gen_config_map)
779 if len(sys.argv) == 3:
780 if sys.argv[1] == "--export":
781 export_config_map(sort_lavagen_config(lava_gen_config_map),
782 sys.argv[2])