1. What is Trusted Firmware?
Trusted Firmware is a Root of Trust reference code to support security features.
It is developed as an open-source project under an open-governance model defined by Arm.
STMicroelectronics provides reference designs based on the open-source code but enhanced for the STMicroelectronics products and their specific hardware security features.
There are two categories of Trusted Firmware:
- TF-M: Trusted Firmware for Armv8-M and Armv8.1-M Cortex® MCU devices
- TF-A: Trusted Firmware for Armv8-A Cortex®, adapted by STMicroelectronics for Armv7-A Cortex® MPU devices
1.1. TF-M: Trusted Firmware for Armv8-M and Armv8.1-M Cortex® MCU devices
Supported products: STM32L5, STM32U5, and STM32WBA5.
It has the following security features:
- Secure boot
- Secure firmware update
- Secure storage
- Resource isolation
- Secure execution
- Cryptographic engine
- Software IP Protection.
1.2. TF-A: Trusted Firmware for Armv8-A Cortex®, adapted by STMicroelectronics for Armv7-A Cortex® MPU devices
Supported products: STM32MP1
TF-A is used as a first-stage bootloader for the trusted boot chain and secure monitoring for various standard Arm® interfaces.
It has the following features:
- Power state coordination interface (PSCI)
- Trusted board boot requirements (TBBR)
- SMC calling convention
- System control and management interface
2. References