1#-------------------------------------------------------------------------------
2# Copyright (c) 2022-2023, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8mainmenu "TF-M Configuration"
9
10# Load platform Kconfig file if exists
11osource "$(PLATFORM_PATH)/Kconfig"
12osource "$(TFM_SOURCE_DIR)/config/build_type/Kconfig.$(CMAKE_BUILD_TYPE)"
13
14################################# System options ###############################
15
16rsource "Kconfig.bl"
17rsource "secure_fw/spm/Kconfig"
18rsource "secure_fw/partitions/Kconfig" # These are partition switches.
19rsource "platform/Kconfig"
20rsource "Kconfig.misc"
21
22################################# Test options #################################
23
24menu "TF-M tests"
25rsource "lib/ext/tf-m-tests/Kconfig"
26rsource "lib/ext/psa_arch_tests/Kconfig"
27endmenu
28
29################################# Component ####################################
30
31# These configs in this menu are local to a component or externally referenced
32# when components are coupled. Usually, such options are located in C header
33# file. The Header File Config System has more details about it.
34
35# Other configs above which are not in component menu are TF-M build options to
36# select which file or component to include into compilation. These are options,
37# usually used by a build system to enable/disable modules, specify location of
38# external dependency or other selection, global to a project. These options
39# shall be considered while adopting TF-M to other build systems.
40
41menu "TF-M component configs"
42
43# Load configurations set by PSA arch test
44if TEST_PSA_API != ""
45    rsource "$(TFM_SOURCE_DIR)/config/tests/Kconfig.test_psa_api"
46endif
47
48rsource "secure_fw/spm/Kconfig.comp"
49
50menu "Secure Partitions component configs"
51    rsource "secure_fw/partitions/*/Kconfig.comp"
52endmenu
53endmenu
54