Introduction to Trusted Firmware

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.
Info white.png Information
For more information, go to the STM32 MCU TF-M overview wiki page[1].

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
Info white.png Information
For more information, go to the STM32 MPU TF-A overview wiki page[2].

2. References