1Trusted Firmware-A Documentation 2================================ 3 4.. toctree:: 5 :maxdepth: 1 6 :hidden: 7 8 Home<self> 9 about/index 10 getting_started/index 11 process/index 12 components/index 13 design/index 14 plat/index 15 perf/index 16 security_advisories/index 17 design_documents/index 18 threat_model/index 19 change-log 20 glossary 21 license 22 23Trusted Firmware-A (TF-A) provides a reference implementation of secure world 24software for `Armv7-A and Armv8-A`_, including a `Secure Monitor`_ executing 25at Exception Level 3 (EL3). It implements various Arm interface standards, 26such as: 27 28- The `Power State Coordination Interface (PSCI)`_ 29- `Trusted Board Boot Requirements CLIENT (TBBR-CLIENT)`_ 30- `SMC Calling Convention`_ 31- `System Control and Management Interface (SCMI)`_ 32- `Software Delegated Exception Interface (SDEI)`_ 33 34Where possible, the code is designed for reuse or porting to other Armv7-A and 35Armv8-A model and hardware platforms. 36 37This release provides a suitable starting point for productization of secure 38world boot and runtime firmware, in either the AArch32 or AArch64 execution 39states. 40 41Users are encouraged to do their own security validation, including penetration 42testing, on any secure world code derived from TF-A. 43 44In collaboration with interested parties, we will continue to enhance |TF-A| 45with reference implementations of Arm standards to benefit developers working 46with Armv7-A and Armv8-A TrustZone technology. 47 48Getting Started 49--------------- 50 51The |TF-A| documentation contains guidance for obtaining and building the 52software for existing, supported platforms, as well as supporting information 53for porting the software to a new platform. 54 55The **About** chapter gives a high-level overview of |TF-A| features as well as 56some information on the project and how it is organized. 57 58Refer to the documents in the **Getting Started** chapter for information about 59the prerequisites and requirements for building |TF-A|. 60 61The **Processes & Policies** chapter explains the project's release schedule 62and process, how security disclosures are handled, and the guidelines for 63contributing to the project (including the coding style). 64 65The **Components** chapter holds documents that explain specific components 66that make up the |TF-A| software, the :ref:`Exception Handling Framework`, for 67example. 68 69In the **System Design** chapter you will find documents that explain the 70design of portions of the software that involve more than one component, such 71as the :ref:`Trusted Board Boot` process. 72 73**Platform Ports** provides a list of the supported hardware and software-model 74platforms that are supported upstream in |TF-A|. Most of these platforms also 75have additional documentation that has been provided by the maintainers of the 76platform. 77 78The results of any performance evaluations are added to the 79**Performance & Testing** chapter. 80 81**Security Advisories** holds a list of documents relating to |CVE| entries that 82have previously been raised against the software. 83 84-------------- 85 86*Copyright (c) 2013-2021, Arm Limited and Contributors. All rights reserved.* 87 88.. _Armv7-A and Armv8-A: https://developer.arm.com/products/architecture/a-profile 89.. _Secure Monitor: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php 90.. _Power State Coordination Interface (PSCI): http://infocenter.arm.com/help/topic/com.arm.doc.den0022d/Power_State_Coordination_Interface_PDD_v1_1_DEN0022D.pdf 91.. _Trusted Board Boot Requirements CLIENT (TBBR-CLIENT): https://developer.arm.com/docs/den0006/latest/trusted-board-boot-requirements-client-tbbr-client-armv8-a 92.. _System Control and Management Interface (SCMI): http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf 93.. _Software Delegated Exception Interface (SDEI): http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf 94.. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest 95