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