In anticipation of Spectre BHB workaround mitigation patches, we disable the RECLAIM_INIT_CODE for FVP platform. Since the spectre BHB mitigation workarounds inevitably increase the size of the various segments due to additional instructions and/or macros, these segments cannot be fit in the existing memory layout designated for BL31 image. The issue is specifically seen in complex build configs for FVP platform. One such config has TBB with Dual CoT and test secure payload dispatcher(TSPD) enabled. Even a small increase in individual segment size in order of few bytes might lead to build fails due to alignment requirements(PAGE_ALIGN to 4KB). This is needed to workaround the following build failures observed across multiple build configs: aarch64-none-elf-ld.bfd: BL31 init has exceeded progbits limit. aarch64-none-elf-ld.bfd: /work/workspace/workspace/tf-worker_ws_2/trusted_firmware/build/fvp/debug/bl31/bl31.elf section coherent_ram will not fit in region RAM aarch64-none-elf-ld.bfd: BL31 image has exceeded its limit. aarch64-none-elf-ld.bfd: region RAM overflowed by 4096 bytes Change-Id: Idfab539e9a40f4346ee11eea1e618c97e93e19a1 Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com> |
||
---|---|---|
.husky | ||
bl1 | ||
bl2 | ||
bl2u | ||
bl31 | ||
bl32 | ||
common | ||
docs | ||
drivers | ||
fdts | ||
include | ||
lib | ||
licenses | ||
make_helpers | ||
plat | ||
services | ||
tools | ||
.checkpatch.conf | ||
.commitlintrc.js | ||
.cz.json | ||
.editorconfig | ||
.gitignore | ||
.gitreview | ||
.versionrc.js | ||
Makefile | ||
changelog.yaml | ||
dco.txt | ||
license.rst | ||
package-lock.json | ||
package.json | ||
readme.rst |
readme.rst
Trusted Firmware-A
Trusted Firmware-A (TF-A) is a reference implementation of secure world software for Arm A-Profile architectures (Armv8-A and Armv7-A), including an Exception Level 3 (EL3) Secure Monitor. It provides a suitable starting point for productization of secure world boot and runtime firmware, in either the AArch32 or AArch64 execution states.
TF-A implements Arm interface standards, including:
- Power State Coordination Interface (PSCI)
- Trusted Board Boot Requirements CLIENT (TBBR-CLIENT)
- SMC Calling Convention
- System Control and Management Interface (SCMI)
- Software Delegated Exception Interface (SDEI)
The code is designed to be portable and reusable across hardware platforms and software models that are based on the Armv8-A and Armv7-A architectures.
In collaboration with interested parties, we will continue to enhance TF-A with reference implementations of Arm standards to benefit developers working with Armv7-A and Armv8-A TrustZone technology.
Users are encouraged to do their own security validation, including penetration testing, on any secure world code derived from TF-A.
More Info and Documentation
To find out more about Trusted Firmware-A, please view the full documentation that is available through trustedfirmware.org.
Copyright (c) 2013-2019, Arm Limited and Contributors. All rights reserved.