blob: 254db6eac5d9f32146161dffd46c65eb97823cab [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
Kevin Peng5cba61c2023-01-06 14:23:15 +08008mainmenu "TF-M Configuration"
9
Jianliang Shen710cb952022-10-08 11:32:35 +080010# Load platform Kconfig file if exists
11osource "$(PLATFORM_PATH)/Kconfig"
Jianliang Shen5ec17172023-02-20 15:10:44 +080012osource "$(TFM_SOURCE_DIR)/config/build_type/Kconfig.$(CMAKE_BUILD_TYPE)"
Jianliang Shen710cb952022-10-08 11:32:35 +080013
Jianliang Shenf6d1fab2023-02-20 14:57:53 +080014################################# System options ###############################
Jianliang Shenf57c6a72023-02-20 14:04:38 +080015
16rsource "Kconfig.bl"
Kevin Peng5cba61c2023-01-06 14:23:15 +080017rsource "secure_fw/spm/Kconfig"
Jianliang Shenf6d1fab2023-02-20 14:57:53 +080018rsource "secure_fw/partitions/Kconfig" # These are partition switches.
Jianliang Shen710cb952022-10-08 11:32:35 +080019rsource "platform/Kconfig"
Jianliang Shenf6d1fab2023-02-20 14:57:53 +080020rsource "Kconfig.misc"
Jianliang Shen710cb952022-10-08 11:32:35 +080021
Jianliang Shenf6d1fab2023-02-20 14:57:53 +080022################################# Test options #################################
Jianliang Shen710cb952022-10-08 11:32:35 +080023
24menu "TF-M tests"
25rsource "lib/ext/tf-m-tests/Kconfig"
26rsource "lib/ext/psa_arch_tests/Kconfig"
27endmenu
28
29################################# Component ####################################
30
Jianliang Shen2b24f252022-11-25 11:08:54 +080031# 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.
Jianliang Shen710cb952022-10-08 11:32:35 +080034
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"
Jianliang Shen5f00ed32023-02-20 14:55:41 +080042
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
Kevin Peng5cba61c2023-01-06 14:23:15 +080048rsource "secure_fw/spm/Kconfig.comp"
Jianliang Shen710cb952022-10-08 11:32:35 +080049
50menu "Secure Partitions component configs"
Kevin Peng5cba61c2023-01-06 14:23:15 +080051 rsource "secure_fw/partitions/*/Kconfig.comp"
Jianliang Shen710cb952022-10-08 11:32:35 +080052endmenu
53endmenu