1#-------------------------------------------------------------------------------
2# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8choice
9    prompt "PSA Arch Test"
10    optional
11    depends on !(TFM_S_REG_TEST || TFM_NS_REG_TEST)
12
13    config PSA_API_TEST_IPC
14        bool "IPC"
15        select TFM_PARTITION_FF_TEST
16        select CONFIG_TFM_DOORBELL_API
17        depends on CONFIG_TFM_SPM_BACKEND_IPC
18
19    config PSA_API_TEST_CRYPTO
20        bool "Crypto"
21        imply TFM_PARTITION_CRYPTO
22        imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
23        imply TFM_PARTITION_PLATFORM
24
25    config PSA_API_TEST_INITIAL_ATTESTATION
26        bool "Initial attestation"
27        imply TFM_PARTITION_INITIAL_ATTESTATION
28        imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
29        imply TFM_PARTITION_CRYPTO
30        imply TFM_PARTITION_PLATFORM
31
32    config PSA_API_TEST_INTERNAL_TRUSTED_STORAGE
33        bool "Internal trusted storage"
34        imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
35
36    config PSA_API_TEST_PROTECTED_STORAGE
37        bool "Protected storage"
38        imply TFM_PARTITION_PROTECTED_STORAGE
39        imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
40        imply TFM_PARTITION_CRYPTO
41        imply TFM_PARTITION_PLATFORM
42
43    config PSA_API_TEST_STORAGE
44        bool "Storage(ITS+PS)"
45        imply TFM_PARTITION_PROTECTED_STORAGE
46        imply TFM_PARTITION_INTERNAL_TRUSTED_STORAGE
47        imply TFM_PARTITION_CRYPTO
48        imply TFM_PARTITION_PLATFORM
49
50endchoice
51
52config TFM_PARTITION_FF_TEST
53    bool
54    default n
55
56config TEST_PSA_API
57    string
58    depends on !(TFM_S_REG_TEST || TFM_NS_REG_TEST)
59    default "IPC" if PSA_API_TEST_IPC
60    default "CRYPTO" if PSA_API_TEST_CRYPTO
61    default "INITIAL_ATTESTATION" if PSA_API_TEST_INITIAL_ATTESTATION
62    default "INTERNAL_TRUSTED_STORAGE" if PSA_API_TEST_INTERNAL_TRUSTED_STORAGE
63    default "PROTECTED_STORAGE" if PSA_API_TEST_PROTECTED_STORAGE
64    default "STORAGE" if PSA_API_TEST_STORAGE
65    default ""
66