docs: Decouple refrences from /docs folder
Signed-off-by: Anton Komlev <anton.komlev@arm.com>
Change-Id: I1955201382074eb9e6dd80aadbc456eb09aecb22
diff --git a/docs/conf.py.in b/docs/conf.py.in
index ddf849b..76922be 100644
--- a/docs/conf.py.in
+++ b/docs/conf.py.in
@@ -20,8 +20,6 @@
#
import os
import sys
-sys.path.insert(0, os.path.abspath('..'))
-sys.path.insert(0, os.path.abspath('../docs'))
# -- Project information -----------------------------------------------------
diff --git a/docs/contributing/code_review_guide.rst b/docs/contributing/code_review_guide.rst
index 08d72a2..cfc9f4d 100644
--- a/docs/contributing/code_review_guide.rst
+++ b/docs/contributing/code_review_guide.rst
@@ -4,7 +4,7 @@
The purpose of this document is to clarify design items to be reviewed during
the code review process.
-Please contact :doc:`maintainers </docs/contributing/maintainers>` or write an e-mail
+Please contact :doc:`maintainers </contributing/maintainers>` or write an e-mail
thread on the `TF-M mailing list <mailto:tf-m@lists.trustedfirmware.org>`_ for
any questions.
@@ -13,9 +13,9 @@
**********************
The prerequisites before going to the review stage:
-- Read the :doc:`Contributing Process </docs/contributing/contributing_process>`
+- Read the :doc:`Contributing Process </contributing/contributing_process>`
to know basic concepts.
-- Read the :doc:`Source Structure </docs/technical_references/design_docs/source_structure>`
+- Read the :doc:`Source Structure </technical_references/design_docs/source_structure>`
for structure related reference.
The review guidelines consist of these items:
diff --git a/docs/contributing/coding_guide.rst b/docs/contributing/coding_guide.rst
index f208fc0..5b75d36 100644
--- a/docs/contributing/coding_guide.rst
+++ b/docs/contributing/coding_guide.rst
@@ -18,7 +18,7 @@
The guidance below is provided as a help. It isn't meant to be a definitive
list.
-As implied in the :doc:`contributing guide </docs/contributing/contributing_process>`
+As implied in the :doc:`contributing guide </contributing/contributing_process>`
maintainers have the right to decide on what's acceptable in case of any
divergence.
diff --git a/docs/contributing/contributing_process.rst b/docs/contributing/contributing_process.rst
index 60faaec..95afef0 100644
--- a/docs/contributing/contributing_process.rst
+++ b/docs/contributing/contributing_process.rst
@@ -5,7 +5,7 @@
.. Note::
- Please contact :doc:`maintainers </docs/contributing/maintainers>` for any
+ Please contact :doc:`maintainers </contributing/maintainers>` for any
questions.
- Subscribe to `TF-M development
@@ -19,22 +19,22 @@
<https://developer.trustedfirmware.org/maniphest>`_, put as many details as
possible in the description. Add 'Trusted Firmware M' in the 'Tags' field.
- For non-trivial changes, need to follow the design proposal process
- :doc:`Design Proposal Guideline </docs/contributing/tfm_design_proposal_guideline>`
+ :doc:`Design Proposal Guideline </contributing/tfm_design_proposal_guideline>`
for the TF-M project.
- After the design has been accepted by the maintainer(s), a corresponding
patch should be posted; follow guidelines below:
- Clone the TF-M code on your own machine from `TF-M git repository
<https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git>`_.
- - Follow the :doc:`TF-M getting started </docs/getting_started/tfm_getting_started>`,
- :doc:`Build Instructions </docs/technical_references/instructions/tfm_build_instruction>` and
- :doc:`Coding Guide </docs/contributing/coding_guide>` for the TF-M project.
+ - Follow the :doc:`TF-M getting started </getting_started/tfm_getting_started>`,
+ :doc:`Build Instructions </technical_references/instructions/tfm_build_instruction>` and
+ :doc:`Coding Guide </contributing/coding_guide>` for the TF-M project.
- Make your changes in logical chunks to help reviewers. Each commit should
be a separate review and either work properly or be squashed after the
review and before merging.
- Update documentation in docs/ folder if needed.
- Test your changes and add details to the commit description.
- - The code is accepted under :doc:`DCO </docs/contributing/dco>`, Developer
+ - The code is accepted under :doc:`DCO </contributing/dco>`, Developer
Certificate of Origin, so you must add following fields to your
commit description:
@@ -66,7 +66,7 @@
git push https://review.trustedfirmware.org/TF-M/trusted-firmware-m.git HEAD:refs/for/master
-- Add relevant :doc:`maintainers </docs/contributing/maintainers>` for reviewing
+- Add relevant :doc:`maintainers </contributing/maintainers>` for reviewing
the patch.
- You may be asked to provide further details or make additional changes.
- You can discuss further with maintainer(s) by directly over email if
diff --git a/docs/contributing/doc_guidelines.rst b/docs/contributing/doc_guidelines.rst
index 607097d..d5c5967 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 </docs/integration_guide/tfm_integration_guide>` can be used as a reference.
+ :doc:`integration guide </integration_guide/tfm_integration_guide>` can be used as a reference.
- When a new style is to be expressed, consult the `Python Documentation Guidelines`_
*************
@@ -186,8 +186,8 @@
+--------------+--------------+-------------+
Other types of tables such as list-tables and csv-tables are also permitted, as
-seen on :doc:`/docs/getting_started/tfm_getting_started` and
-:doc:`/docs/releases/1.0`
+seen on :doc:`/getting_started/tfm_getting_started` and
+:doc:`/releases/1.0`
External Links
@@ -236,7 +236,7 @@
.. code-block:: restructuredtext
- :doc:`integration guide </docs/integration_guide/tfm_integration_guide>`
+ :doc:`integration guide </integration_guide/tfm_integration_guide>`
The path is relative to the root of the Trusted Firmware-M code.
@@ -260,7 +260,7 @@
=============
For technical terms and abbreviations, the recommended guidance is to add an
-entry to the :doc:`/docs/glossary` and refer to it, using the `term:`
+entry to the :doc:`/glossary` and refer to it, using the `term:`
directive
@@ -293,7 +293,7 @@
.. _Sphinx: https://www.sphinx-doc.org/en/master/
.. _Restructed Text: https://docutils.sourceforge.io/rst.html
.. _Python Documentation Guidelines: https://devguide.python.org/documenting/#style-guide
-.. _Pygments Lexers: https://pygments.org/docs/lexers/
+.. _Pygments Lexers: https://pygments.org/lexers/
--------------
diff --git a/docs/contributing/tfm_design_proposal_guideline.rst b/docs/contributing/tfm_design_proposal_guideline.rst
index 14f3804..9e7dfa0 100755
--- a/docs/contributing/tfm_design_proposal_guideline.rst
+++ b/docs/contributing/tfm_design_proposal_guideline.rst
@@ -111,7 +111,7 @@
.. [3] `TF-M gerrit <https://review.trustedfirmware.org/q/project:TF-M/trusted-firmware-m>`_
-.. [4] :doc:`Contributing process </docs/contributing/contributing_process>`
+.. [4] :doc:`Contributing process </contributing/contributing_process>`
-------------------
diff --git a/docs/getting_started/tfm_getting_started.rst b/docs/getting_started/tfm_getting_started.rst
index e4df2dc..3657f6f 100644
--- a/docs/getting_started/tfm_getting_started.rst
+++ b/docs/getting_started/tfm_getting_started.rst
@@ -415,10 +415,10 @@
Here are some next steps for exploring TF-M:
- - Detailed :doc:`Build instructions </docs/technical_references/instructions/tfm_build_instruction>`.
- - :doc:`IAR Build instructions </docs/technical_references/instructions/tfm_build_instruction_iar>`.
- - Try other :doc:`Samples and Demos </docs/technical_references/instructions/run_tfm_examples_on_arm_platforms>`.
- - :doc:`Documentation generation </docs/technical_references/instructions/documentation_generation>`.
+ - Detailed :doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
+ - :doc:`IAR Build instructions </technical_references/instructions/tfm_build_instruction_iar>`.
+ - Try other :doc:`Samples and Demos </technical_references/instructions/run_tfm_examples_on_arm_platforms>`.
+ - :doc:`Documentation generation </technical_references/instructions/documentation_generation>`.
--------------
diff --git a/docs/index.rst b/docs/index.rst
index 955c28b..26207d7 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -15,7 +15,7 @@
<ul class="grid">
<li class="grid-item">
- <a href="docs/introduction/readme.html">
+ <a href="introduction/readme.html">
<img alt="" src="_static/images/tfm-introduction.png"/>
<h2>Introduction</h2>
</a>
@@ -23,7 +23,7 @@
architecture, features, and licensing.</p>
</li>
<li class="grid-item">
- <a href="docs/getting_started/index.html">
+ <a href="getting_started/index.html">
<img alt="" src="_static/images/tfm-documentation.png"/>
<h2>Getting Started</h2>
</a>
@@ -38,7 +38,7 @@
<p>List of supported boards and platforms.</p>
</li>
<li class="grid-item">
- <a href="docs/contributing/index.html">
+ <a href="contributing/index.html">
<img alt="" src="_static/images/tfm-contribution.png"/>
<h2>Contribution</h2>
</a>
@@ -46,21 +46,21 @@
to submit patches directly to the project.</p>
</li>
<li class="grid-item">
- <a href="docs/integration_guide/index.html">
+ <a href="integration_guide/index.html">
<img alt="" src="_static/images/tfm-integration.png"/>
<h2>Integration</h2>
</a>
<p>Guidelines for integration with TF-M.</p>
</li>
<li class="grid-item">
- <a href="docs/technical_references/index.html">
+ <a href="technical_references/index.html">
<img alt="" src="_static/images/tfm-reference.png"/>
<h2>References</h2>
</a>
<p>Design documents.</p>
</li>
<li class="grid-item">
- <a href="docs/security/index.html">
+ <a href="security/index.html">
<img alt="" src="_static/images/tfm.png"/>
<h2>Security</h2>
</a>
@@ -68,7 +68,7 @@
is addressed within the TF-M project.</p>
</li>
<li class="grid-item">
- <a href="docs/releases/index.html">
+ <a href="releases/index.html">
<img alt="" src="_static/images/tfm-release.png"/>
<h2>Releases</h2>
</a>
@@ -84,14 +84,14 @@
:hidden:
Home<self>
- docs/introduction/index
- docs/getting_started/index
+ introduction/index
+ getting_started/index
platform/ext/index
- docs/contributing/index
- docs/integration_guide/index
- docs/technical_references/index
- docs/security/index
- docs/releases/index
+ contributing/index
+ integration_guide/index
+ technical_references/index
+ security/index
+ releases/index
.. toctree::
@@ -102,7 +102,7 @@
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>
- docs/glossary
+ glossary
--------------
diff --git a/docs/integration_guide/os_migration_guide_armv8m.rst b/docs/integration_guide/os_migration_guide_armv8m.rst
index 4ef76ae..198df9d 100644
--- a/docs/integration_guide/os_migration_guide_armv8m.rst
+++ b/docs/integration_guide/os_migration_guide_armv8m.rst
@@ -18,7 +18,7 @@
value used in Handler mode transitions needs to be differentiated between
Secure and Non Secure builds, i.e. ``0xFD`` and ``0xBC``, respectively.
- If the OS manages the non-secure client identification, pelase check the
- :doc:`Non-secure Client Extension Integration Guide </docs/integration_guide/non-secure_client_extension_integration_guide>`.
+ :doc:`Non-secure Client Extension Integration Guide </integration_guide/non-secure_client_extension_integration_guide>`.
--------------
diff --git a/docs/integration_guide/porting_TFM_to_a_new_hardware.rst b/docs/integration_guide/porting_TFM_to_a_new_hardware.rst
index 3a37384..1a5f63b 100644
--- a/docs/integration_guide/porting_TFM_to_a_new_hardware.rst
+++ b/docs/integration_guide/porting_TFM_to_a_new_hardware.rst
@@ -10,7 +10,7 @@
******************
TF-M in a nutshell
******************
-For an overview please refer to :doc:`Introduction </docs/introduction/readme>`.
+For an overview please refer to :doc:`Introduction </introduction/readme>`.
*************
Prerequisites
@@ -19,12 +19,12 @@
======================
Make sure you have a working build environnement and that you can build
TF-M on AN521 following the
-:doc:`Build instructions </docs/technical_references/instructions/tfm_build_instruction>`.
+:doc:`Build instructions </technical_references/instructions/tfm_build_instruction>`.
Toolchains and software requirements
====================================
-Please follow the :doc:`Getting started guide </docs/getting_started/tfm_getting_started>`.
+Please follow the :doc:`Getting started guide </getting_started/tfm_getting_started>`.
CMSIS Drivers
=============
@@ -59,7 +59,7 @@
#. Running the regression tests
- - See :doc:`Running TF-M on Arm platforms </docs/technical_references/instructions/run_tfm_examples_on_arm_platforms>`
+ - See :doc:`Running TF-M on Arm platforms </technical_references/instructions/run_tfm_examples_on_arm_platforms>`
as an example
diff --git a/docs/integration_guide/services/tfm_attestation_integration_guide.rst b/docs/integration_guide/services/tfm_attestation_integration_guide.rst
index 1feccfe..244ed5d 100644
--- a/docs/integration_guide/services/tfm_attestation_integration_guide.rst
+++ b/docs/integration_guide/services/tfm_attestation_integration_guide.rst
@@ -625,9 +625,9 @@
- Build TF-M with any of the ``ConfigRegression*.cmake`` build configurations
for MPS2 AN521 platform. More info in
- :doc:`tfm_build_instruction </docs/technical_references/instructions/tfm_build_instruction>`.
+ :doc:`tfm_build_instruction </technical_references/instructions/tfm_build_instruction>`.
- Lunch FVP model in DS-5. More info in
- :doc:`Run TF-M examples on Arm platforms </docs/technical_references/instructions/run_tfm_examples_on_arm_platforms>`.
+ :doc:`Run TF-M examples on Arm platforms </technical_references/instructions/run_tfm_examples_on_arm_platforms>`.
- Set a breakpoint in ``test/secure_fw/suites/attestation/attest_token_test.c``
in ``decode_test_internal(..)`` after the ``token_main_alt(..)`` returned,
i.e. on line 859. Execute the code in the model until the breakpoint hits
diff --git a/docs/integration_guide/services/tfm_ps_integration_guide.rst b/docs/integration_guide/services/tfm_ps_integration_guide.rst
index 4ef565d..66f8d21 100644
--- a/docs/integration_guide/services/tfm_ps_integration_guide.rst
+++ b/docs/integration_guide/services/tfm_ps_integration_guide.rst
@@ -156,7 +156,7 @@
``secure_fw/partitions/internal_trusted_storage/flash`` respectively. More
information about the filesystem and flash interfaces can be found in the
:doc:`ITS integration guide
-</docs/integration_guide/services/tfm_its_integration_guide>`.
+</integration_guide/services/tfm_its_integration_guide>`.
The ITS service implementation in
``secure_fw/partitions/internal_trusted_storage/tfm_internal_trusted_storage.c``,
@@ -291,14 +291,14 @@
processing environment. It provides a dedicated API to retrieve the client ID
which performs the service request.
-:doc:`Non-secure Client Extension Integration Guide </docs/integration_guide/non-secure_client_extension_integration_guide>`
+:doc:`Non-secure Client Extension Integration Guide </integration_guide/non-secure_client_extension_integration_guide>`
provides further details on how client identification works.
PS service uses that TF-M core API to retrieve the client ID and associate it
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 </docs/integration_guide/tfm_integration_guide>`
+The :doc:`integration guide </integration_guide/tfm_integration_guide>`
provides further details of non-secure implementation requirements for TF-M.
Cryptographic Interface
diff --git a/docs/integration_guide/services/tfm_psa_proxy_integration_guide.rst b/docs/integration_guide/services/tfm_psa_proxy_integration_guide.rst
index 4fb467f..d0a2f34 100644
--- a/docs/integration_guide/services/tfm_psa_proxy_integration_guide.rst
+++ b/docs/integration_guide/services/tfm_psa_proxy_integration_guide.rst
@@ -9,7 +9,7 @@
to a Secure Enclave, this way virtually providing all the PSA RoT services.
Proxy can only be used in IPC model, for context and design details please
check the
-:doc:`Secure Enclave design document </docs/technical_references/design_docs/secure_enclave_solution>`.
+:doc:`Secure Enclave design document </technical_references/design_docs/secure_enclave_solution>`.
Currently to forward the PSA Client call parameters Proxy must read them with
``psa_read`` into a memory area shared with the Secure Enclave. (Similarily
diff --git a/docs/integration_guide/services/tfm_secure_partition_addition.rst b/docs/integration_guide/services/tfm_secure_partition_addition.rst
index dcc2993..4df1b1f 100644
--- a/docs/integration_guide/services/tfm_secure_partition_addition.rst
+++ b/docs/integration_guide/services/tfm_secure_partition_addition.rst
@@ -555,7 +555,7 @@
interface_testsuite.c``.
The process of adding test connection is explained in the specification
-:doc:`Adding TF-M Regression Test Suite </docs/integration_guide/tfm_test_suites_addition>`
+:doc:`Adding TF-M Regression Test Suite </integration_guide/tfm_test_suites_addition>`
.. code-block:: c
diff --git a/docs/integration_guide/tfm_fpu_support.rst b/docs/integration_guide/tfm_fpu_support.rst
index ed4052d..09f826b 100644
--- a/docs/integration_guide/tfm_fpu_support.rst
+++ b/docs/integration_guide/tfm_fpu_support.rst
@@ -105,7 +105,7 @@
.. [5] `Arm® Platform Security Architecture Firmware Framework 1.0 <https://armkeil.blob.core.windows.net/developer/Files/pdf/PlatformSecurityArchitecture/Architect/DEN0063-PSA_Firmware_Framework-1.0.0-2.pdf>`_
-.. [6] :doc:`Secure Interrupt Integration Guide </docs/integration_guide/tfm_secure_irq_integration_guide>`
+.. [6] :doc:`Secure Interrupt Integration Guide </integration_guide/tfm_secure_irq_integration_guide>`
.. [7] `Musca-S1 Test Chip Board <https://developer.arm.com/tools-and-software/development-boards/iot-test-chips-and-boards/musca-s1-test-chip-board>`_
diff --git a/docs/integration_guide/tfm_integration_guide.rst b/docs/integration_guide/tfm_integration_guide.rst
index 2203596..6b3ae7a 100644
--- a/docs/integration_guide/tfm_integration_guide.rst
+++ b/docs/integration_guide/tfm_integration_guide.rst
@@ -7,18 +7,18 @@
*****************
How to build TF-M
*****************
-Follow the :doc:`Build instructions </docs/technical_references/instructions/tfm_build_instruction>`.
+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 </docs/technical_references/instructions/tfm_build_instruction>`.
+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 </docs/integration_guide/porting_TFM_to_a_new_hardware>`
+: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.
***************************
@@ -58,7 +58,7 @@
TF-M provides a reference implementation of NS mailbox on multi-core platforms,
under folder ``interface/src/multi_core``.
-See :doc:`Mailbox design </docs/technical_references/design_docs/dual-cpu/mailbox_design_on_dual_core_system>`
+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
@@ -86,7 +86,7 @@
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 </docs/integration_guide/non-secure_client_extension_integration_guide>`.
+:doc:`Non-secure Client Extension Integration Guide </integration_guide/non-secure_client_extension_integration_guide>`.
*********************
Non-secure interrupts
diff --git a/docs/integration_guide/tfm_test_suites_addition.rst b/docs/integration_guide/tfm_test_suites_addition.rst
index 87d6041..128e062 100644
--- a/docs/integration_guide/tfm_test_suites_addition.rst
+++ b/docs/integration_guide/tfm_test_suites_addition.rst
@@ -40,7 +40,7 @@
==================
A test configuration controls whether one or multiple test suites are enabled.
-The doc :doc:`TF-M Build Instructions </docs/technical_references/instructions/tfm_build_instruction>`
+The doc :doc:`TF-M Build Instructions </technical_references/instructions/tfm_build_instruction>`
shows some test configurations which are already supported in current TF-M.
An example usage of test configuration shows below.
@@ -295,7 +295,7 @@
Adding a test service is same as adding a secure partition, generally the
process can be referenced from the document
-:doc:`Adding Secure Partition </docs/integration_guide/services/tfm_secure_partition_addition>`
+:doc:`Adding Secure Partition </integration_guide/services/tfm_secure_partition_addition>`
.. Note::
Each test service must have resource requirements declared in a manifest
diff --git a/docs/introduction/readme.rst b/docs/introduction/readme.rst
index c3a3159..347b24f 100644
--- a/docs/introduction/readme.rst
+++ b/docs/introduction/readme.rst
@@ -37,15 +37,15 @@
Systems (RTOS).
Terms ``TFM`` and ``TF-M`` are commonly used in documents and code and both
-refer to ``Trusted Firmware M.`` :doc:`Glossary </docs/glossary>` has the list
+refer to ``Trusted Firmware M.`` :doc:`Glossary </glossary>` has the list
of terms and abbreviations.
#######
License
#######
-The software is provided under a BSD-3-Clause :doc:`License </docs/contributing/lic>`.
+The software is provided under a BSD-3-Clause :doc:`License </contributing/lic>`.
Contributions to this project are accepted under the same license with developer
-sign-off as described in the :doc:`Contributing Guidelines </docs/contributing/contributing_process>`.
+sign-off as described in the :doc:`Contributing Guidelines </contributing/contributing_process>`.
This project contains code from other projects as listed below. The code from
external projects is limited to ``app``, ``bl2``, ``lib`` and ``platform``
@@ -84,18 +84,18 @@
To build & run TF-M:
- - Follow the :doc:`TF-M getting started </docs/getting_started/tfm_getting_started>`
+ - Follow the :doc:`TF-M getting started </getting_started/tfm_getting_started>`
to set up your environment.
- Follow the
- :doc:`Build instructions </docs/technical_references/instructions/tfm_build_instruction>`
+ :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 </docs/technical_references/instructions/run_tfm_examples_on_arm_platforms>`
+ - 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 </docs/integration_guide/tfm_integration_guide>`
+:doc:`OS Integration Guide </integration_guide/tfm_integration_guide>`
-:doc:`Contributing Guidelines </docs/contributing/contributing_process>` contains guidance on how to
+:doc:`Contributing Guidelines </contributing/contributing_process>` contains guidance on how to
contribute to this project.
###################
@@ -106,10 +106,10 @@
#########################
Release Notes and Process
#########################
-The :doc:`Release Cadence and Process </docs/releases/release_process>` provides
+The :doc:`Release Cadence and Process </releases/release_process>` provides
release cadence and process information.
-The :doc:`Releases </docs/releases/index>` provides details of
+The :doc:`Releases </releases/index>` provides details of
major features of the release and platforms supported.
####################
diff --git a/docs/releases/1.2.0.rst b/docs/releases/1.2.0.rst
index 832474d..4e17dad 100644
--- a/docs/releases/1.2.0.rst
+++ b/docs/releases/1.2.0.rst
@@ -12,7 +12,7 @@
- Add Profile Medium.
- Migrate support to Mbed TLS v2.24.
- New platforms added.
- See :ref:`docs/releases/1.2.0:New platforms supported` for
+ See :ref:`releases/1.2.0:New platforms supported` for
details.
- New SPM HAL APIs including isolation API and logging API.
- Update MCUboot version to 1.7.0-rc1.
@@ -25,7 +25,7 @@
Stack sealing
-------------
-Refer to :doc:`Advisory TFMV-1</docs/security/security_advisories/stack_seal_vulnerability>`
+Refer to :doc:`Advisory TFMV-1</security/security_advisories/stack_seal_vulnerability>`
for more details.
A common mitigation is included in this release.
diff --git a/docs/releases/1.3.0.rst b/docs/releases/1.3.0.rst
index 0f4984f..0662368 100644
--- a/docs/releases/1.3.0.rst
+++ b/docs/releases/1.3.0.rst
@@ -18,7 +18,7 @@
- Support Armv8.1-M Privileged Execute Never (PXN) attribute and Thread
reentrancy disabled (TRD) feature.
- New platforms added.
- See :ref:`docs/releases/1.3.0:New platforms supported` for
+ See :ref:`releases/1.3.0:New platforms supported` for
details.
- Add a TF-M security landing page [7]_.
- Enhance dual-cpu non-secure mailbox reference implementation.
@@ -29,7 +29,7 @@
Invoking secure functions from non-secure handler mode
------------------------------------------------------
-Refer to :doc:`Advisory TFMV-2</docs/security/security_advisories/svc_caller_sp_fetching_vulnerability>`
+Refer to :doc:`Advisory TFMV-2</security/security_advisories/svc_caller_sp_fetching_vulnerability>`
for more details.
The mitigation is included in this release.
@@ -148,7 +148,7 @@
| 10-2020-q4-major.
| The support for CMSE feature is broken in version 10-2020-q4-major. The
| fix will be available in future release version.
- | A note is added in :ref:`docs/getting_started/tfm_getting_started:Install a toolchain`.
+ | A note is added in :ref:`getting_started/tfm_getting_started:Install a toolchain`.
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99157
Reference
@@ -158,15 +158,15 @@
.. [2] `PSA Firmware Update API <https://developer.arm.com/documentation/ihi0093/latest/>`_
- .. [3] :doc:`TF-M generic threat model </docs/security/threat_models/generic_threat_model>`
+ .. [3] :doc:`TF-M generic threat model </security/threat_models/generic_threat_model>`
- .. [4] :doc:`TF-M physical attack mitigation </docs/technical_references/design_docs/tfm_physical_attack_mitigation>`
+ .. [4] :doc:`TF-M physical attack mitigation </technical_references/design_docs/tfm_physical_attack_mitigation>`
- .. [5] :doc:`TF-M Profile Large design </docs/technical_references/design_docs/profiles/tfm_profile_large>`
+ .. [5] :doc:`TF-M Profile Large design </technical_references/design_docs/profiles/tfm_profile_large>`
- .. [6] :doc:`Code sharing between independently linked XIP binaries </docs/technical_references/design_docs/code_sharing>`
+ .. [6] :doc:`Code sharing between independently linked XIP binaries </technical_references/design_docs/code_sharing>`
- .. [7] :doc:`Security Handling </docs/security/security>`
+ .. [7] :doc:`Security Handling </security/security>`
--------------
diff --git a/docs/releases/1.4.0.rst b/docs/releases/1.4.0.rst
index d604aee..df4d01c 100644
--- a/docs/releases/1.4.0.rst
+++ b/docs/releases/1.4.0.rst
@@ -14,7 +14,7 @@
- PSA Crypto API interface updated to be based on `Stateless Handle`.
- MCUboot updated to version 'TF-Mv1.4-integ' to support multiple images in RAM_LOAD and DIRECT_XIP upgrade strategies.
- New platforms added.
- See :ref:`docs/releases/1.4.0:New platforms supported` for details.
+ See :ref:`releases/1.4.0:New platforms supported` for details.
New security advisories
=======================
@@ -22,7 +22,7 @@
'abort' function may not take effect in some TF-M Crypto multi-part operations
------------------------------------------------------------------------------
-Refer to :doc:`Advisory TFMV-3 </docs/security/security_advisories/crypto_multi_part_ops_abort_fail>`
+Refer to :doc:`Advisory TFMV-3 </security/security_advisories/crypto_multi_part_ops_abort_fail>`
for more details.
The mitigation is included in this release.
diff --git a/docs/releases/1.5.0.rst b/docs/releases/1.5.0.rst
index 10aa015..af2a52b 100644
--- a/docs/releases/1.5.0.rst
+++ b/docs/releases/1.5.0.rst
@@ -6,7 +6,7 @@
==================
- MCUboot updated to v1.8.0.
- - :doc:`Floating-Point(FP) support in SPE only </docs/integration_guide/tfm_fpu_support>`.
+ - :doc:`Floating-Point(FP) support in SPE only </integration_guide/tfm_fpu_support>`.
- Thread mode SPM.
- Add Non-secure Client Extension (NSCE) for non-secure client ID management
support.
@@ -24,7 +24,7 @@
- Support to select/deselect single or multiple TF-M regression test cases.
- Decouple regression test flag configuration from TF-M.
- New platforms added.
- See :ref:`docs/releases/1.5.0:New platforms supported` for details.
+ See :ref:`releases/1.5.0:New platforms supported` for details.
New security advisories
=======================
@@ -34,7 +34,7 @@
NSPE may access secure keys stored in TF-M Crypto service in Profile Small with
Crypto key ID encoding disabled.
-Refer to :doc:`Advisory TFMV-4 </docs/security/security_advisories/profile_small_key_id_encoding_vulnerability>`
+Refer to :doc:`Advisory TFMV-4 </security/security_advisories/profile_small_key_id_encoding_vulnerability>`
for more details.
The mitigation is included in this release.
diff --git a/docs/releases/index.rst b/docs/releases/index.rst
index 5bd493a..2efcf2c 100644
--- a/docs/releases/index.rst
+++ b/docs/releases/index.rst
@@ -15,17 +15,17 @@
+--------------------------------------+--------------+--------------------+----------------------------+
| Version | Date | Description | PSA-arch tag/hash |
+======================================+==============+====================+============================+
-| :doc:`v1.0 </docs/releases/1.0>` | 2020-03-27 | 1.0 release | v20.03_API1.0 |
+| :doc:`v1.0 </releases/1.0>` | 2020-03-27 | 1.0 release | v20.03_API1.0 |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.1 </docs/releases/1.1>` | 2020-07-15 | 1.1 release | 1f960947 |
+| :doc:`v1.1 </releases/1.1>` | 2020-07-15 | 1.1 release | 1f960947 |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.2.0 </docs/releases/1.2.0>` | 2020-11-25 | 1.2.0 release | 90c8e680 |
+| :doc:`v1.2.0 </releases/1.2.0>` | 2020-11-25 | 1.2.0 release | 90c8e680 |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.3.0 </docs/releases/1.3.0>` | 2021-04-07 | 1.3.0 release | b0635d9 |
+| :doc:`v1.3.0 </releases/1.3.0>` | 2021-04-07 | 1.3.0 release | b0635d9 |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.4.0 </docs/releases/1.4.0>` | 2021-08-03 | 1.4.0 release | 51ff2bd |
+| :doc:`v1.4.0 </releases/1.4.0>` | 2021-08-03 | 1.4.0 release | 51ff2bd |
+--------------------------------------+--------------+--------------------+----------------------------+
-| :doc:`v1.5.0 </docs/releases/1.5.0>` | 2021-11-30 | 1.5.0 release | v21.10_API1.3_ADAC_ALPHA-1 |
+| :doc:`v1.5.0 </releases/1.5.0>` | 2021-11-30 | 1.5.0 release | v21.10_API1.3_ADAC_ALPHA-1 |
+--------------------------------------+--------------+--------------------+----------------------------+
Future release plans
@@ -44,7 +44,7 @@
+--------------------------------------+-----------------+---------------+
Please refer to
-:ref:`docs/releases/release_process:Release Cadence and Process` for
+:ref:`releases/release_process:Release Cadence and Process` for
interpreting version numbers.
--------------
diff --git a/docs/releases/release_process.rst b/docs/releases/release_process.rst
index cb35ec2..9b3b011 100644
--- a/docs/releases/release_process.rst
+++ b/docs/releases/release_process.rst
@@ -5,7 +5,7 @@
-----------------------
The project aims to do a release once every 6 months around April and November
-time and are listed in the :ref:`docs/releases/index:Future release plans`.
+time and are listed in the :ref:`releases/index:Future release plans`.
The releases are to be performed and tagged on a dedicated release branch.
The release process is initiated by an announcement in
`TF-M mailing list <https://lists.trustedfirmware.org/mailman/listinfo/tf-m>`_
@@ -14,7 +14,7 @@
The testing will be performed on release candidates and depending on
issues found, additional candidates may be created to fix and retest the issues.
-:doc:`The Platform owners </docs/contributing/maintainers>` are expected to
+:doc:`The Platform owners </contributing/maintainers>` are expected to
verify their platforms and confirm the correct operations or provide fixes
in a timely manner to include in the release. The release notes will list
all verified platforms. The platforms in Trusted Firmware OpenCI is
diff --git a/docs/security/security.rst b/docs/security/security.rst
index 7f953a0..73289d3 100644
--- a/docs/security/security.rst
+++ b/docs/security/security.rst
@@ -61,11 +61,11 @@
.. _issue tracker: https://developer.trustedfirmware.org/project/view/2/
.. _mailing list: https://lists.trustedfirmware.org/mailman/listinfo/tf-m
-.. |TFMV-1| replace:: :ref:`docs/security/security_advisories/stack_seal_vulnerability:Advisory TFMV-1`
-.. |TFMV-2| replace:: :ref:`docs/security/security_advisories/svc_caller_sp_fetching_vulnerability:Advisory TFMV-2`
-.. |TFMV-3| replace:: :ref:`docs/security/security_advisories/crypto_multi_part_ops_abort_fail:Advisory TFMV-3`
-.. |TFMV-4| replace:: :ref:`docs/security/security_advisories/profile_small_key_id_encoding_vulnerability:Advisory TFMV-4`
-.. |TFMV-5| replace:: :ref:`docs/security/security_advisories/fwu_write_vulnerability:Advisory TFMV-5`
+.. |TFMV-1| replace:: :ref:`security/security_advisories/stack_seal_vulnerability:Advisory TFMV-1`
+.. |TFMV-2| replace:: :ref:`security/security_advisories/svc_caller_sp_fetching_vulnerability:Advisory TFMV-2`
+.. |TFMV-3| replace:: :ref:`security/security_advisories/crypto_multi_part_ops_abort_fail:Advisory TFMV-3`
+.. |TFMV-4| replace:: :ref:`security/security_advisories/profile_small_key_id_encoding_vulnerability:Advisory TFMV-4`
+.. |TFMV-5| replace:: :ref:`security/security_advisories/fwu_write_vulnerability:Advisory TFMV-5`
.. _TrustedFirmware.org security incident process: https://developer.trustedfirmware.org/w/collaboration/security_center/
diff --git a/docs/security/threat_models/generic_threat_model.rst b/docs/security/threat_models/generic_threat_model.rst
index 3e44b61..02293c0 100644
--- a/docs/security/threat_models/generic_threat_model.rst
+++ b/docs/security/threat_models/generic_threat_model.rst
@@ -1145,7 +1145,7 @@
.. [FF-M 1.1 Extensions] `Arm® Firmware Framework for M 1.1 Extensions <https://documentation-service.arm.com/static/600067c09b9c2d1bb22cd1c5?token=>`_
-.. [DUAL-CPU-BOOT] :doc:`Booting a dual core system </docs/technical_references/design_docs/dual-cpu/booting_a_dual_core_system>`
+.. [DUAL-CPU-BOOT] :doc:`Booting a dual core system </technical_references/design_docs/dual-cpu/booting_a_dual_core_system>`
.. [CVSS] `Common Vulnerability Scoring System Version 3.1 Calculator <https://www.first.org/cvss/calculator/3.1>`_
@@ -1153,17 +1153,17 @@
.. [STRIDE] `The STRIDE Threat Model <https://docs.microsoft.com/en-us/previous-versions/commerce-server/ee823878(v=cs.20)?redirectedfrom=MSDN>`_
-.. [SECURE-BOOT] :doc:`Secure boot </docs/technical_references/design_docs/tfm_secure_boot>`
+.. [SECURE-BOOT] :doc:`Secure boot </technical_references/design_docs/tfm_secure_boot>`
-.. [ROLLBACK-PROTECT] :doc:`Rollback protection in TF-M secure boot </docs/technical_references/design_docs/secure_boot_rollback_protection>`
+.. [ROLLBACK-PROTECT] :doc:`Rollback protection in TF-M secure boot </technical_references/design_docs/secure_boot_rollback_protection>`
.. [ARM arm] `Armv8-M Architecture Reference Manual <https://developer.arm.com/documentation/ddi0553/latest>`_
.. [STACK-SEAL] `Armv8-M processor Secure software Stack Sealing vulnerability <https://developer.arm.com/support/arm-security-updates/armv8-m-stack-sealing>`_
-.. [ADVISORY-TFMV-1] :doc:`Advisory TFMV-1 </docs/security/security_advisories/stack_seal_vulnerability>`
+.. [ADVISORY-TFMV-1] :doc:`Advisory TFMV-1 </security/security_advisories/stack_seal_vulnerability>`
-.. [ADVISORY-TFMV-2] :doc:`Advisory TFMV-2 </docs/security/security_advisories/svc_caller_sp_fetching_vulnerability>`
+.. [ADVISORY-TFMV-2] :doc:`Advisory TFMV-2 </security/security_advisories/svc_caller_sp_fetching_vulnerability>`
.. [VLLDM Vulnerability] : `VLLDM instruction Security Vulnerability <https://developer.arm.com/support/arm-security-updates/vlldm-instruction-security-vulnerability>`_
diff --git a/docs/technical_references/design_docs/dual-cpu/communication_prototype_between_nspe_and_spe_in_dual_core_systems.rst b/docs/technical_references/design_docs/dual-cpu/communication_prototype_between_nspe_and_spe_in_dual_core_systems.rst
index 5f1bd98..f8688c1 100644
--- a/docs/technical_references/design_docs/dual-cpu/communication_prototype_between_nspe_and_spe_in_dual_core_systems.rst
+++ b/docs/technical_references/design_docs/dual-cpu/communication_prototype_between_nspe_and_spe_in_dual_core_systems.rst
@@ -699,7 +699,7 @@
*********
.. [1] :doc:`Mailbox Design in TF-M on Dual-core System <./mailbox_design_on_dual_core_system>`
-.. [2] :doc:`Secure Interrupt Integration Guide </docs/integration_guide/tfm_secure_irq_integration_guide>`
+.. [2] :doc:`Secure Interrupt Integration Guide </integration_guide/tfm_secure_irq_integration_guide>`
----------------
diff --git a/docs/technical_references/design_docs/ff_isolation.rst b/docs/technical_references/design_docs/ff_isolation.rst
index 41dd4fc..daa8b48 100644
--- a/docs/technical_references/design_docs/ff_isolation.rst
+++ b/docs/technical_references/design_docs/ff_isolation.rst
@@ -10,7 +10,7 @@
complies the rules by operating the hardware and software resources.
.. note::
- Reference the document :doc:`Glossary </docs/glossary>` for terms
+ Reference the document :doc:`Glossary </glossary>` for terms
and abbreviations.
************
diff --git a/docs/technical_references/design_docs/hardware_abstraction_layer.rst b/docs/technical_references/design_docs/hardware_abstraction_layer.rst
index 6a0f6ed..05f8aae 100644
--- a/docs/technical_references/design_docs/hardware_abstraction_layer.rst
+++ b/docs/technical_references/design_docs/hardware_abstraction_layer.rst
@@ -61,7 +61,7 @@
- There is a non-secure :term:`HAL` that focuses on the mailbox operation API
for Dual-core topology. For more information about it, please refer to
:doc:`Mailbox Design in TF-M on Dual-core System
- </docs/technical_references/design_docs/dual-cpu/mailbox_design_on_dual_core_system>`.
+ </technical_references/design_docs/dual-cpu/mailbox_design_on_dual_core_system>`.
- The minimal set of :term:`TF-M` :term:`HAL` is sufficient for Secure
Partitions by using customized peripheral interfaces. To provide easier
portability for the Secure Partitions, a Secure Partition :term:`HAL` is
diff --git a/docs/technical_references/design_docs/profiles/tfm_profile_large.rst b/docs/technical_references/design_docs/profiles/tfm_profile_large.rst
index 3f254bb..2f6d00a 100644
--- a/docs/technical_references/design_docs/profiles/tfm_profile_large.rst
+++ b/docs/technical_references/design_docs/profiles/tfm_profile_large.rst
@@ -438,9 +438,9 @@
Reference
*********
-.. [1] :doc:`Trusted Firmware-M Profile Small Design </docs/technical_references/design_docs/profiles/tfm_profile_small>`
+.. [1] :doc:`Trusted Firmware-M Profile Small Design </technical_references/design_docs/profiles/tfm_profile_small>`
-.. [2] :doc:`Trusted Firmware-M Profile Medium Design </docs/technical_references/design_docs/profiles/tfm_profile_medium>`
+.. [2] :doc:`Trusted Firmware-M Profile Medium Design </technical_references/design_docs/profiles/tfm_profile_medium>`
.. [3] `PSA Certified Level 3 Lightweight Protection Profile <https://www.psacertified.org/app/uploads/2020/12/JSADEN009-PSA_Certified_Level_3_LW_PP-1.0-BET02.pdf>`_
@@ -448,13 +448,13 @@
.. [5] `The Transport Layer Security (TLS) Protocol Version 1.2 <https://tools.ietf.org/html/rfc5246>`_
-.. [6] :doc:`Physical attack mitigation in Trusted Firmware-M </docs/technical_references/design_docs/tfm_physical_attack_mitigation>`
+.. [6] :doc:`Physical attack mitigation in Trusted Firmware-M </technical_references/design_docs/tfm_physical_attack_mitigation>`
-.. [7] :doc:`Crypto design </docs/technical_references/design_docs/tfm_crypto_design>`
+.. [7] :doc:`Crypto design </technical_references/design_docs/tfm_crypto_design>`
-.. [8] :doc:`ITS integration guide </docs/integration_guide/services/tfm_its_integration_guide>`
+.. [8] :doc:`ITS integration guide </integration_guide/services/tfm_its_integration_guide>`
-.. [9] :doc:`TF-M build instruction </docs/technical_references/instructions/tfm_build_instruction>`
+.. [9] :doc:`TF-M build instruction </technical_references/instructions/tfm_build_instruction>`
--------------
diff --git a/docs/technical_references/design_docs/profiles/tfm_profile_medium.rst b/docs/technical_references/design_docs/profiles/tfm_profile_medium.rst
index 2f961da..84b7c09 100644
--- a/docs/technical_references/design_docs/profiles/tfm_profile_medium.rst
+++ b/docs/technical_references/design_docs/profiles/tfm_profile_medium.rst
@@ -472,7 +472,7 @@
.. [RFC7925] `Transport Layer Security (TLS) / Datagram Transport Layer Security (DTLS) Profiles for the Internet of Things <https://tools.ietf.org/html/rfc7925>`_
-.. [PROFILE-S] :doc:`Trusted Firmware-M Profile Small Design </docs/technical_references/design_docs/profiles/tfm_profile_small>`
+.. [PROFILE-S] :doc:`Trusted Firmware-M Profile Small Design </technical_references/design_docs/profiles/tfm_profile_small>`
.. [RFC7252] `The Constrained Application Protocol (CoAP) <https://tools.ietf.org/html/rfc7252>`_
@@ -480,11 +480,11 @@
.. [RFC7251] `AES-CCM Elliptic Curve Cryptography (ECC) Cipher Suites for TLS <https://tools.ietf.org/html/rfc7251>`_
-.. [CRYPTO-DESIGN] :doc:`Crypto design </docs/technical_references/design_docs/tfm_crypto_design>`
+.. [CRYPTO-DESIGN] :doc:`Crypto design </technical_references/design_docs/tfm_crypto_design>`
-.. [ITS-INTEGRATE] :doc:`ITS integration guide </docs/integration_guide/services/tfm_its_integration_guide>`
+.. [ITS-INTEGRATE] :doc:`ITS integration guide </integration_guide/services/tfm_its_integration_guide>`
-.. [TFM-BUILD] :doc:`TF-M build instruction </docs/technical_references/instructions/tfm_build_instruction>`
+.. [TFM-BUILD] :doc:`TF-M build instruction </technical_references/instructions/tfm_build_instruction>`
--------------
diff --git a/docs/technical_references/design_docs/profiles/tfm_profile_small.rst b/docs/technical_references/design_docs/profiles/tfm_profile_small.rst
index b14befc..b008feb 100644
--- a/docs/technical_references/design_docs/profiles/tfm_profile_small.rst
+++ b/docs/technical_references/design_docs/profiles/tfm_profile_small.rst
@@ -665,15 +665,15 @@
.. [8] `Transitioning the Use of Cryptographic Algorithms and Key Lengths <https://www.nist.gov/publications/transitioning-use-cryptographic-algorithms-and-key-lengths>`_
-.. [9] :doc:`ITS integration guide </docs/integration_guide/services/tfm_its_integration_guide>`
+.. [9] :doc:`ITS integration guide </integration_guide/services/tfm_its_integration_guide>`
.. [10] `PSA Attestation API 1.0 (ARM IHI 0085) <https://developer.arm.com/-/media/Files/pdf/PlatformSecurityArchitecture/Implement/IHI0085-PSA_Attestation_API-1.0.2.pdf?revision=eef78753-c77e-4b24-bcf0-65596213b4c1&la=en&hash=E5E0353D612077AFDCE3F2F3708A50C77A74B2A3>`_
-.. [11] :doc:`Secure boot </docs/technical_references/design_docs/tfm_secure_boot>`
+.. [11] :doc:`Secure boot </technical_references/design_docs/tfm_secure_boot>`
-.. [12] :doc:`Crypto design </docs/technical_references/design_docs/tfm_crypto_design>`
+.. [12] :doc:`Crypto design </technical_references/design_docs/tfm_crypto_design>`
-.. [13] :doc:`TF-M build instruction </docs/technical_references/instructions/tfm_build_instruction>`
+.. [13] :doc:`TF-M build instruction </technical_references/instructions/tfm_build_instruction>`
--------------
diff --git a/docs/technical_references/design_docs/source_structure.rst b/docs/technical_references/design_docs/source_structure.rst
index b2de0dd..74219d0 100644
--- a/docs/technical_references/design_docs/source_structure.rst
+++ b/docs/technical_references/design_docs/source_structure.rst
@@ -6,7 +6,7 @@
:Contact: tf-m@lists.trustedfirmware.org
.. note::
- Reference the document :doc:`Glossary </docs/glossary>` for terms
+ Reference the document :doc:`Glossary </glossary>` for terms
and abbreviations.
************
diff --git a/docs/technical_references/design_docs/symmetric_initial_attest.rst b/docs/technical_references/design_docs/symmetric_initial_attest.rst
index 2e3e80c..673758e 100644
--- a/docs/technical_references/design_docs/symmetric_initial_attest.rst
+++ b/docs/technical_references/design_docs/symmetric_initial_attest.rst
@@ -588,9 +588,9 @@
.. [1] `PSA Attestation API 1.0 (ARM IHI 0085) <https://developer.arm.com/-/media/Files/pdf/PlatformSecurityArchitecture/Implement/IHI0085-PSA_Attestation_API-1.0.2.pdf?revision=eef78753-c77e-4b24-bcf0-65596213b4c1&la=en&hash=E5E0353D612077AFDCE3F2F3708A50C77A74B2A3>`_
-.. [2] :doc:`Trusted Firmware-M Profile Small Design </docs/technical_references/design_docs/profiles/tfm_profile_small>`
+.. [2] :doc:`Trusted Firmware-M Profile Small Design </technical_references/design_docs/profiles/tfm_profile_small>`
-.. [3] :doc:`Initial Attestation Service Integration Guide </docs/integration_guide/services/tfm_attestation_integration_guide>`
+.. [3] :doc:`Initial Attestation Service Integration Guide </integration_guide/services/tfm_attestation_integration_guide>`
.. [4] `HMAC: Keyed-Hashing for Message Authentication <https://tools.ietf.org/html/rfc2104>`_
diff --git a/docs/technical_references/design_docs/tfm_crypto_design.rst b/docs/technical_references/design_docs/tfm_crypto_design.rst
index 5d8484b..7176556 100644
--- a/docs/technical_references/design_docs/tfm_crypto_design.rst
+++ b/docs/technical_references/design_docs/tfm_crypto_design.rst
@@ -94,7 +94,7 @@
| | The prefix used for the PSA API symbols of the Mbed Crypto | |
| | library is chosen to be ``mbedcrypto__``. | |
+-----------------------------+---------------------------------------------------------------+----------------------------------------------------------------------+
- | Documentation | The integration guide contains the description of the TF-M | ``./docs/user_guides/services/tfm_crypto_integration_guide.rst`` |
+ | Documentation | The integration guide contains the description of the TF-M | ``./user_guides/services/tfm_crypto_integration_guide.rst`` |
| | Crypto service modules and interfaces. | |
+-----------------------------+---------------------------------------------------------------+----------------------------------------------------------------------+
diff --git a/docs/technical_references/instructions/documentation_generation.rst b/docs/technical_references/instructions/documentation_generation.rst
index 219418c..b99b0b1 100644
--- a/docs/technical_references/instructions/documentation_generation.rst
+++ b/docs/technical_references/instructions/documentation_generation.rst
@@ -83,7 +83,7 @@
Build TF-M Reference Manual
***************************
-The Reference Manual will be generated in the ``build_docs/docs/reference_manual``.
+The Reference Manual will be generated in the ``build_docs/reference_manual``.
.. tabs::
@@ -107,7 +107,7 @@
Build TF-M User Guide
*********************
-The User Manual will be available under the directory ``build_docs/docs/user_guide``.
+The User Manual will be available under the directory ``build_docs/user_guide``.
.. tabs::
diff --git a/docs/technical_references/instructions/run_tfm_examples_on_arm_platforms.rst b/docs/technical_references/instructions/run_tfm_examples_on_arm_platforms.rst
index 10065d8..e9f3acb 100644
--- a/docs/technical_references/instructions/run_tfm_examples_on_arm_platforms.rst
+++ b/docs/technical_references/instructions/run_tfm_examples_on_arm_platforms.rst
@@ -4,7 +4,7 @@
Instructions for how to run TF-M and example test application on Arm platforms.
Follow :doc:`build instruction <tfm_build_instruction>` to build the binaries.
-Follow :doc:`secure boot </docs/technical_references/design_docs/tfm_secure_boot>` to build the
+Follow :doc:`secure boot </technical_references/design_docs/tfm_secure_boot>` to build the
binaries with or without BL2 bootloader.
****************************************************************
@@ -567,7 +567,7 @@
Firmware upgrade and image validation with BL2 bootloader
=========================================================
High level operation of BL2 bootloader and instructions for testing firmware
-upgrade is described in :doc:`secure boot </docs/technical_references/design_docs/tfm_secure_boot>`.
+upgrade is described in :doc:`secure boot </technical_references/design_docs/tfm_secure_boot>`.
--------------
diff --git a/docs/technical_references/instructions/tfm_build_instruction.rst b/docs/technical_references/instructions/tfm_build_instruction.rst
index 4f700db..5e34af5 100644
--- a/docs/technical_references/instructions/tfm_build_instruction.rst
+++ b/docs/technical_references/instructions/tfm_build_instruction.rst
@@ -2,7 +2,7 @@
Build instructions
##################
Please make sure you have all required software installed as explained in the
-:doc:`TF-M getting started </docs/getting_started/tfm_getting_started>`.
+:doc:`TF-M getting started </getting_started/tfm_getting_started>`.
****************
TF-M build steps
@@ -25,13 +25,13 @@
``trusted-firmware-m`` would be referenced as ``<TF-M base folder>`` and
its parent, the ``<base folder>``. Dependency management is now handled by
cmake. If you wish to alter this behaviour, see
-:ref:`docs/technical_references/instructions/tfm_build_instruction:Manual
+:ref:`technical_references/instructions/tfm_build_instruction:Manual
dependency management`
.. Note::
- For building with Armclang compiler version 6.10.0+, please follow the note
- in :doc:`TF-M getting started </docs/getting_started/tfm_getting_started>`.
+ in :doc:`TF-M getting started </getting_started/tfm_getting_started>`.
- For building with the IAR toolchain, please see the notes in
:doc:`IAR software requirements <tfm_build_instruction_iar>`
diff --git a/platform/ext/target/arm/mps3/an547/README.rst b/platform/ext/target/arm/mps3/an547/README.rst
index 8d0d61b..f0640c8 100644
--- a/platform/ext/target/arm/mps3/an547/README.rst
+++ b/platform/ext/target/arm/mps3/an547/README.rst
@@ -4,7 +4,7 @@
Building TF-M
-------------
-Follow the instructions in :doc:`Building instructions </docs/technical_references/instructions/tfm_build_instruction>`.
+Follow the instructions in :doc:`Building instructions </technical_references/instructions/tfm_build_instruction>`.
Build instructions with platform name: arm/mps3/an547
``-DTFM_PLATFORM=arm/mps3/an547``
diff --git a/platform/ext/target/arm/mps3/an552/README.rst b/platform/ext/target/arm/mps3/an552/README.rst
index 746c7f9..d696bce 100644
--- a/platform/ext/target/arm/mps3/an552/README.rst
+++ b/platform/ext/target/arm/mps3/an552/README.rst
@@ -4,7 +4,7 @@
Building TF-M
-------------
-Follow the instructions in :doc:`Building instructions </docs/technical_references/instructions/tfm_build_instruction>`.
+Follow the instructions in :doc:`Building instructions </technical_references/instructions/tfm_build_instruction>`.
Build instructions with platform name: arm/mps3/an552
``-DTFM_PLATFORM=arm/mps3/an552``
diff --git a/platform/ext/target/arm/mps3/corstone_polaris/README.rst b/platform/ext/target/arm/mps3/corstone_polaris/README.rst
index 9005d78..2663c40 100644
--- a/platform/ext/target/arm/mps3/corstone_polaris/README.rst
+++ b/platform/ext/target/arm/mps3/corstone_polaris/README.rst
@@ -15,7 +15,7 @@
Building TF-M
-------------
-Follow the instructions in :doc:`Building instructions </docs/technical_references/instructions/tfm_build_instruction>`.
+Follow the instructions in :doc:`Building instructions </technical_references/instructions/tfm_build_instruction>`.
Build instructions with platform name: arm/mps3/corstone_polaris (-DTFM_PLATFORM=arm/mps3/corstone_polaris).
*Copyright (c) 2021, Arm Limited. All rights reserved.*
diff --git a/platform/ext/target/arm/musca_b1/secure_enclave/readme.rst b/platform/ext/target/arm/musca_b1/secure_enclave/readme.rst
index 37f45e4..4598db3 100644
--- a/platform/ext/target/arm/musca_b1/secure_enclave/readme.rst
+++ b/platform/ext/target/arm/musca_b1/secure_enclave/readme.rst
@@ -17,7 +17,7 @@
on, the TF-M instance running on SSE-200 will communicate with the SE.
For more information you can check the
-:doc:`Secure Enclave design document </docs/technical_references/design_docs/secure_enclave_solution>`.
+:doc:`Secure Enclave design document </technical_references/design_docs/secure_enclave_solution>`.
***********
System boot
diff --git a/platform/ext/target/cypress/psoc64/cypress_psoc64_spec.rst b/platform/ext/target/cypress/psoc64/cypress_psoc64_spec.rst
index 045f79b..9902971 100644
--- a/platform/ext/target/cypress/psoc64/cypress_psoc64_spec.rst
+++ b/platform/ext/target/cypress/psoc64/cypress_psoc64_spec.rst
@@ -13,10 +13,10 @@
policy_multi_CM0_CM4_tfm.json
Please make sure you have all required software installed as explained in the
-:doc:`TF-M getting started </docs/getting_started/tfm_getting_started>`.
+:doc:`TF-M getting started </getting_started/tfm_getting_started>`.
Please also make sure that all the source code are fetched by following
-:doc:`general building instruction </docs/technical_references/instructions/tfm_build_instruction>`.
+:doc:`general building instruction </technical_references/instructions/tfm_build_instruction>`.
Install CySecureTools or update it to the newest version (2.0.0 at the time of
writing)
diff --git a/tools/documentation/tfm_cmake_defaults.py b/tools/documentation/tfm_cmake_defaults.py
index 0acfbc8..1820b6a 100644
--- a/tools/documentation/tfm_cmake_defaults.py
+++ b/tools/documentation/tfm_cmake_defaults.py
@@ -171,7 +171,7 @@
# Documentation base path
tfm_def_doc_root = os.path.join(tfm_def_root_dir, "docs")
- tfm_def_copy_doc_root = os.path.join(tfm_def_copy_dir, "docs")
+ tfm_def_copy_doc_root = tfm_def_copy_dir
# Disable copyfiles for next invocation
cmake_env["SPHINXCFG_COPY_FILES"] = "False"
diff --git a/tools/documentation/tfm_copy_files.py b/tools/documentation/tfm_copy_files.py
index 09226c8..b1eb9b0 100644
--- a/tools/documentation/tfm_copy_files.py
+++ b/tools/documentation/tfm_copy_files.py
@@ -19,6 +19,16 @@
from tfm_cmake_defaults import *
from subprocess import call
+def copytree_overwrite(src, dest):
+ if os.path.isdir(src):
+ if not os.path.isdir(dest):
+ os.makedirs(dest)
+ files = os.listdir(src)
+ for f in files:
+ copytree_overwrite(os.path.join(src, f),
+ os.path.join(dest, f))
+ else:
+ copy2(src, dest)
def tfm_copy_files():
doc_files = []
@@ -51,11 +61,7 @@
rmtree(f)
# Copy the documentation folder as is
- copytree(tfm_def_doc_root, tfm_def_copy_doc_root)
-
- # Move the index to the intermediate build directory
- # docs/index.rst --> ./index.rst
- move(os.path.join(tfm_def_copy_doc_root, "index.rst"), tfm_def_copy_dir)
+ copytree_overwrite(tfm_def_doc_root, tfm_def_copy_doc_root)
for df in list(doc_files):
# Set the target filename to be cwd + relative to root path of origin