Trusted Firmware provides a reference open source implementation of Secure world software for Arm processors across all market segments
It provides SoC developers and OEMs with a reference trusted code base complying with the relevant Arm specifications. This forms the foundations of a Trusted Execution Environment (TEE) on application processors, or the Secure Processing Environment (SPE) on microcontrollers.
Trusted Firmware is designed to reduce porting and integration work across the ecosystem by creating reusable reference implementations for SoCs and Trusted OS developers.
Membership of the Trusted Firmware project is equally open to Linaro members and non-members and the project governance is overseen by a board of member representatives. This board currently consists of Arm, Linaro, Texas Instruments, Google LLC, Cypress Semiconductor, Futurewei, STMicroelectronics, NXP, Renesas and Data I/O.
Check out the project resources:
- Project Charter is available here
- Monthly project updates are available on the project blog section
- Public minutes of the recurring Board meetings are available in the wiki pages
The Trusted Firmware project is provided under a BSD-3-Clause license and contributions are accepted under the term of Developer Certificate of Origin.
Trusted Firmware-A (TF-A) supports Armv7-A and Armv8-A systems, including a Secure Monitor executing at Exception Level 3 (EL3). It implements various Arm interface standards including the Power State Coordination Interface (PSCI), Trusted Board Boot Requirements (TBBR), SMC Calling Convention, and System Control and Management Interface.
Trusted Firmware-M (TF-M) implements the Secure Processing Environment (SPE) for Armv8-M, Armv8.1-M architectures (e.g. the Cortex-M33, Cortex-M23, Cortex-M55 processors) or dual-core platforms. It is the Platform Security Architecture (PSA) reference implementation aligning with PSA Certified guidelines, enabling chips, Real Time Operating Systems and devices to become PSA Certified.
OP-TEE provides reference implementation of a Trusted Execution Environment (TEE), designed as companion to a non-secure Linux kernel running on Arm Cortex-A cores using the TrustZone technology.
Mbed TLS provides a portable, highly modular, easy-to-use TLS and X.509 library PSA Crypto (Mbed Crypto), derived from Mbed TLS library, brings together Crypto primitives and makes them available via. PSA Crypto APIs.
Hafnium comes as the reference Secure Partition Manager for the Arm Secure EL2 virtualization extension introduced in the Armv8.4-A architecture and implemented on modern Arm A-Profile processors.
Check out the latest project news
Hafnium, MbedTLS, PSA Crypto join the Trusted Firmware Project
Check out the past project news