summaryrefslogtreecommitdiff
path: root/config/arch/v8.9.yaml
AgeCommit message (Collapse)Author
2024-01-15fix: 4 worlds configurationOlivier Deprez
FEAT_MTE/FEAT_MTE2 is an optional architecture option, remove it from default arch configs. Enable FEAT_MTE in the 4 worlds config as Hafnium requires it for the build configration consumed by shrinkwrap. Disable FEAT_SME/FEAT_SME2 from the 4 worlds config as Hafnium does not support it yet. Signed-off-by: Olivier Deprez <olivier.deprez@arm.com>
2024-01-09config: Update TFA to v2.10Ryan Roberts
Update TFA and associated, tightly coupled components (TFTF and Hafnium) to v2.10. TFA's feature system has been been reworked to allow runtime detection of (most) features. This is valuable for the FVP, where features can be enabled/disabled with high granularity, and simplifies the per-arch extension TFA directives that we have to carry in config/arch/vX.Y.yaml. TFA's intent was that it should be possible to configure (almost) all features as runtime-detected (the default for FVP platform) and everything would just work. However, this was found not to work as expected and I have instead had to explicitly set ARM_ARCH_MAJOR and ARM_ARCH_MINOR for each arch version (this was intended only for silicon). Setting these values cause TFA to compile-time enable all the mandatory features for that arch version, leaving all the optional features as runtime-detected. So in practice this fits the shrinkwrap model quite well; as long as the TFA arch version is in sync with the FVP arch version, we can then just enable optional features in the FVP as required and TFA will runtime-detect them. There are some rough edges though: - PAUTH cannot be runtime detected as the compiler needs to know about it, so we still explicitly set BRANCH_PROTECTION; its disabled until v8.3, where PAUTH becomes mandatory, so we set it to 2 (PAUTH only). Then at v8.5 where BTI becomes mandatory, we set BRANCH_PROTECTION to 1 (both PAUTH and BTI). - TFA can't handle a v9.X major/minor (presumably due to a broken makefile directive). So as a workaround, we always leave it set to the highest equivalent v8.X version. (e.g. 9.0 <- 8.5, 9.1 <- 8.6, etc). TFTF and Hafnium are also upgraded to 2.10 since they are released in lock-step with TFA. Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
2023-07-19config: Add v8.9 and v9.4 architecture versionsMark Brown
Now that we have TF-A v2.9 enabled we can begin to provide definitions for the 2023 architecture extensions. As a starting point enable the permission indirection and overlay extensions from v8.9, together with GCS from v9.4. Signed-off-by: Mark Brown <broonie@kernel.org>