Docs: Add document for header file and Kconfig system
Change-Id: I3dfb9b271e10a5b9ee999ce9aa59979d1581a276
Signed-off-by: Kevin Peng <kevin.peng@arm.com>
diff --git a/docs/configuration/index.rst b/docs/configuration/index.rst
index 29db514..391620c 100644
--- a/docs/configuration/index.rst
+++ b/docs/configuration/index.rst
@@ -15,6 +15,8 @@
:glob:
build_configuration.rst
+ Component configuration <header_file_system>
+ Kconfig <kconfig_system>
Profiles <profiles/index>
test_configuration.rst
@@ -23,25 +25,23 @@
them to their requirements. There are two types of configuration options
Building configuration
- Specifies which file or component to include into compilation and build.
- These are options, usually used by a build system to enable/disable
- modules, specify location of external dependency or other selection,
- global to a project. These options shall be considered while adopting TF-M
- to other build systems.
- In the Base configuration table theses options have *Build* type.
+ Specifies which file or component to include into compilation and build.
+ These are options, usually used by a build system to enable/disable
+ modules, specify location of external dependency or other selection, global to
+ a project. Please check the corresponded section :ref:`tfm_cmake_configuration`
Component tuning
To adjust a particular parameter to a desired value. Those options are
local to a component or externally referenced when components are coupled.
- Options are in C header file. The <Header_configuration> has more details about it.
- In the Base configuration table theses options have *Component* type.
+ Options are in C header file. The :ref:`Header_configuration` has more
+ details about it.
.. Note::
Originally, TF-M used CMake variables for both building and component tuning
purposes. It was convenient to have a single system for both building and
component's configurations. To simplify and improve configurability and
better support build systems other than a CMake, TF-M introduced a
- Header configuration and moved component options into a dedicated
+ :ref:`Header_configuration` and moved component options into a dedicated
config headers.
****************
@@ -52,8 +52,8 @@
SPM and platform code only. Starting from the base, users can enable required
services and features using several independent methods to configure TF-M.
-Use <Profiles>.
- There are 4 sets of predefined configurations for a selected
+Use :ref:`tf-m_profiles`.
+ There are 4 sets of predefined configurations for a elected
use cases, called profiles. A user can select a profile by providing
-DTFM_PROFILE=<profile file name>.
Each profiles represented by a pair of configuration files for
@@ -64,11 +64,11 @@
options manually editing CMake and config header files. This is for users
familiar with TF-M.
-Use <Kconfig_system>.
+Use :ref:`Kconfig_system`.
This method is recommended for beginners. Starting from the
- <base configuration> a user can enable necessary services and options.
+ *base configuration* a user can enable necessary services and options.
KConfig ensurers that all selected options are consistent and valid.
- This is new in v1.7.0 and it covers only SPM and PSA ervices. As an output
+ This is new in v1.7.0 and it covers only SPM and PSA services. As an output
KConfig produces a pair of configuration files, similar to a profile.
.. Note::
@@ -83,7 +83,7 @@
A project configueration performed in multiple steps with priorities.
The list below explains the process but for the details specific to
-:ref:`tfm_cmake_configuration` or <Header_configuration> please
+:ref:`tfm_cmake_configuration` or :ref:`Header_configuration` please
check the corresponded document.
#. The base configuration with default values is used as a starting point