xref: /rk3399_ARM-atf/docs/index.rst (revision 3ba55a3c5fa260c9218be1adff8f39fc2a568d68)
140d553cfSPaul BeesleyTrusted Firmware-A Documentation
240d553cfSPaul Beesley================================
3653279b0SPaul Beesley
4653279b0SPaul Beesley.. toctree::
5653279b0SPaul Beesley   :maxdepth: 1
657354abbSPaul Beesley   :hidden:
7653279b0SPaul Beesley
89f1622b0SPaul Beesley   Home<self>
98eb9490bSPaul Beesley   about/index
1040d553cfSPaul Beesley   getting_started/index
1140d553cfSPaul Beesley   process/index
1240d553cfSPaul Beesley   components/index
1340d553cfSPaul Beesley   design/index
1440d553cfSPaul Beesley   plat/index
1540d553cfSPaul Beesley   perf/index
1640d553cfSPaul Beesley   security_advisories/index
1774601490SBalint Dobszay   design_documents/index
18653279b0SPaul Beesley   change-log
19992d2fe0Slaurenw-arm   change-log-upcoming
208f62ca7bSPaul Beesley   glossary
219f1622b0SPaul Beesley   license
22653279b0SPaul Beesley
239f1622b0SPaul BeesleyTrusted Firmware-A (TF-A) provides a reference implementation of secure world
249f1622b0SPaul Beesleysoftware for `Armv7-A and Armv8-A`_, including a `Secure Monitor`_ executing
259f1622b0SPaul Beesleyat Exception Level 3 (EL3). It implements various Arm interface standards,
269f1622b0SPaul Beesleysuch as:
27653279b0SPaul Beesley
289f1622b0SPaul Beesley-  The `Power State Coordination Interface (PSCI)`_
299f1622b0SPaul Beesley-  `Trusted Board Boot Requirements CLIENT (TBBR-CLIENT)`_
309f1622b0SPaul Beesley-  `SMC Calling Convention`_
319f1622b0SPaul Beesley-  `System Control and Management Interface (SCMI)`_
329f1622b0SPaul Beesley-  `Software Delegated Exception Interface (SDEI)`_
339f1622b0SPaul Beesley
349f1622b0SPaul BeesleyWhere possible, the code is designed for reuse or porting to other Armv7-A and
359f1622b0SPaul BeesleyArmv8-A model and hardware platforms.
369f1622b0SPaul Beesley
379f1622b0SPaul BeesleyThis release provides a suitable starting point for productization of secure
389f1622b0SPaul Beesleyworld boot and runtime firmware, in either the AArch32 or AArch64 execution
399f1622b0SPaul Beesleystates.
409f1622b0SPaul Beesley
419f1622b0SPaul BeesleyUsers are encouraged to do their own security validation, including penetration
429f1622b0SPaul Beesleytesting, on any secure world code derived from TF-A.
439f1622b0SPaul Beesley
448cc36aecSPaul BeesleyIn collaboration with interested parties, we will continue to enhance |TF-A|
458cc36aecSPaul Beesleywith reference implementations of Arm standards to benefit developers working
468cc36aecSPaul Beesleywith Armv7-A and Armv8-A TrustZone technology.
479f1622b0SPaul Beesley
488eb9490bSPaul BeesleyGetting Started
498eb9490bSPaul Beesley---------------
509f1622b0SPaul Beesley
518eb9490bSPaul BeesleyThe |TF-A| documentation contains guidance for obtaining and building the
528eb9490bSPaul Beesleysoftware for existing, supported platforms, as well as supporting information
538eb9490bSPaul Beesleyfor porting the software to a new platform.
549f1622b0SPaul Beesley
558eb9490bSPaul BeesleyThe **About** chapter gives a high-level overview of |TF-A| features as well as
568eb9490bSPaul Beesleysome information on the project and how it is organized.
579f1622b0SPaul Beesley
588eb9490bSPaul BeesleyRefer to the documents in the **Getting Started** chapter for information about
598eb9490bSPaul Beesleythe prerequisites and requirements for building |TF-A|.
609f1622b0SPaul Beesley
618eb9490bSPaul BeesleyThe **Processes & Policies** chapter explains the project's release schedule
628eb9490bSPaul Beesleyand process, how security disclosures are handled, and the guidelines for
638eb9490bSPaul Beesleycontributing to the project (including the coding style).
649f1622b0SPaul Beesley
658eb9490bSPaul BeesleyThe **Components** chapter holds documents that explain specific components
668eb9490bSPaul Beesleythat make up the |TF-A| software, the :ref:`Exception Handling Framework`, for
678eb9490bSPaul Beesleyexample.
689f1622b0SPaul Beesley
698eb9490bSPaul BeesleyIn the **System Design** chapter you will find documents that explain the
708eb9490bSPaul Beesleydesign of portions of the software that involve more than one component, such
718eb9490bSPaul Beesleyas the :ref:`Trusted Board Boot` process.
729f1622b0SPaul Beesley
738eb9490bSPaul Beesley**Platform Ports** provides a list of the supported hardware and software-model
748eb9490bSPaul Beesleyplatforms that are supported upstream in |TF-A|. Most of these platforms also
758eb9490bSPaul Beesleyhave additional documentation that has been provided by the maintainers of the
768eb9490bSPaul Beesleyplatform.
779f1622b0SPaul Beesley
788eb9490bSPaul BeesleyThe results of any performance evaluations are added to the
798eb9490bSPaul Beesley**Performance & Testing** chapter.
809f1622b0SPaul Beesley
818eb9490bSPaul Beesley**Security Advisories** holds a list of documents relating to |CVE| entries that
828eb9490bSPaul Beesleyhave previously been raised against the software.
839f1622b0SPaul Beesley
849f1622b0SPaul Beesley--------------
859f1622b0SPaul Beesley
8674601490SBalint Dobszay*Copyright (c) 2013-2020, Arm Limited and Contributors. All rights reserved.*
879f1622b0SPaul Beesley
889f1622b0SPaul Beesley.. _Armv7-A and Armv8-A: https://developer.arm.com/products/architecture/a-profile
899f1622b0SPaul Beesley.. _Secure Monitor: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php
908eb9490bSPaul Beesley.. _Power State Coordination Interface (PSCI): http://infocenter.arm.com/help/topic/com.arm.doc.den0022d/Power_State_Coordination_Interface_PDD_v1_1_DEN0022D.pdf
919f1622b0SPaul Beesley.. _Trusted Board Boot Requirements CLIENT (TBBR-CLIENT): https://developer.arm.com/docs/den0006/latest/trusted-board-boot-requirements-client-tbbr-client-armv8-a
928eb9490bSPaul Beesley.. _System Control and Management Interface (SCMI): http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf
938eb9490bSPaul Beesley.. _Software Delegated Exception Interface (SDEI): http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf
94*3ba55a3cSlaurenw-arm.. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest
95