140d553cfSPaul BeesleyTrusted Firmware-A Documentation 240d553cfSPaul Beesley================================ 3653279b0SPaul Beesley 4653279b0SPaul Beesley.. toctree:: 5653279b0SPaul Beesley :maxdepth: 1 6c65bf2d1SBoyan Karatotev :numbered: 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 14*292585beSSandrine Bailleux porting-guide 1540d553cfSPaul Beesley plat/index 1640d553cfSPaul Beesley perf/index 1740d553cfSPaul Beesley security_advisories/index 1874601490SBalint Dobszay design_documents/index 197006f208SZelalem threat_model/index 20653279b0SPaul Beesley change-log 218f62ca7bSPaul Beesley glossary 229f1622b0SPaul Beesley license 23653279b0SPaul Beesley 249f1622b0SPaul BeesleyTrusted Firmware-A (TF-A) provides a reference implementation of secure world 259f1622b0SPaul Beesleysoftware for `Armv7-A and Armv8-A`_, including a `Secure Monitor`_ executing 269f1622b0SPaul Beesleyat Exception Level 3 (EL3). It implements various Arm interface standards, 279f1622b0SPaul Beesleysuch as: 28653279b0SPaul Beesley 299f1622b0SPaul Beesley- The `Power State Coordination Interface (PSCI)`_ 309f1622b0SPaul Beesley- `Trusted Board Boot Requirements CLIENT (TBBR-CLIENT)`_ 319f1622b0SPaul Beesley- `SMC Calling Convention`_ 329f1622b0SPaul Beesley- `System Control and Management Interface (SCMI)`_ 339f1622b0SPaul Beesley- `Software Delegated Exception Interface (SDEI)`_ 340f20e50bSManish V Badarkhe- `PSA FW update specification`_ 359f1622b0SPaul Beesley 369f1622b0SPaul BeesleyWhere possible, the code is designed for reuse or porting to other Armv7-A and 379f1622b0SPaul BeesleyArmv8-A model and hardware platforms. 389f1622b0SPaul Beesley 399f1622b0SPaul BeesleyThis release provides a suitable starting point for productization of secure 409f1622b0SPaul Beesleyworld boot and runtime firmware, in either the AArch32 or AArch64 execution 419f1622b0SPaul Beesleystates. 429f1622b0SPaul Beesley 439f1622b0SPaul BeesleyUsers are encouraged to do their own security validation, including penetration 449f1622b0SPaul Beesleytesting, on any secure world code derived from TF-A. 459f1622b0SPaul Beesley 468cc36aecSPaul BeesleyIn collaboration with interested parties, we will continue to enhance |TF-A| 478cc36aecSPaul Beesleywith reference implementations of Arm standards to benefit developers working 488cc36aecSPaul Beesleywith Armv7-A and Armv8-A TrustZone technology. 499f1622b0SPaul Beesley 508eb9490bSPaul BeesleyGetting Started 518eb9490bSPaul Beesley--------------- 529f1622b0SPaul Beesley 538eb9490bSPaul BeesleyThe |TF-A| documentation contains guidance for obtaining and building the 548eb9490bSPaul Beesleysoftware for existing, supported platforms, as well as supporting information 558eb9490bSPaul Beesleyfor porting the software to a new platform. 569f1622b0SPaul Beesley 578eb9490bSPaul BeesleyThe **About** chapter gives a high-level overview of |TF-A| features as well as 588eb9490bSPaul Beesleysome information on the project and how it is organized. 599f1622b0SPaul Beesley 608eb9490bSPaul BeesleyRefer to the documents in the **Getting Started** chapter for information about 618eb9490bSPaul Beesleythe prerequisites and requirements for building |TF-A|. 629f1622b0SPaul Beesley 638eb9490bSPaul BeesleyThe **Processes & Policies** chapter explains the project's release schedule 648eb9490bSPaul Beesleyand process, how security disclosures are handled, and the guidelines for 658eb9490bSPaul Beesleycontributing to the project (including the coding style). 669f1622b0SPaul Beesley 678eb9490bSPaul BeesleyThe **Components** chapter holds documents that explain specific components 688eb9490bSPaul Beesleythat make up the |TF-A| software, the :ref:`Exception Handling Framework`, for 698eb9490bSPaul Beesleyexample. 709f1622b0SPaul Beesley 718eb9490bSPaul BeesleyIn the **System Design** chapter you will find documents that explain the 728eb9490bSPaul Beesleydesign of portions of the software that involve more than one component, such 738eb9490bSPaul Beesleyas the :ref:`Trusted Board Boot` process. 749f1622b0SPaul Beesley 758eb9490bSPaul Beesley**Platform Ports** provides a list of the supported hardware and software-model 768eb9490bSPaul Beesleyplatforms that are supported upstream in |TF-A|. Most of these platforms also 778eb9490bSPaul Beesleyhave additional documentation that has been provided by the maintainers of the 788eb9490bSPaul Beesleyplatform. 799f1622b0SPaul Beesley 808eb9490bSPaul BeesleyThe results of any performance evaluations are added to the 818eb9490bSPaul Beesley**Performance & Testing** chapter. 829f1622b0SPaul Beesley 838eb9490bSPaul Beesley**Security Advisories** holds a list of documents relating to |CVE| entries that 848eb9490bSPaul Beesleyhave previously been raised against the software. 859f1622b0SPaul Beesley 869f1622b0SPaul Beesley-------------- 879f1622b0SPaul Beesley 88*292585beSSandrine Bailleux*Copyright (c) 2013-2023, Arm Limited and Contributors. All rights reserved.* 899f1622b0SPaul Beesley 909f1622b0SPaul Beesley.. _Armv7-A and Armv8-A: https://developer.arm.com/products/architecture/a-profile 919f1622b0SPaul Beesley.. _Secure Monitor: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php 928eb9490bSPaul 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 939f1622b0SPaul Beesley.. _Trusted Board Boot Requirements CLIENT (TBBR-CLIENT): https://developer.arm.com/docs/den0006/latest/trusted-board-boot-requirements-client-tbbr-client-armv8-a 948eb9490bSPaul Beesley.. _System Control and Management Interface (SCMI): http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf 958eb9490bSPaul Beesley.. _Software Delegated Exception Interface (SDEI): http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf 963ba55a3cSlaurenw-arm.. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest 970f20e50bSManish V Badarkhe.. _PSA FW update specification: https://developer.arm.com/documentation/den0118/a/ 98