Hi All,
We are pleased to announce the formal release of Trusted Firmware-A version 2.9 bundle of project deliverables.
This includes Trusted Firmware-A, Trusted Firmware-A Tests, Hafnium and TF-A OpenCI Scripts/Jobs 2.9 releases involving the tagging of multiple repositories. Aligned but not yet part of the release is Trusted Firmware-A Realm Management
Monitor v0.3.0.
These went live on 23rd
May 2023.
I would like to thank all of the contributors for their excellent work and achievements since the last release.
Thanks Joanna
Notable Features of the Version 2.9 Release are as follows:
TF-A/EL3 Root World
-
New Features:
-
Support for PSCI OS initiated mode
-
Architecture feature support for FEAT_TCR2, FEAT_GCS, FEAT_HCX, FEAT_SME2, FEAT_PIE/POR, FEAT_MPAM.
-
System registers access trap handler
-
Introduction to dynamic detection of features
-
Refactoring:
-
Context management
-
RAS extension exception handling and crash reporting.
-
Distinguish between BL2 as TF-A entry point or BL2 running at EL3 exception level.
-
General Support
-
CPU Support for Chaberton and Blackhawk for TC2023
-
Eighteen (18) Errata Mitigations for Cortex X2/X3/A710/A510/A78/A78C and Neoverse N2/V1 family CPU’S
-
Errata Management Firmware Interface implementation supported for version 1.0 of the public specification
TF-A Boot BL1/BL2
-
New Feature/Support
-
Support for Trusted Boot rooted into RSS RoT on TC2022 platform.
-
Support for PSA attestation scheme with Measured Boot rooted into RSS on TC2022 platform
-
Migration to mbedTLS 3.x as the default cryptography library retaining backwards compatibility with mbedTLS 2.x
-
Improvements and hardening of Arm CCA boot and attestation support.
-
Hardening efforts in the X.509 certificate parser, including a security fix (TFV-10 CVE-2022-47630)
Hafnium/SEL2 SPM
-
FF-A v1.2 ALP0 Specification Early Adoption Support
-
Implemented ppartition info get ABI using GP registers.
-
Group0 secure interrupt handling delegation.
-
Improved console log ABI.
-
FF-A v1.1 REL0 Specification Support
-
Interrupt handling (S-EL0 partition signalling, added action to Other-S-Int, allow a physical interrupt to be routed to a specified PE).
-
Memory sharing (structures updates supporting FF-A backwards compatibility, share/lend/donate memory to multiple borrowers, normal/secure fragmented memory sharing).
-
Power management (events relayed to the SPMC and removed limitations).
-
Indirect messaging (buffer synchronization and ownership transfer rules).
-
General Support
-
SPMC manifest to declare non-secure and secure system memory address ranges.
-
Hardened SP manifest memory regions boot time validation.
-
CI migration to LLVM/clang 15.0.6
-
Removal of non-VHE build and test configurations.
-
Added EL3 SPMC test configurations using the Hafnium's CI infrastructure.
TF-A Tests
-
New Test Support
-
Errata Management Firmware Interface testing
-
FF-A v1.1 feature testing
-
Realm Management Extension feature testing
-
New Architecture Specific feature testing related to v8.8
-
1 new platform port (RD-N2-Cfg3)
TF-RMM/REL2
-
New Feature/Support
-
Added support to create Realms which can make use of SVE, if present in hardware.
-
Refactor and improved the Stage 1 translation table library lib/xlat API to better fit RMM usage.
-
Add PMU support for Realms as described by RMM v1.0 Beta0 specification.
-
Support getting DRAM info from the Boot manifest dynamically at runtime.
-
RMM can now support the 2nd DDR bank on FVP
-
Define a unit test framework using CppUTest for RMM.
-
Added unit tests for granule, slot-buffer and Stage 1 translation table lib xlat.
-
Improvements to fake-host and unit tests framework.
-
Build improvements in RMM
Platform Support
- 1 new platform added, the Allwinner T507 SoC
- 26 platforms updated from 14 providers
- 17 different driver updates
OpenCI
-
First release done solely relying on Trustedfirmware.org OpenCI
Patch Statistics Across all Repositories
-
1403 Patches merged since v2.8 November 2022 release
Please refer to the TF-A [1], Hafnium [2] and TF-A Tests [3] changelogs
for the complete summary of changes from the previous release.
TF-A [4], TF-A Test [5], Hafnium [6],
TF-A OpenCI Scripts [7] and TF-A OpenCI Jobs [8] repositories
are available along with the compatible TF-RMM repository [9] and
changelog [10].
[1] https://trustedfirmware-a.readthedocs.io/en/v2.9/change-log.html#id1
[2] https://review.trustedfirmware.org/plugins/gitiles/hafnium/hafnium/+/HEAD/docs/ChangeLog.md
[3]
https://trustedfirmware-a-tests.readthedocs.io/en/v2.9/change-log.html#version-2-9
[4] https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/tag/?h=v2.9
[5] https://git.trustedfirmware.org/TF-A/tf-a-tests.git/tag/?h=v2.9
[6] https://git.trustedfirmware.org/hafnium/hafnium.git/tag/?h=v2.9
[7] https://git.trustedfirmware.org/ci/tf-a-ci-scripts.git/tag/?h=v2.9
[8] https://git.trustedfirmware.org/ci/tf-a-job-configs.git/tag/?h=v2.9
[9] https://git.trustedfirmware.org/TF-RMM/tf-rmm.git/tag/?h=tf-rmm-v0.3.0
[10] https://tf-rmm.readthedocs.io/en/tf-rmm-v0.3.0/about/change-log.html#v0-3-0