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