blob: d3d0896093d6b9d6ca1fcb556f8fb972f2845394 [file] [log] [blame]
Jianliang Shen710cb952022-10-08 11:32:35 +08001#-------------------------------------------------------------------------------
2# Copyright (c) 2022, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8menu "TF-M regression tests"
9
10config TEST_S
11 bool "Enable default secure test cases"
12 default n
13 imply TEST_S_ATTESTATION
14 imply TEST_S_CRYPTO
15 imply TEST_S_ITS
16 imply TEST_S_PS
17 imply TEST_S_PLATFORM
18 imply TEST_S_FWU
19 imply TEST_S_SFN_BACKEND
20
21config TEST_NS
22 bool "Enable default non-secure test cases"
Jianliang Shen710cb952022-10-08 11:32:35 +080023 default n
24 imply TEST_NS_ATTESTATION
25 imply TEST_NS_T_COSE
26 imply TEST_NS_QCBOR
27 imply TEST_NS_CRYPTO
28 imply TEST_NS_PS
29 imply TEST_NS_ITS
30 imply TEST_NS_PLATFORM
31 imply TEST_NS_FWU
32 imply TEST_NS_MULTI_CORE
33 imply TEST_NS_MANAGE_NSID
34 imply TEST_NS_IPC
35 imply TEST_NS_SFN_BACKEND
36
37################################# Secure test ##################################
38
39menu "Secure regression tests"
40
41config TEST_S_ATTESTATION
42 bool "Attestation"
Jianliang Shen2b24f252022-11-25 11:08:54 +080043 default n
44 imply TFM_PARTITION_INITIAL_ATTESTATION
45 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
46 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +080047
48config TEST_S_CRYPTO
49 bool "Crypto"
Jianliang Shen2b24f252022-11-25 11:08:54 +080050 default n
51 imply TFM_PARTITION_CRYPTO
52 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +080053
54config TEST_S_ITS
55 bool "ITS"
Jianliang Shen2b24f252022-11-25 11:08:54 +080056 default n
57 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +080058
59config TEST_S_PS
60 bool "PS"
Jianliang Shen2b24f252022-11-25 11:08:54 +080061 default n
62 imply TFM_PARTITION_PROTECTED_STORAGE
63 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
64 imply TFM_PARTITION_CRYPTO
65 imply TFM_PARTITION_PLATFORM
66
Jianliang Shen710cb952022-10-08 11:32:35 +080067config TEST_S_PLATFORM
68 bool "Platform"
Jianliang Shen2b24f252022-11-25 11:08:54 +080069 default n
70 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +080071
72config TEST_S_FWU
73 bool "FWU"
Jianliang Shendfddc982022-11-29 15:08:19 +080074 depends on PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT
Jianliang Shen2b24f252022-11-25 11:08:54 +080075 imply TFM_PARTITION_FIRMWARE_UPDATE
Jianliang Shendfddc982022-11-29 15:08:19 +080076 imply TFM_PARTITION_CRYPTO
77 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
78 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +080079
80config TEST_S_IPC
81 bool "IPC"
Kevin Peng6727c042023-02-03 10:52:19 +080082 depends on CONFIG_TFM_SPM_BACKEND_IPC
Jianliang Shen710cb952022-10-08 11:32:35 +080083
84config TEST_S_SFN_BACKEND
85 bool "SFN backend"
86 depends on TFM_SPM_BACKEND_SFN
87
88config TEST_S_FPU
89 bool "FPU"
90 default n
91endmenu
92
93################################# Non-secure test ##############################
94
95menu "Non-Secure regression tests"
Jianliang Shen710cb952022-10-08 11:32:35 +080096
97config TEST_NS_ATTESTATION
98 bool "Attestation"
Jianliang Shen2b24f252022-11-25 11:08:54 +080099 default n
100 imply TFM_PARTITION_INITIAL_ATTESTATION
101 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
102 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800103
104config TEST_NS_T_COSE
105 bool "t_cose"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800106 default n
107 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800108 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
109 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800110
111config TEST_NS_QCBOR
112 bool "QCBOR"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800113 default n
114 imply TFM_PARTITION_INITIAL_ATTESTATION
Jianliang Shendfddc982022-11-29 15:08:19 +0800115 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
116 imply TFM_PARTITION_CRYPTO
Jianliang Shen710cb952022-10-08 11:32:35 +0800117
118config TEST_NS_CRYPTO
119 bool "Crypto"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800120 default n
121 imply TFM_PARTITION_CRYPTO
122 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800123
124config TEST_NS_PS
125 bool "PS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800126 default n
127 imply TFM_PARTITION_PROTECTED_STORAGE
128 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
129 imply TFM_PARTITION_CRYPTO
130 imply TFM_PARTITION_PLATFORM
131 imply TEST_NS_ITS
Jianliang Shen710cb952022-10-08 11:32:35 +0800132
133config TEST_NS_ITS
134 bool "ITS"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800135 default n
136 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
Jianliang Shen710cb952022-10-08 11:32:35 +0800137
138config TEST_NS_PLATFORM
139 bool "Platform"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800140 default n
141 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800142
143config TEST_NS_FWU
144 bool "FWU"
Jianliang Shendfddc982022-11-29 15:08:19 +0800145 depends on PLATFORM_HAS_FIRMWARE_UPDATE_SUPPORT
Jianliang Shen2b24f252022-11-25 11:08:54 +0800146 imply TFM_PARTITION_FIRMWARE_UPDATE
Jianliang Shendfddc982022-11-29 15:08:19 +0800147 imply TFM_PARTITION_CRYPTO
148 imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
149 imply TFM_PARTITION_PLATFORM
Jianliang Shen710cb952022-10-08 11:32:35 +0800150
151config TEST_NS_MULTI_CORE
152 bool "Multi-core"
153 depends on TFM_MULTI_CORE_TOPOLOGY
154
155config TEST_NS_MANAGE_NSID
156 bool "NSID management"
Jianliang Shen710cb952022-10-08 11:32:35 +0800157
158choice TEST_NS_IRQ
159 prompt "IRQ test type"
Jianliang Shendfddc982022-11-29 15:08:19 +0800160 optional
Jianliang Shen710cb952022-10-08 11:32:35 +0800161
Jianliang Shen710cb952022-10-08 11:32:35 +0800162 config TEST_NS_FLIH_IRQ
163 bool "First-Level Interrupt Handling"
164
165 config TEST_NS_SLIH_IRQ
166 bool "Second-Level Interrupt Handling"
167
168endchoice
169
170config TEST_NS_FPU
171 bool "FPU"
172 default n
173
174config TEST_NS_IPC
175 bool "IPC"
Kevin Peng6727c042023-02-03 10:52:19 +0800176 depends on CONFIG_TFM_SPM_BACKEND_IPC
Jianliang Shen710cb952022-10-08 11:32:35 +0800177
178config TEST_NS_SFN_BACKEND
179 bool "SFN backend"
Jianliang Shen2b24f252022-11-25 11:08:54 +0800180 depends on TFM_SPM_BACKEND_SFN
Jianliang Shen710cb952022-10-08 11:32:35 +0800181
182endmenu
183
184################################# Crypto tests #################################
185
186if TEST_NS_CRYPTO || TEST_S_CRYPTO
187
188menu "Crypto Test Configs"
189
190config TFM_CRYPTO_TEST_ALG_CBC
191 bool "Test CBC cryptography mode"
192 default y
193
194config TFM_CRYPTO_TEST_ALG_CCM
195 bool "Test CCM cryptography mode"
196 default y
197
198config TFM_CRYPTO_TEST_ALG_CFB
199 bool "Test CFB cryptography mode"
200 default y
201
202config TFM_CRYPTO_TEST_ALG_ECB
203 bool "Test ECB cryptography mode"
204 default y
205
206config TFM_CRYPTO_TEST_ALG_CTR
207 bool "Test CTR cryptography mode"
208 default y
209
210config TFM_CRYPTO_TEST_ALG_OFB
211 bool "Test OFB cryptography mode"
212 default y
213
214config TFM_CRYPTO_TEST_ALG_GCM
215 bool "Test GCM cryptography mode"
216 default y
217
218config TFM_CRYPTO_TEST_ALG_SHA_384
219 bool "Test SHA-384 cryptography algorithm"
220 default y
221
222config TFM_CRYPTO_TEST_ALG_SHA_512
223 bool "Test SHA-512 cryptography algorithm"
224 default y
225
226config TFM_CRYPTO_TEST_HKDF
227 bool "Test the HKDF key derivation algorithm"
228 default y
229
230config TFM_CRYPTO_TEST_ECDH
231 bool "Test the ECDH key agreement algorithm"
232 default y
233
234config TFM_CRYPTO_TEST_CHACHA20
235 bool "Test the ChaCha20 stream cipher"
236 default n
237
238config TFM_CRYPTO_TEST_ALG_CHACHA20_POLY1305
239 bool "Test ChaCha20-Poly1305 AEAD algorithm"
240 default n
241
242config TFM_CRYPTO_TEST_SINGLE_PART_FUNCS
243 bool "Test single-part operations in hash, MAC, AEAD and symmetric ciphers"
244 default y
245
246endmenu
247endif
248endmenu