diff options
-rw-r--r-- | docs/conf.py.in | 2 | ||||
-rw-r--r-- | docs/index.rst.in | 3 | ||||
-rw-r--r-- | docs/readme.rst | 150 | ||||
-rw-r--r-- | readme.rst | 176 |
4 files changed, 190 insertions, 141 deletions
diff --git a/docs/conf.py.in b/docs/conf.py.in index f5d9c14bd8..bc79be7a79 100644 --- a/docs/conf.py.in +++ b/docs/conf.py.in @@ -81,7 +81,7 @@ language = None # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This pattern also affects html_static_path and html_extra_path . -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', 'readme.rst'] # The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' diff --git a/docs/index.rst.in b/docs/index.rst.in index dfbc49a20d..f891cf560d 100644 --- a/docs/index.rst.in +++ b/docs/index.rst.in @@ -16,6 +16,7 @@ Trusted Firmware-M Documentation :maxdepth: 2 :hidden: + Home<docs/readme> docs/lic docs/dco docs/maintainers @@ -101,7 +102,7 @@ Trusted Firmware-M Documentation tools/iat-verifier/* -.. include:: readme.rst +.. include:: docs/readme.rst ----------- diff --git a/docs/readme.rst b/docs/readme.rst new file mode 100644 index 0000000000..a36dc83fc9 --- /dev/null +++ b/docs/readme.rst @@ -0,0 +1,150 @@ +################## +Trusted Firmware M +################## +Trusted Firmware M provides a reference implementation of secure world software +for ARMv8-M. + +.. Note:: + The software implementation contained in this project is designed to be a + reference implementation of the Platform Security Architecture (PSA). + It currently does not implement all the features of that architecture, + however we expect the code to evolve along with the specifications. + +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 +of terms and abbreviations. + +####### +License +####### +The software is provided under a BSD-3-Clause :doc:`License </docs/lic>`. +Contributions to this project are accepted under the same license with developer +sign-off as described in the :doc:`Contributing Guidelines </docs/contributing>`. + +This project contains code from other projects as listed below. The code from +external projects is limited to ``app`` and ``platform`` folders. +The original license text is included in those source files. + +- The ``platform`` folder currently contains drivers imported from external + project and the files have Apache 2.0 license. +- The ``app`` folder contains files imported from CMSIS_5 project and the files + have Apache 2.0 license. +- The ``bl2`` folder contains files imported from MCUBoot project and the files + have Apache 2.0 license. + +.. Note:: + Any code that has license other than BSD-3-Clause is kept in specific sub + folders named ``ext`` so that it can isolated if required. + +############ +This Release +############ +This release includes: + + - A Secure FW with support for PSA Level 1 and 2 isolation on Armv8-M. + - The Interfaces exposed by the Secure FW to NS side. + - A secure fw model with NS application example. + - Secure services running within this SPE: + + - Secure Storage Service (PSA Protected Storage API - 1.0-beta-2) + - Attestation (PSA API 1.0-beta-0) + - Crypto Service (PSA API 1.0-beta-1) + - TF-M Audit Log + - Platform Service + - Internal Trusted Storage (PSA API 1.0.0) + + - PSA IPC support + - Support for Armv8-M mainline and baseline + - Testcases running baremetal and with RTX to test the functionality. + - BL2 bootloader for image authentication based on SHA256 and RSA-3072 + digital signature. + - Build system based on cmake, supporting armclang and GNU Arm. + +********* +Platforms +********* +Current release has been tested on: + + - Cortex M33 based SSE-200 system: + + - `FPGA image loaded on MPS2 board. + <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__ + - `Fast model FVP_MPS2_AEMv8M. + <https://developer.arm.com/products/system-design/fixed-virtual-platforms>`__ + - `Musca-A test chip board. + <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-a-test-chip-board>`__ + - `Musca-B1 test chip board. + <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-b-test-chip-board>`__ + - `FPGA image loaded on MPS3 board. + <https://developer.arm.com/tools-and-software/development-boards/fpga-prototyping-boards/mps3>`__ + + - Cortex M23 based IoT Kit system: + + - `FPGA image loaded on MPS2 board. + <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__ + +############### +Getting Started +############### + +************ +Prerequisite +************ +Trusted Firmware M provides a reference implementation of PSA specifications. +It is assumed that the reader is familiar with PSA concepts and terms. PSA +specifications are currently not available in the public domain. + +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/technologies/trustzone>`__. + +********************** +Really getting started +********************** +Trusted Firmware M source code is available on `git.trustedfirmware.org +<https://git.trustedfirmware.org/trusted-firmware-m.git/>`__ + +To build & run TF-M: + + - Follow the :doc:`SW requirements guide </docs/user_guides/tfm_sw_requirement>` + to set up your environment. + - Follow the + :doc:`Build instructions </docs/user_guides/tfm_build_instruction>` to compile + and build the TF-M source. + - Follow the :doc:`User guide </docs/user_guides/tfm_user_guide>` for information + on running the example. + +To port TF-M to a another system or OS, follow the +:doc:`OS Integration Guide </docs/user_guides/tfm_integration_guide>` + +Please also see the :doc:`glossary </docs/glossary>` of terms used in the project. + +:doc:`Contributing Guidelines </docs/contributing>` contains guidance on how to +contribute to this project. + +Further documents can be found in the ``docs`` folder. + + +#################### +Feedback and support +#################### +For this early access release, feedback is requested via email to +`support-trustedfirmware-m@arm.com <support-trustedfirmware-m@arm.com>`__. + +############### +Version history +############### ++-------------+--------------+--------------------+ +| Version | Date | Description | ++=============+==============+====================+ +| v1.0-beta | 2019-02-15 | 1.0-beta release | ++-------------+--------------+--------------------+ +| v1.0-RC1 | 2019-05-31 | 1.0-RC1 release | ++-------------+--------------+--------------------+ +| v1.0-RC2 | 2019-10-09 | 1.0-RC2 release | ++-------------+--------------+--------------------+ + +-------------- + +*Copyright (c) 2017-2019, Arm Limited. All rights reserved.* diff --git a/readme.rst b/readme.rst index 78368f9993..c115cb748b 100644 --- a/readme.rst +++ b/readme.rst @@ -1,150 +1,48 @@ -############################# -Trusted Firmware M - v1.0-RC2 -############################# -Trusted Firmware M provides a reference implementation of secure world software -for ARMv8-M. +################## +Trusted Firmware-M +################## +The Trusted Firmware-M software implementation contained in this project is +designed to be a reference implementation of the +`Platform Security Architecture`_ (PSA) for `ARMv7-M and Armv8-M`_. -.. Note:: - The software implementation contained in this project is designed to be a - reference implementation of the Platform Security Architecture (PSA). - It currently does not implement all the features of that architecture, - however we expect the code to evolve along with the specifications. - -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 -of terms and abbreviations. - -####### -License -####### -The software is provided under a BSD-3-Clause :doc:`License <docs/lic>`. -Contributions to this project are accepted under the same license with developer -sign-off as described in the :doc:`Contributing Guidelines </docs/contributing>`. - -This project contains code from other projects as listed below. The code from -external projects is limited to ``app`` and ``platform`` folders. -The original license text is included in those source files. - -- The ``platform`` folder currently contains drivers imported from external - project and the files have Apache 2.0 license. -- The ``app`` folder contains files imported from CMSIS_5 project and the files - have Apache 2.0 license. -- The ``bl2`` folder contains files imported from MCUBoot project and the files - have Apache 2.0 license. +########### +Quick Links +########### .. Note:: - Any code that has license other than BSD-3-Clause is kept in specific sub - folders named ``ext`` so that it can isolated if required. - -############ -This Release -############ -This release includes: - - - A Secure FW with support for PSA Level 1 and 2 isolation on Armv8-M. - - The Interfaces exposed by the Secure FW to NS side. - - A secure fw model with NS application example. - - Secure services running within this SPE: - - - Secure Storage Service (PSA Protected Storage API - 1.0-beta-2) - - Attestation (PSA API 1.0-beta-0) - - Crypto Service (PSA API 1.0-beta-1) - - TF-M Audit Log - - Platform Service - - Internal Trusted Storage (PSA API 1.0.0) - - - PSA IPC support - - Support for Armv8-M mainline and baseline - - Testcases running baremetal and with RTX to test the functionality. - - BL2 bootloader for image authentication based on SHA256 and RSA-3072 - digital signature. - - Build system based on cmake, supporting armclang and GNU Arm. - -********* -Platforms -********* -Current release has been tested on: - - - Cortex M33 based SSE-200 system: - - - `FPGA image loaded on MPS2 board. - <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__ - - `Fast model FVP_MPS2_AEMv8M. - <https://developer.arm.com/products/system-design/fixed-virtual-platforms>`__ - - `Musca-A test chip board. - <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-a-test-chip-board>`__ - - `Musca-B1 test chip board. - <https://developer.arm.com/products/system-design/development-boards/iot-test-chips-and-boards/musca-b-test-chip-board>`__ - - `FPGA image loaded on MPS3 board. - <https://developer.arm.com/tools-and-software/development-boards/fpga-prototyping-boards/mps3>`__ - - - Cortex M23 based IoT Kit system: - - - `FPGA image loaded on MPS2 board. - <https://developer.arm.com/products/system-design/development-boards/cortex-m-prototyping-systems/mps2>`__ - -############### -Getting Started -############### - -************ -Prerequisite -************ -Trusted Firmware M provides a reference implementation of PSA specifications. -It is assumed that the reader is familiar with PSA concepts and terms. PSA -specifications are currently not available in the public domain. - -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/technologies/trustzone>`__. - -********************** -Really getting started -********************** -Trusted Firmware M source code is available on `git.trustedfirmware.org -<https://git.trustedfirmware.org/trusted-firmware-m.git/>`__ - -To build & run TF-M: - - - Follow the :doc:`SW requirements guide </docs/user_guides/tfm_sw_requirement>` - to set up your environment. - - Follow the - :doc:`Build instructions </docs/user_guides/tfm_build_instruction>` to compile - and build the TF-M source. - - Follow the :doc:`User guide </docs/user_guides/tfm_user_guide>` for information - on running the example. - -To port TF-M to a another system or OS, follow the -:doc:`OS Integration Guide </docs/user_guides/tfm_integration_guide>` - -Please also see the :doc:`glossary </docs/glossary>` of terms used in the project. - -:doc:`Contributing Guidelines </docs/contributing>` contains guidance on how to -contribute to this project. - -Further documents can be found in the ``docs`` folder. - + This git contains the source code for Trusted Firmware-M. + + All official documentation has moved to `Trusted Firmware-M documentation`_ + which is available through `trustedfirmware.org`_. + +* `ARMv7-M and Armv8-M`_ +* `ARMv8-M Architecture`_ +* `Platform Security Architecture`_ +* `PSA certified`_ +* `Documentation home`_ +* `Software requirements`_ +* `Build instructions`_ +* `User Guide`_ +* `Contribution guidelines`_ +* `trustedfirmware.org`_ #################### Feedback and support #################### -For this early access release, feedback is requested via email to +Feedback can be submitted via email to `support-trustedfirmware-m@arm.com <support-trustedfirmware-m@arm.com>`__. -############### -Version history -############### -+-------------+--------------+--------------------+ -| Version | Date | Description | -+=============+==============+====================+ -| v1.0-beta | 2019-02-15 | 1.0-beta release | -+-------------+--------------+--------------------+ -| v1.0-RC1 | 2019-05-31 | 1.0-RC1 release | -+-------------+--------------+--------------------+ -| v1.0-RC2 | 2019-10-09 | 1.0-RC2 release | -+-------------+--------------+--------------------+ - --------------- +.. _License: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/lic.html +.. _Contribution guidelines: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/contributing.html +.. _Build instructions: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/user_guides/tfm_build_instruction.html +.. _Software requirements: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/user_guides/tfm_sw_requirement.html +.. _User Guide: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/user_guides/tfm_user_guide.html +.. _ARMv7-M and Armv8-M: https://developer.arm.com/architectures/cpu-architecture/m-profile +.. _ARMv8-M Architecture: https://developer.arm.com/docs/100688/latest/an-introduction-to-the-armv8-m-architecture +.. _Platform Security Architecture: https://www.arm.com/why-arm/architecture/platform-security-architecture +.. _PSA certified: https://www.psacertified.org/ +.. _Trusted Firmware-M documentation: Documentation home_ +.. _Documentation home: https://ci.trustedfirmware.org/job/tf-m-build-test-nightly/lastSuccessfulBuild/artifact/build-docs/tf-m_documents/install/doc/user_guide/html/docs/readme.html +.. _trustedfirmware.org: http://www.trustedfirmware.org *Copyright (c) 2017-2019, Arm Limited. All rights reserved.* |