docs: Documentation restructure
- Change main index structure
- Sort out integration and porting guidelines
- Resort table with releases
- Add Tools section. To be adjusted further for tf-m-tools
Intention to minimise files movement to simplify review process.
Affected files shall be moved later after the new structure agreement.
Signed-off-by: Anton Komlev <anton.komlev@arm.com>
Change-Id: I0352bebabe09d4f7b5e8848ee620c0cea6881c94
diff --git a/docs/conf.py b/docs/conf.py
index 796fa83..93912b3 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -107,9 +107,11 @@
# documentation.
#
html_theme_options = {
- 'collapse_navigation': False,
- 'prev_next_buttons_location' : None # Hide Prev and Next buttons
+ 'collapse_navigation' : False,
+ 'prev_next_buttons_location' : None, # Hide Prev and Next buttons
# 'display_version': True, # Show version under logo
+ 'sticky_navigation': True,
+ 'navigation_depth': 2,
}
# Remove the "View page source" link from the top of docs pages
diff --git a/docs/contributing/doc_guidelines.rst b/docs/contributing/doc_guidelines.rst
index d5c5967..dcc9732 100644
--- a/docs/contributing/doc_guidelines.rst
+++ b/docs/contributing/doc_guidelines.rst
@@ -20,7 +20,7 @@
- If the patch modifies a present file, the file's style should be followed
- If creating a new file,
- :doc:`integration guide </integration_guide/tfm_integration_guide>` can be used as a reference.
+ :doc:`integration guide </integration_guide/index>` can be used as a reference.
- When a new style is to be expressed, consult the `Python Documentation Guidelines`_
*************
diff --git a/docs/contributing/index.rst b/docs/contributing/index.rst
index e5f9c66..71ba543 100644
--- a/docs/contributing/index.rst
+++ b/docs/contributing/index.rst
@@ -3,10 +3,14 @@
.. toctree::
:maxdepth: 1
- :glob:
+ :titlesonly:
- *
-
+ The process <contributing_process>
+ Code review <code_review_guide>
+ Maintainers and Owners <maintainers>
+ coding_guide
+ Documentation <doc_guidelines>
+ Design proposal <tfm_design_proposal_guideline>
--------------
diff --git a/docs/getting_started/index.rst b/docs/getting_started/index.rst
index 9e58827..e4e723a 100644
--- a/docs/getting_started/index.rst
+++ b/docs/getting_started/index.rst
@@ -2,10 +2,6 @@
======================
.. toctree::
:maxdepth: 1
- :glob:
- tfm_getting_started
+.. include:: tfm_getting_started.rst
---------------
-
-*Copyright (c) 2020-2021, Arm Limited. All rights reserved.*
diff --git a/docs/getting_started/tfm_getting_started.rst b/docs/getting_started/tfm_getting_started.rst
index 3657f6f..c7f096e 100644
--- a/docs/getting_started/tfm_getting_started.rst
+++ b/docs/getting_started/tfm_getting_started.rst
@@ -1,6 +1,44 @@
-####################################
-Select and set up build environments
-####################################
+##################
+First Things First
+##################
+
+************
+Prerequisite
+************
+Trusted Firmware M provides a reference implementation of platform security
+architecture reference implementation aligning with PSA Certified guidelines.
+It is assumed that the reader is familiar with specifications can be found at
+`Platform Security Architecture Resources <https://developer.arm.com/architectures/security-architectures/platform-security-architecture>`__.
+
+The current TF-M implementation specifically targets TrustZone for ARMv8-M so a
+good understanding of the v8-M architecture is also necessary. A good place to
+get started with ARMv8-M is
+`developer.arm.com <https://developer.arm.com/architectures/cpu-architecture/m-profile>`__.
+
+**************************
+Build and run instructions
+**************************
+Trusted Firmware M source code is available on
+`git.trustedfirmware.org <https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git/>`__.
+
+To build & run TF-M:
+
+ - Follow the this guide to set up and check your environment.
+ - Follow the
+ :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`
+ to compile and build the TF-M source.
+ - Follow the :doc:`Run TF-M examples on Arm platforms </technical_references/instructions/run_tfm_examples_on_arm_platforms>`
+ for information on running the example.
+
+To port TF-M to a another system or OS, follow the
+:doc:`OS Integration Guide </integration_guide/index>`
+
+:doc:`Contributing Guidelines </contributing/contributing_process>` contains guidance on how to
+contribute to this project.
+
+#########################
+Set up build environments
+#########################
TF-M officially supports a limited set of build environments and setups. In
this context, official support means that the environments listed below
@@ -369,8 +407,9 @@
- Python v3.x
- a set of python modules listed in ``tools/requiremtns.txt``
+****************
Dependency chain
-----------------
+****************
.. uml::
@@ -409,9 +448,7 @@
imgtool --> python
@enduml
-##########
-Next steps
-##########
+.. rubric:: Next steps
Here are some next steps for exploring TF-M:
diff --git a/docs/glossary.rst b/docs/glossary.rst
index 2ee18e7..83e283d 100644
--- a/docs/glossary.rst
+++ b/docs/glossary.rst
@@ -49,7 +49,7 @@
permitted.
SP
- Secure Partition:
+ Secure Partition
A logical container for secure services.
SPE
@@ -57,7 +57,7 @@
`PSA term`_. In TF-M this means the secure domain protected by TF-M.
SPM
- Secure Partition Manager
+ Secure Partition Manager
The TF-M component responsible for enumeration, management and isolation
of multiple Secure Partitions within the TEE.
@@ -76,10 +76,12 @@
view, i.e. which is viewed as a single entity from a TF-M point of view.
PS
- Protected Storage service provided by TF-M.
+ Protected Storage
+ One of PSA services provided by TF-M.
ITS
- Internal Trusted Storage service provided by TF-M.
+ Internal Trusted Storage
+ One of PSA services provided by TF-M.
TFM
TF-M
diff --git a/docs/index.rst b/docs/index.rst
index d8e93a7..294e94b 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -67,32 +67,44 @@
</ul>
.. toctree::
- :caption: Table of Contents
- :name: mastertoc
- :titlesonly:
+ :caption: Overview
:maxdepth: 1
:hidden:
- Home<self>
introduction/index
- getting_started/index
- platform/ext/index
- contributing/index
- integration_guide/index
- technical_references/index
+ Getting Started <getting_started/index>
security/index
releases/index
+ Glossary <glossary>
+.. toctree::
+ :caption: Development
+ :maxdepth: 1
+ :hidden:
+
+ Platform Selection<platform/ext/index>
+ Building <technical_references/instructions/tfm_build_instruction>
+ integration_guide/index
+ technical_references/design_docs/index
+ Tools <tools/index>
+
+.. toctree::
+ :caption: Contribution
+ :titlesonly:
+ :hidden:
+
+ Guidelines <contributing/index>
+ contributing/lic
+ DCO <contributing/dco>
.. toctree::
:maxdepth: 2
:hidden:
- :caption: Quick Links
+ :caption: Links
API Reference <https://ci.trustedfirmware.org/view/TF-M/job/tf-m-build-docs-nightly/lastSuccessfulBuild/artifact/trusted-firmware-m/build/docs/reference_manual/html/index.html>
Security Center <https://developer.trustedfirmware.org/w/collaboration/security_center>
- Platform Security Architecture <https://developer.arm.com/architectures/security-architectures/platform-security-architecture>
- Glossary <glossary>
+ PSA <https://www.arm.com/architecture/security-features/platform-security>
--------------
diff --git a/docs/integration_guide/index.rst b/docs/integration_guide/index.rst
index 41bc4d2..0f6e276 100644
--- a/docs/integration_guide/index.rst
+++ b/docs/integration_guide/index.rst
@@ -1,12 +1,140 @@
+#################
Integration Guide
-=================
+#################
+The purpose of this document is to provide a guide on how to integrate TF-M
+with other hardware platforms and operating systems.
+
+
.. toctree::
:maxdepth: 1
- :glob:
- */index
- *
+ NS client integration <non-secure_client_extension_integration_guide.rst>
+ OS migration to Armv8-M <os_migration_guide_armv8m.rst>
+ tfm_fpu_support.rst
+ tfm_secure_irq_integration_guide.rst
+ Adding a Test Suite <tfm_test_suites_addition.rst>
+ How to add a partition <services/tfm_secure_partition_addition>
+
+.. toctree::
+ :maxdepth: 2
+
+ platform/index
+ services/index
+
+
+*****************
+How to build TF-M
+*****************
+Follow the :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
+
+********************************************************
+How to export files for building non-secure applications
+********************************************************
+Explained in the :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
+
+*************************
+How to add a new platform
+*************************
+
+:doc:`Porting TF-M to a New Hardware </integration_guide/platform/porting_TFM_to_a_new_hardware>`
+contains guidance on how to add a new platform.
+
+***************************
+How to integrate another OS
+***************************
+
+OS migration to Armv8-M platforms
+=================================
+To work with TF-M on Armv8-M platforms, the OS needs to support the Armv8-M
+architecture and, in particular, it needs to be able to run in the non-secure
+world. More information about OS migration to the Armv8-M architecture can be
+found in the :doc:`OS requirements <os_migration_guide_armv8m>`. Depending upon
+the system configuration this may require configuring drivers to use appropriate
+address ranges.
+
+Interface with TF-M
+===================
+The files needed for the interface with TF-M are exported at the
+``<install_dir>/interface`` path. The NS side is only allowed to call
+TF-M secure functions (veneers) from the NS Thread mode.
+
+TF-M interface header files are exported in ``<install_dir>/interface/include``
+directory. For example, the Protected Storage (PS) service PSA API is declared
+in the file ``<install_dir>/interface/include/psa/protected_storage.h``.
+
+TF-M also exports a reference implementation of PSA APIs for NS clients in the
+``<install_dir>/interface/src``.
+
+On Armv8-M TrustZone based platforms, NS OS shall implement interface API
+``tfm_ns_interface_dispatch()`` to integrate with TF-M implementation of PSA
+APIs. See ``interface/include/tfm_ns_interface.h`` for the detailed declaration
+of ``tfm_ns_interface_dispatch()``.
+TF-M provides an example of ``tfm_ns_interface_dispatch()`` implementation on
+Armv8-M TrustZone based platforms. In this example, NS OS calls mutex in
+``tfm_ns_interface_dispatch()`` to synchronize multiple NS client calls to TF-M.
+See ``interface/src/tfm_ns_interface.c.example`` for more details.
+
+TF-M provides a reference implementation of NS mailbox on multi-core platforms,
+under folder ``interface/src/multi_core``.
+See :doc:`Mailbox design </technical_references/design_docs/dual-cpu/mailbox_design_on_dual_core_system>`
+for TF-M multi-core mailbox design.
+
+Interface with non-secure world regression tests
+================================================
+A non-secure application that wants to run the non-secure regression tests
+needs to call the ``tfm_non_secure_client_run_tests()``. This function is
+exported into the header file ``test_framework_integ_test.h`` inside the
+``<build_dir>/install`` folder structure in the test specific files,
+i.e. ``<build_dir>/install/export/tfm/test/inc``. The non-secure regression
+tests are precompiled and delivered as a static library which is available in
+``<build_dir>/install/export/tfm/test/lib``, so that the non-secure application
+needs to link against the library to be able to invoke the
+``tfm_non_secure_client_run_tests()`` function. The PS non-secure side
+regression tests rely on some OS functionality e.g. threads, mutexes etc. These
+functions comply with CMSIS RTOS2 standard and have been exported as thin
+wrappers defined in ``os_wrapper.h`` contained in
+``<build_dir>/install/export/tfm/test/inc``. OS needs to provide the
+implementation of these wrappers to be able to run the tests.
+
+NS client Identification
+========================
+
+The NS client identification (NSID) is specified by either SPM or NSPE RTOS.
+If SPM manages the NSID (default option), then the same NSID (-1) will be used
+for all connections from NS clients.
+For the case that NSPE RTOS manages the NSID and/or different NSIDs should be
+used for different NS clients. See
+:doc:`Non-secure Client Extension Integration Guide </integration_guide/non-secure_client_extension_integration_guide>`.
+
+*********************
+Non-secure interrupts
+*********************
+Non-secure interrupts are allowed to preempt Secure thread mode.
+With the current implementation, a NSPE task can spoof the identity of another
+NSPE task. This is an issue only when NSPE has provisions for task isolation.
+Note, that ``AIRCR.PRIS`` is still set to restrict the priority range available
+to NS interrupts to the lower half of available priorities so that it wouldn't
+be possible for any non-secure interrupt to preempt a higher-priority secure
+interrupt.
+
+**********************************
+Integration with non-Cmake systems
+**********************************
+
+Generated Files
+===============
+
+Files that are derived from PSA manifests are generated at build-time by cmake.
+For integration with systems that do no use cmake, the files must be generated
+manually.
+
+The ``tools/tfm_parse_manifest_list.py`` script can be invoked manually. Some
+arguments will be needed to be provided. Please refer to
+``tfm_parse_manifest_list.py --help`` for more details.
+
+Some variables are used in the template files, these will need to be set in the
+environment before the script will succeed when the script is not run via cmake.
--------------
-*Copyright (c) 2020, Arm Limited. All rights reserved.*
+*Copyright (c) 2017-2022, Arm Limited. All rights reserved.*
diff --git a/docs/integration_guide/platform/index.rst b/docs/integration_guide/platform/index.rst
new file mode 100644
index 0000000..9fd2f2c
--- /dev/null
+++ b/docs/integration_guide/platform/index.rst
@@ -0,0 +1,13 @@
+Porting to a new platform
+=========================
+
+.. toctree::
+ :maxdepth: 1
+
+ porting_TFM_to_a_new_hardware
+ /platform/readme
+ /platform/ext/readme
+
+--------------
+
+*Copyright (c) 2020, Arm Limited. All rights reserved.*
diff --git a/docs/integration_guide/porting_TFM_to_a_new_hardware.rst b/docs/integration_guide/platform/porting_TFM_to_a_new_hardware.rst
similarity index 100%
rename from docs/integration_guide/porting_TFM_to_a_new_hardware.rst
rename to docs/integration_guide/platform/porting_TFM_to_a_new_hardware.rst
diff --git a/docs/integration_guide/services/index.rst b/docs/integration_guide/services/index.rst
index f8892ab..7567e78 100644
--- a/docs/integration_guide/services/index.rst
+++ b/docs/integration_guide/services/index.rst
@@ -12,7 +12,6 @@
Platform <tfm_platform_integration_guide>
Protected Storage <tfm_ps_integration_guide>
PSA Proxy <tfm_psa_proxy_integration_guide>
- How to add a partition <tfm_secure_partition_addition>
--------------
diff --git a/docs/integration_guide/services/tfm_ps_integration_guide.rst b/docs/integration_guide/services/tfm_ps_integration_guide.rst
index 66f8d21..f64fe3b 100644
--- a/docs/integration_guide/services/tfm_ps_integration_guide.rst
+++ b/docs/integration_guide/services/tfm_ps_integration_guide.rst
@@ -298,7 +298,7 @@
as the owner of an asset. Only the owner can read, write or delete that asset
based on the creation flags.
-The :doc:`integration guide </integration_guide/tfm_integration_guide>`
+The :doc:`integration guide </integration_guide/index>`
provides further details of non-secure implementation requirements for TF-M.
Cryptographic Interface
diff --git a/docs/integration_guide/tfm_integration_guide.rst b/docs/integration_guide/tfm_integration_guide.rst
deleted file mode 100644
index 6b3ae7a..0000000
--- a/docs/integration_guide/tfm_integration_guide.rst
+++ /dev/null
@@ -1,122 +0,0 @@
-#################
-Integration guide
-#################
-The purpose of this document is to provide a guide on how to integrate TF-M
-with other hardware platforms and operating systems.
-
-*****************
-How to build TF-M
-*****************
-Follow the :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
-
-********************************************************
-How to export files for building non-secure applications
-********************************************************
-Explained in the :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
-
-*************************
-How to add a new platform
-*************************
-
-:doc:`Porting TF-M to a New Hardware </integration_guide/porting_TFM_to_a_new_hardware>`
-contains guidance on how to add a new platform.
-
-***************************
-How to integrate another OS
-***************************
-
-OS migration to Armv8-M platforms
-=================================
-To work with TF-M on Armv8-M platforms, the OS needs to support the Armv8-M
-architecture and, in particular, it needs to be able to run in the non-secure
-world. More information about OS migration to the Armv8-M architecture can be
-found in the :doc:`OS requirements <os_migration_guide_armv8m>`. Depending upon
-the system configuration this may require configuring drivers to use appropriate
-address ranges.
-
-Interface with TF-M
-===================
-The files needed for the interface with TF-M are exported at the
-``<install_dir>/interface`` path. The NS side is only allowed to call
-TF-M secure functions (veneers) from the NS Thread mode.
-
-TF-M interface header files are exported in ``<install_dir>/interface/include``
-directory. For example, the Protected Storage (PS) service PSA API is declared
-in the file ``<install_dir>/interface/include/psa/protected_storage.h``.
-
-TF-M also exports a reference implementation of PSA APIs for NS clients in the
-``<install_dir>/interface/src``.
-
-On Armv8-M TrustZone based platforms, NS OS shall implement interface API
-``tfm_ns_interface_dispatch()`` to integrate with TF-M implementation of PSA
-APIs. See ``interface/include/tfm_ns_interface.h`` for the detailed declaration
-of ``tfm_ns_interface_dispatch()``.
-TF-M provides an example of ``tfm_ns_interface_dispatch()`` implementation on
-Armv8-M TrustZone based platforms. In this example, NS OS calls mutex in
-``tfm_ns_interface_dispatch()`` to synchronize multiple NS client calls to TF-M.
-See ``interface/src/tfm_ns_interface.c.example`` for more details.
-
-TF-M provides a reference implementation of NS mailbox on multi-core platforms,
-under folder ``interface/src/multi_core``.
-See :doc:`Mailbox design </technical_references/design_docs/dual-cpu/mailbox_design_on_dual_core_system>`
-for TF-M multi-core mailbox design.
-
-Interface with non-secure world regression tests
-================================================
-A non-secure application that wants to run the non-secure regression tests
-needs to call the ``tfm_non_secure_client_run_tests()``. This function is
-exported into the header file ``test_framework_integ_test.h`` inside the
-``<build_dir>/install`` folder structure in the test specific files,
-i.e. ``<build_dir>/install/export/tfm/test/inc``. The non-secure regression
-tests are precompiled and delivered as a static library which is available in
-``<build_dir>/install/export/tfm/test/lib``, so that the non-secure application
-needs to link against the library to be able to invoke the
-``tfm_non_secure_client_run_tests()`` function. The PS non-secure side
-regression tests rely on some OS functionality e.g. threads, mutexes etc. These
-functions comply with CMSIS RTOS2 standard and have been exported as thin
-wrappers defined in ``os_wrapper.h`` contained in
-``<build_dir>/install/export/tfm/test/inc``. OS needs to provide the
-implementation of these wrappers to be able to run the tests.
-
-NS client Identification
-========================
-
-The NS client identification (NSID) is specified by either SPM or NSPE RTOS.
-If SPM manages the NSID (default option), then the same NSID (-1) will be used
-for all connections from NS clients.
-For the case that NSPE RTOS manages the NSID and/or different NSIDs should be
-used for different NS clients. See
-:doc:`Non-secure Client Extension Integration Guide </integration_guide/non-secure_client_extension_integration_guide>`.
-
-*********************
-Non-secure interrupts
-*********************
-Non-secure interrupts are allowed to preempt Secure thread mode.
-With the current implementation, a NSPE task can spoof the identity of another
-NSPE task. This is an issue only when NSPE has provisions for task isolation.
-Note, that ``AIRCR.PRIS`` is still set to restrict the priority range available
-to NS interrupts to the lower half of available priorities so that it wouldn't
-be possible for any non-secure interrupt to preempt a higher-priority secure
-interrupt.
-
-**********************************
-Integration with non-Cmake systems
-**********************************
-
-Generated Files
-===============
-
-Files that are derived from PSA manifests are generated at build-time by cmake.
-For integration with systems that do no use cmake, the files must be generated
-manually.
-
-The ``tools/tfm_parse_manifest_list.py`` script can be invoked manually. Some
-arguments will be needed to be provided. Please refer to
-``tfm_parse_manifest_list.py --help`` for more details.
-
-Some variables are used in the template files, these will need to be set in the
-environment before the script will succeed when the script is not run via cmake.
-
---------------
-
-*Copyright (c) 2017-2022, Arm Limited. All rights reserved.*
diff --git a/docs/introduction/index.rst b/docs/introduction/index.rst
index 96aed32..cda575e 100644
--- a/docs/introduction/index.rst
+++ b/docs/introduction/index.rst
@@ -3,10 +3,7 @@
.. toctree::
:maxdepth: 1
- :glob:
+ :titlesonly:
+ :hidden:
- readme
-
---------------
-
-*Copyright (c) 2020-2021, Arm Limited. All rights reserved.*
+.. include:: readme.rst
diff --git a/docs/introduction/readme.rst b/docs/introduction/readme.rst
index 347b24f..95109a2 100644
--- a/docs/introduction/readme.rst
+++ b/docs/introduction/readme.rst
@@ -59,48 +59,8 @@
- The ``platform`` folder currently contains platforms support imported from
the external project and the files may have different licenses.
-###############
-Getting Started
-###############
+.. include:: /platform/ext/platform_introduction.rst
-************
-Prerequisite
-************
-Trusted Firmware M provides a reference implementation of platform security
-architecture reference implementation aligning with PSA Certified guidelines.
-It is assumed that the reader is familiar with specifications can be found at
-`Platform Security Architecture Resources <https://developer.arm.com/architectures/security-architectures/platform-security-architecture>`__.
-
-The current TF-M implementation specifically targets TrustZone for ARMv8-M so a
-good understanding of the v8-M architecture is also necessary. A good place to
-get started with ARMv8-M is
-`developer.arm.com <https://developer.arm.com/architectures/cpu-architecture/m-profile>`__.
-
-**************************
-Build and run instructions
-**************************
-Trusted Firmware M source code is available on
-`git.trustedfirmware.org <https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git/>`__.
-
-To build & run TF-M:
-
- - Follow the :doc:`TF-M getting started </getting_started/tfm_getting_started>`
- to set up your environment.
- - Follow the
- :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`
- to compile and build the TF-M source.
- - Follow the :doc:`Run TF-M examples on Arm platforms </technical_references/instructions/run_tfm_examples_on_arm_platforms>`
- for information on running the example.
-
-To port TF-M to a another system or OS, follow the
-:doc:`OS Integration Guide </integration_guide/tfm_integration_guide>`
-
-:doc:`Contributing Guidelines </contributing/contributing_process>` contains guidance on how to
-contribute to this project.
-
-###################
-Platforms supported
-###################
The document :doc:`Supported Platforms </platform/ext/index>` lists the details.
#########################
@@ -113,7 +73,7 @@
major features of the release and platforms supported.
####################
-Feedback and support
+Feedback and Support
####################
For this release, feedback is requested via email to
`tf-m@lists.trustedfirmware.org <tf-m@lists.trustedfirmware.org>`__.
diff --git a/docs/platform/ext/index.rst b/docs/platform/ext/index.rst
index 4aea392..22861e5 100644
--- a/docs/platform/ext/index.rst
+++ b/docs/platform/ext/index.rst
@@ -1,18 +1,8 @@
-Supported Platforms
-===================
+TF-M Platforms
+==============
.. toctree::
- :maxdepth: 1
- :caption: Information
-
- /platform/readme
- readme
- /platform/ext/platform_introduction.rst
- /platform/ext/platform_deprecation.rst
- /platform/ext/platform_provisioning.rst
-
-.. toctree::
- :maxdepth: 1
+ :maxdepth: 2
:caption: arm
:glob:
@@ -33,21 +23,21 @@
target/cypress/psoc64/index
.. toctree::
- :maxdepth: 1
+ :maxdepth: 2
:caption: STM
:glob:
target/stm/index
.. toctree::
- :maxdepth: 1
+ :maxdepth: 2
:caption: Nordic
:glob:
target/nordic_nrf/**
.. toctree::
- :maxdepth: 1
+ :maxdepth: 2
:caption: Laird Connectivity
:glob:
@@ -60,6 +50,13 @@
target/nuvoton/**
+.. toctree::
+ :maxdepth: 1
+ :caption: Rules and processes
+
+ platform_deprecation.rst
+ platform_provisioning.rst
+
--------------
*Copyright (c) 2020-2021, Arm Limited. All rights reserved.*
diff --git a/docs/platform/ext/platform_introduction.rst b/docs/platform/ext/platform_introduction.rst
index 656e1aa..be7e268 100644
--- a/docs/platform/ext/platform_introduction.rst
+++ b/docs/platform/ext/platform_introduction.rst
@@ -1,6 +1,6 @@
-######################
-Platforms introduction
-######################
+###################
+Supported Platforms
+###################
- Olympus system
@@ -63,7 +63,3 @@
The document :doc:`Platform Deprecation and Removal </platform/ext/platform_deprecation>`
lists the deprecated platforms planned to be removed from upstream.
-
---------------
-
-*Copyright (c) 2017-2022, Arm Limited. All rights reserved.*
diff --git a/docs/releases/index.rst b/docs/releases/index.rst
index 2efcf2c..26d9f05 100644
--- a/docs/releases/index.rst
+++ b/docs/releases/index.rst
@@ -3,6 +3,7 @@
.. toctree::
:hidden:
+ :reversed:
1.0
1.1
@@ -15,17 +16,17 @@
+--------------------------------------+--------------+--------------------+----------------------------+
| Version | Date | Description | PSA-arch tag/hash |
+======================================+==============+====================+============================+
-| :doc:`v1.0 </releases/1.0>` | 2020-03-27 | 1.0 release | v20.03_API1.0 |
-+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.1 </releases/1.1>` | 2020-07-15 | 1.1 release | 1f960947 |
-+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.2.0 </releases/1.2.0>` | 2020-11-25 | 1.2.0 release | 90c8e680 |
-+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.3.0 </releases/1.3.0>` | 2021-04-07 | 1.3.0 release | b0635d9 |
+| :doc:`v1.5.0 </releases/1.5.0>` | 2021-11-30 | 1.5.0 release | v21.10_API1.3_ADAC_ALPHA-1 |
+--------------------------------------+--------------+--------------------+----------------------------+
| :doc:`v1.4.0 </releases/1.4.0>` | 2021-08-03 | 1.4.0 release | 51ff2bd |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.5.0 </releases/1.5.0>` | 2021-11-30 | 1.5.0 release | v21.10_API1.3_ADAC_ALPHA-1 |
+| :doc:`v1.3.0 </releases/1.3.0>` | 2021-04-07 | 1.3.0 release | b0635d9 |
++--------------------------------------+--------------+--------------------+----------------------------+
+| :doc:`v1.2.0 </releases/1.2.0>` | 2020-11-25 | 1.2.0 release | 90c8e680 |
++--------------------------------------+--------------+--------------------+----------------------------+
+| :doc:`v1.1 </releases/1.1>` | 2020-07-15 | 1.1 release | 1f960947 |
++--------------------------------------+--------------+--------------------+----------------------------+
+| :doc:`v1.0 </releases/1.0>` | 2020-03-27 | 1.0 release | v20.03_API1.0 |
+--------------------------------------+--------------+--------------------+----------------------------+
Future release plans
diff --git a/docs/technical_references/design_docs/index.rst b/docs/technical_references/design_docs/index.rst
index 3566e03..bdd2d03 100644
--- a/docs/technical_references/design_docs/index.rst
+++ b/docs/technical_references/design_docs/index.rst
@@ -1,4 +1,4 @@
-Design documents
+Design Documents
================
.. toctree::
diff --git a/docs/technical_references/index.rst b/docs/technical_references/index.rst
deleted file mode 100644
index 200d469..0000000
--- a/docs/technical_references/index.rst
+++ /dev/null
@@ -1,13 +0,0 @@
-Technical References
-====================
-
-.. toctree::
- :maxdepth: 2
- :titlesonly:
- :glob:
-
- */index
-
---------------
-
-*Copyright (c) 2020-2021, Arm Limited. All rights reserved.*
diff --git a/docs/technical_references/instructions/documentation_generation.rst b/docs/technical_references/instructions/documentation_generation.rst
index b99b0b1..44ed546 100644
--- a/docs/technical_references/instructions/documentation_generation.rst
+++ b/docs/technical_references/instructions/documentation_generation.rst
@@ -154,9 +154,9 @@
# Command line tools is yet not available for Windows
-############
+************
Dependencies
-############
+************
.. uml::
diff --git a/docs/technical_references/instructions/index.rst b/docs/technical_references/instructions/index.rst
deleted file mode 100644
index 6e869ee..0000000
--- a/docs/technical_references/instructions/index.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-TF-M Detailed Instructions
-==========================
-
-.. toctree::
- :maxdepth: 1
- :glob:
-
- tfm_build_instruction
- tfm_build_instruction_iar
- run_tfm_examples_on_arm_platforms
- documentation_generation
-
---------------
-
-*Copyright (c) 2021, Arm Limited. All rights reserved.*
diff --git a/docs/technical_references/instructions/tfm_build_instruction.rst b/docs/technical_references/instructions/tfm_build_instruction.rst
index 5e34af5..3db54c4 100644
--- a/docs/technical_references/instructions/tfm_build_instruction.rst
+++ b/docs/technical_references/instructions/tfm_build_instruction.rst
@@ -3,6 +3,14 @@
##################
Please make sure you have all required software installed as explained in the
:doc:`TF-M getting started </getting_started/tfm_getting_started>`.
+The additional building materials you can find in the following links:
+
+.. toctree::
+ :maxdepth: 1
+
+ IAR toolchain <tfm_build_instruction_iar>
+ Run TF-M examples <run_tfm_examples_on_arm_platforms>
+ Building documentation <documentation_generation>
****************
TF-M build steps
diff --git a/docs/integration_guide/SQUAD_Dashboard.rst b/docs/tools/SQUAD_Dashboard.rst
similarity index 100%
rename from docs/integration_guide/SQUAD_Dashboard.rst
rename to docs/tools/SQUAD_Dashboard.rst
diff --git a/docs/tools/index.rst b/docs/tools/index.rst
new file mode 100644
index 0000000..83eea2d
--- /dev/null
+++ b/docs/tools/index.rst
@@ -0,0 +1,11 @@
+Tools
+=====
+
+.. toctree::
+ :maxdepth: 1
+
+ SQUAD_Dashboard
+
+--------------
+
+*Copyright (c) 2020-2021, Arm Limited. All rights reserved.*