blob: df5216cca2d2ae12cc28a0b1307954822d825857 [file] [log] [blame]
Jianliang Shen710cb952022-10-08 11:32:35 +08001#-------------------------------------------------------------------------------
Jianliang Shenf57c6a72023-02-20 14:04:38 +08002# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
Jianliang Shen710cb952022-10-08 11:32:35 +08003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8menu "TF-M regression tests"
9
Jianliang Shenf57c6a72023-02-20 14:04:38 +080010################################# Bootloader test ##############################
11
12config TEST_BL1_1
13 bool "BL1_1 tests"
14 default n
15 depends on BL1
16
17config TEST_BL1_2
18 bool "BL1_2 tests"
19 default n
20 depends on BL1
21
22config TEST_BL2
23 bool "BL2 tests"
24 default n
25 depends on BL2
26
27################################# Regression test ##############################
28
Jianliang Shen710cb952022-10-08 11:32:35 +080029config TEST_S
30 bool "Enable default secure test cases"
31 default n
32 imply TEST_S_ATTESTATION
33 imply TEST_S_CRYPTO
34 imply TEST_S_ITS
35 imply TEST_S_PS
36 imply TEST_S_PLATFORM
37 imply TEST_S_FWU
38 imply TEST_S_SFN_BACKEND
39
40config TEST_NS
41 bool "Enable default non-secure test cases"
Jianliang Shen710cb952022-10-08 11:32:35 +080042 default n
43 imply TEST_NS_ATTESTATION
44 imply TEST_NS_T_COSE
45 imply TEST_NS_QCBOR
46 imply TEST_NS_CRYPTO
47 imply TEST_NS_PS
48 imply TEST_NS_ITS
49 imply TEST_NS_PLATFORM
50 imply TEST_NS_FWU
51 imply TEST_NS_MULTI_CORE
52 imply TEST_NS_MANAGE_NSID
53 imply TEST_NS_IPC
54 imply TEST_NS_SFN_BACKEND
55
56################################# Secure test ##################################
57
58menu "Secure regression tests"
59
60config TEST_S_ATTESTATION
61 bool "Attestation"
Jianliang Shen2b24f252022-11-25 11:08:54 +080062 default n
63 imply TFM_PARTITION_INITIAL_ATTESTATION
64 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
65 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +080066
67config TEST_S_CRYPTO
68 bool "Crypto"
Jianliang Shen2b24f252022-11-25 11:08:54 +080069 default n
70 imply TFM_PARTITION_CRYPTO
71 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +080072
73config TEST_S_ITS
74 bool "ITS"
Jianliang Shen2b24f252022-11-25 11:08:54 +080075 default n
76 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +080077
78config TEST_S_PS
79 bool "PS"
Jianliang Shen2b24f252022-11-25 11:08:54 +080080 default n
81 imply TFM_PARTITION_PROTECTED_STORAGE
82 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
83 imply TFM_PARTITION_CRYPTO
84 imply TFM_PARTITION_PLATFORM
85
Jianliang Shen710cb952022-10-08 11:32:35 +080086config TEST_S_PLATFORM
87 bool "Platform"
Jianliang Shen2b24f252022-11-25 11:08:54 +080088 default n
89 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +080090
91config TEST_S_FWU
92 bool "FWU"
Jianliang Shendfddc982022-11-29 15:08:19 +080093 depends on PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT
Jianliang Shen2b24f252022-11-25 11:08:54 +080094 imply TFM_PARTITION_FIRMWARE_UPDATE
Jianliang Shendfddc982022-11-29 15:08:19 +080095 imply TFM_PARTITION_CRYPTO
96 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
97 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +080098
99config TEST_S_IPC
100 bool "IPC"
Kevin Peng6727c042023-02-03 10:52:19 +0800101 depends on CONFIG_TFM_SPM_BACKEND_IPC
Jianliang Shen710cb952022-10-08 11:32:35 +0800102
103config TEST_S_SFN_BACKEND
104 bool "SFN backend"
Jianliang Shen1229c092023-02-20 14:06:08 +0800105 depends on CONFIG_TFM_SPM_BACKEND_SFN
Jianliang Shen710cb952022-10-08 11:32:35 +0800106
107config TEST_S_FPU
108 bool "FPU"
Jianliang Shendb114b52023-02-20 14:28:05 +0800109 depends on CONFIG_TFM_ENABLE_FP
Jianliang Shen710cb952022-10-08 11:32:35 +0800110 default n
111endmenu
112
113################################# Non-secure test ##############################
114
115menu "Non-Secure regression tests"
Jianliang Shen710cb952022-10-08 11:32:35 +0800116
117config TEST_NS_ATTESTATION
118 bool "Attestation"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800119 default n
120 imply TFM_PARTITION_INITIAL_ATTESTATION
121 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
122 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800123
124config TEST_NS_T_COSE
125 bool "t_cose"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800126 default n
127 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800128 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
129 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800130
131config TEST_NS_QCBOR
132 bool "QCBOR"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800133 default n
134 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800135 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
136 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800137
138config TEST_NS_CRYPTO
139 bool "Crypto"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800140 default n
141 imply TFM_PARTITION_CRYPTO
142 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800143
144config TEST_NS_PS
145 bool "PS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800146 default n
147 imply TFM_PARTITION_PROTECTED_STORAGE
148 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
149 imply TFM_PARTITION_CRYPTO
150 imply TFM_PARTITION_PLATFORM
151 imply TEST_NS_ITS
Jianliang Shen710cb952022-10-08 11:32:35 +0800152
153config TEST_NS_ITS
154 bool "ITS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800155 default n
156 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800157
158config TEST_NS_PLATFORM
159 bool "Platform"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800160 default n
161 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800162
163config TEST_NS_FWU
164 bool "FWU"
Jianliang Shendfddc982022-11-29 15:08:19 +0800165 depends on PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT
Jianliang Shen2b24f252022-11-25 11:08:54 +0800166 imply TFM_PARTITION_FIRMWARE_UPDATE
Jianliang Shendfddc982022-11-29 15:08:19 +0800167 imply TFM_PARTITION_CRYPTO
168 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
169 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800170
171config TEST_NS_MULTI_CORE
172 bool "Multi-core"
173 depends on TFM_MULTI_CORE_TOPOLOGY
174
175config TEST_NS_MANAGE_NSID
176 bool "NSID management"
Jianliang Shen710cb952022-10-08 11:32:35 +0800177
178choice TEST_NS_IRQ
179 prompt "IRQ test type"
Jianliang Shendfddc982022-11-29 15:08:19 +0800180 optional
Jianliang Shen710cb952022-10-08 11:32:35 +0800181
Jianliang Shen710cb952022-10-08 11:32:35 +0800182 config TEST_NS_FLIH_IRQ
183 bool "First-Level Interrupt Handling"
184
185 config TEST_NS_SLIH_IRQ
186 bool "Second-Level Interrupt Handling"
187
188endchoice
189
190config TEST_NS_FPU
191 bool "FPU"
Jianliang Shendb114b52023-02-20 14:28:05 +0800192 depends on CONFIG_TFM_ENABLE_FP
Jianliang Shen710cb952022-10-08 11:32:35 +0800193 default n
194
195config TEST_NS_IPC
196 bool "IPC"
Kevin Peng6727c042023-02-03 10:52:19 +0800197 depends on CONFIG_TFM_SPM_BACKEND_IPC
Jianliang Shen710cb952022-10-08 11:32:35 +0800198
199config TEST_NS_SFN_BACKEND
200 bool "SFN backend"
Jianliang Shen1229c092023-02-20 14:06:08 +0800201 depends on CONFIG_TFM_SPM_BACKEND_SFN
Jianliang Shen710cb952022-10-08 11:32:35 +0800202
203endmenu
204
205################################# Crypto tests #################################
206
207if TEST_NS_CRYPTO || TEST_S_CRYPTO
208
209menu "Crypto Test Configs"
210
211config TFM_CRYPTO_TEST_ALG_CBC
212 bool "Test CBC cryptography mode"
213 default y
214
215config TFM_CRYPTO_TEST_ALG_CCM
216 bool "Test CCM cryptography mode"
217 default y
218
219config TFM_CRYPTO_TEST_ALG_CFB
220 bool "Test CFB cryptography mode"
221 default y
222
223config TFM_CRYPTO_TEST_ALG_ECB
224 bool "Test ECB cryptography mode"
225 default y
226
227config TFM_CRYPTO_TEST_ALG_CTR
228 bool "Test CTR cryptography mode"
229 default y
230
231config TFM_CRYPTO_TEST_ALG_OFB
232 bool "Test OFB cryptography mode"
233 default y
234
235config TFM_CRYPTO_TEST_ALG_GCM
236 bool "Test GCM cryptography mode"
237 default y
238
239config TFM_CRYPTO_TEST_ALG_SHA_384
240 bool "Test SHA-384 cryptography algorithm"
241 default y
242
243config TFM_CRYPTO_TEST_ALG_SHA_512
244 bool "Test SHA-512 cryptography algorithm"
245 default y
246
247config TFM_CRYPTO_TEST_HKDF
248 bool "Test the HKDF key derivation algorithm"
249 default y
250
251config TFM_CRYPTO_TEST_ECDH
252 bool "Test the ECDH key agreement algorithm"
253 default y
254
255config TFM_CRYPTO_TEST_CHACHA20
256 bool "Test the ChaCha20 stream cipher"
257 default n
258
259config TFM_CRYPTO_TEST_ALG_CHACHA20_POLY1305
260 bool "Test ChaCha20-Poly1305 AEAD algorithm"
261 default n
262
263config TFM_CRYPTO_TEST_SINGLE_PART_FUNCS
264 bool "Test single-part operations in hash, MAC, AEAD and symmetric ciphers"
265 default y
266
267endmenu
268endif
269endmenu