blob: b9e4d1a22a66855b0a6474935b99fd34bd21c3e5 [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"
105 depends on TFM_SPM_BACKEND_SFN
106
107config TEST_S_FPU
108 bool "FPU"
109 default n
110endmenu
111
112################################# Non-secure test ##############################
113
114menu "Non-Secure regression tests"
Jianliang Shen710cb952022-10-08 11:32:35 +0800115
116config TEST_NS_ATTESTATION
117 bool "Attestation"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800118 default n
119 imply TFM_PARTITION_INITIAL_ATTESTATION
120 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
121 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800122
123config TEST_NS_T_COSE
124 bool "t_cose"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800125 default n
126 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800127 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
128 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800129
130config TEST_NS_QCBOR
131 bool "QCBOR"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800132 default n
133 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800134 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
135 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800136
137config TEST_NS_CRYPTO
138 bool "Crypto"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800139 default n
140 imply TFM_PARTITION_CRYPTO
141 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800142
143config TEST_NS_PS
144 bool "PS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800145 default n
146 imply TFM_PARTITION_PROTECTED_STORAGE
147 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
148 imply TFM_PARTITION_CRYPTO
149 imply TFM_PARTITION_PLATFORM
150 imply TEST_NS_ITS
Jianliang Shen710cb952022-10-08 11:32:35 +0800151
152config TEST_NS_ITS
153 bool "ITS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800154 default n
155 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800156
157config TEST_NS_PLATFORM
158 bool "Platform"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800159 default n
160 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800161
162config TEST_NS_FWU
163 bool "FWU"
Jianliang Shendfddc982022-11-29 15:08:19 +0800164 depends on PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT
Jianliang Shen2b24f252022-11-25 11:08:54 +0800165 imply TFM_PARTITION_FIRMWARE_UPDATE
Jianliang Shendfddc982022-11-29 15:08:19 +0800166 imply TFM_PARTITION_CRYPTO
167 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
168 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800169
170config TEST_NS_MULTI_CORE
171 bool "Multi-core"
172 depends on TFM_MULTI_CORE_TOPOLOGY
173
174config TEST_NS_MANAGE_NSID
175 bool "NSID management"
Jianliang Shen710cb952022-10-08 11:32:35 +0800176
177choice TEST_NS_IRQ
178 prompt "IRQ test type"
Jianliang Shendfddc982022-11-29 15:08:19 +0800179 optional
Jianliang Shen710cb952022-10-08 11:32:35 +0800180
Jianliang Shen710cb952022-10-08 11:32:35 +0800181 config TEST_NS_FLIH_IRQ
182 bool "First-Level Interrupt Handling"
183
184 config TEST_NS_SLIH_IRQ
185 bool "Second-Level Interrupt Handling"
186
187endchoice
188
189config TEST_NS_FPU
190 bool "FPU"
191 default n
192
193config TEST_NS_IPC
194 bool "IPC"
Kevin Peng6727c042023-02-03 10:52:19 +0800195 depends on CONFIG_TFM_SPM_BACKEND_IPC
Jianliang Shen710cb952022-10-08 11:32:35 +0800196
197config TEST_NS_SFN_BACKEND
198 bool "SFN backend"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800199 depends on TFM_SPM_BACKEND_SFN
Jianliang Shen710cb952022-10-08 11:32:35 +0800200
201endmenu
202
203################################# Crypto tests #################################
204
205if TEST_NS_CRYPTO || TEST_S_CRYPTO
206
207menu "Crypto Test Configs"
208
209config TFM_CRYPTO_TEST_ALG_CBC
210 bool "Test CBC cryptography mode"
211 default y
212
213config TFM_CRYPTO_TEST_ALG_CCM
214 bool "Test CCM cryptography mode"
215 default y
216
217config TFM_CRYPTO_TEST_ALG_CFB
218 bool "Test CFB cryptography mode"
219 default y
220
221config TFM_CRYPTO_TEST_ALG_ECB
222 bool "Test ECB cryptography mode"
223 default y
224
225config TFM_CRYPTO_TEST_ALG_CTR
226 bool "Test CTR cryptography mode"
227 default y
228
229config TFM_CRYPTO_TEST_ALG_OFB
230 bool "Test OFB cryptography mode"
231 default y
232
233config TFM_CRYPTO_TEST_ALG_GCM
234 bool "Test GCM cryptography mode"
235 default y
236
237config TFM_CRYPTO_TEST_ALG_SHA_384
238 bool "Test SHA-384 cryptography algorithm"
239 default y
240
241config TFM_CRYPTO_TEST_ALG_SHA_512
242 bool "Test SHA-512 cryptography algorithm"
243 default y
244
245config TFM_CRYPTO_TEST_HKDF
246 bool "Test the HKDF key derivation algorithm"
247 default y
248
249config TFM_CRYPTO_TEST_ECDH
250 bool "Test the ECDH key agreement algorithm"
251 default y
252
253config TFM_CRYPTO_TEST_CHACHA20
254 bool "Test the ChaCha20 stream cipher"
255 default n
256
257config TFM_CRYPTO_TEST_ALG_CHACHA20_POLY1305
258 bool "Test ChaCha20-Poly1305 AEAD algorithm"
259 default n
260
261config TFM_CRYPTO_TEST_SINGLE_PART_FUNCS
262 bool "Test single-part operations in hash, MAC, AEAD and symmetric ciphers"
263 default y
264
265endmenu
266endif
267endmenu