Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 1 | Trusted Firmware-A |
| 2 | ================== |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 3 | |
Paul Beesley | 76cf653 | 2019-10-09 15:37:59 +0000 | [diff] [blame] | 4 | Trusted Firmware-A (TF-A) is a reference implementation of secure world software |
| 5 | for `Arm A-Profile architectures`_ (Armv8-A and Armv7-A), including an Exception |
| 6 | Level 3 (EL3) `Secure Monitor`_. It provides a suitable starting point for |
| 7 | productization of secure world boot and runtime firmware, in either the AArch32 |
| 8 | or AArch64 execution states. |
John Tsichritzis | 0668dd7 | 2019-04-11 17:23:32 +0100 | [diff] [blame] | 9 | |
Paul Beesley | 76cf653 | 2019-10-09 15:37:59 +0000 | [diff] [blame] | 10 | TF-A implements Arm interface standards, including: |
John Tsichritzis | 0668dd7 | 2019-04-11 17:23:32 +0100 | [diff] [blame] | 11 | |
Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 12 | - `Power State Coordination Interface (PSCI)`_ |
Sandrine Bailleux | c1491eb | 2019-04-24 10:41:24 +0200 | [diff] [blame] | 13 | - `Trusted Board Boot Requirements CLIENT (TBBR-CLIENT)`_ |
Dan Handley | 4bf3349 | 2017-07-05 17:40:29 +0100 | [diff] [blame] | 14 | - `SMC Calling Convention`_ |
Paul Beesley | 3c6261b | 2019-01-10 15:42:39 +0000 | [diff] [blame] | 15 | - `System Control and Management Interface (SCMI)`_ |
Dan Handley | 5b0b727 | 2018-03-14 13:01:39 +0000 | [diff] [blame] | 16 | - `Software Delegated Exception Interface (SDEI)`_ |
Dan Handley | 4bf3349 | 2017-07-05 17:40:29 +0100 | [diff] [blame] | 17 | |
Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 18 | The code is designed to be portable and reusable across hardware platforms and |
| 19 | software models that are based on the Armv8-A and Armv7-A architectures. |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 20 | |
Paul Beesley | 76cf653 | 2019-10-09 15:37:59 +0000 | [diff] [blame] | 21 | In collaboration with interested parties, we will continue to enhance TF-A |
Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 22 | with reference implementations of Arm standards to benefit developers working |
| 23 | with Armv7-A and Armv8-A TrustZone technology. |
Paul Beesley | ca7145c | 2019-03-25 16:45:23 +0000 | [diff] [blame] | 24 | |
| 25 | Users are encouraged to do their own security validation, including penetration |
| 26 | testing, on any secure world code derived from TF-A. |
| 27 | |
Paul Beesley | 76cf653 | 2019-10-09 15:37:59 +0000 | [diff] [blame] | 28 | More Info and Documentation |
| 29 | --------------------------- |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 30 | |
Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 31 | To find out more about Trusted Firmware-A, please `view the full documentation`_ |
| 32 | that is available through `trustedfirmware.org`_. |
Joel Hutton | d0f9809 | 2019-02-26 16:23:54 +0000 | [diff] [blame] | 33 | |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 34 | -------------- |
| 35 | |
Antonio Nino Diaz | 91ce07b | 2019-01-17 12:16:07 +0000 | [diff] [blame] | 36 | *Copyright (c) 2013-2019, Arm Limited and Contributors. All rights reserved.* |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 37 | |
Dan Handley | 5b0b727 | 2018-03-14 13:01:39 +0000 | [diff] [blame] | 38 | .. _Armv7-A and Armv8-A: https://developer.arm.com/products/architecture/a-profile |
Douglas Raillard | 6f62574 | 2017-06-28 15:23:03 +0100 | [diff] [blame] | 39 | .. _Secure Monitor: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php |
Dan Handley | 4bf3349 | 2017-07-05 17:40:29 +0100 | [diff] [blame] | 40 | .. _Power State Coordination Interface (PSCI): PSCI_ |
| 41 | .. _PSCI: http://infocenter.arm.com/help/topic/com.arm.doc.den0022d/Power_State_Coordination_Interface_PDD_v1_1_DEN0022D.pdf |
Sandrine Bailleux | c1491eb | 2019-04-24 10:41:24 +0200 | [diff] [blame] | 42 | .. _Trusted Board Boot Requirements CLIENT (TBBR-CLIENT): https://developer.arm.com/docs/den0006/latest/trusted-board-boot-requirements-client-tbbr-client-armv8-a |
Dan Handley | 4bf3349 | 2017-07-05 17:40:29 +0100 | [diff] [blame] | 43 | .. _SMC Calling Convention: http://infocenter.arm.com/help/topic/com.arm.doc.den0028b/ARM_DEN0028B_SMC_Calling_Convention.pdf |
Paul Beesley | 3c6261b | 2019-01-10 15:42:39 +0000 | [diff] [blame] | 44 | .. _System Control and Management Interface (SCMI): SCMI_ |
Dan Handley | 4bf3349 | 2017-07-05 17:40:29 +0100 | [diff] [blame] | 45 | .. _SCMI: http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf |
danh-arm | ed81126 | 2018-03-20 17:01:39 +0000 | [diff] [blame] | 46 | .. _Software Delegated Exception Interface (SDEI): SDEI_ |
Dan Handley | 5b0b727 | 2018-03-14 13:01:39 +0000 | [diff] [blame] | 47 | .. _SDEI: http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf |
Paul Beesley | 8cc36ae | 2019-09-23 15:40:21 +0000 | [diff] [blame] | 48 | .. _Arm A-Profile architectures: https://developer.arm.com/architectures/cpu-architecture/a-profile |
| 49 | .. _view the full documentation: https://www.trustedfirmware.org/docs/tf-a |
| 50 | .. _trustedfirmware.org: http://www.trustedfirmware.org |
| 51 | |