Upstream fork of ATF with a couple of rk3399 patches to remove HDCP blob and increase BAUD_RATE.
Go to file
Manish V Badarkhe 45aecff003 Implement workaround for AT speculative behaviour
During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instruction using out-of-context
translation regime.

Workaround is implemented as below during EL's (EL1 or EL2)
"context_restore" operation:
1. Disable page table walk using SCTLR.M and TCR.EPD0 & EPD1
   bits for EL1 or EL2 (stage1 and stage2 disabled)
2. Save all system registers except TCR and SCTLR (for EL1 and EL2)
3. Do memory barrier operation (isb) to ensure all
   system register writes are done.
4. Restore TCR and SCTLR registers (for EL1 and EL2)

Errata details are available for various CPUs as below:
Cortex-A76: 1165522
Cortex-A72: 1319367
Cortex-A57: 1319537
Cortex-A55: 1530923
Cortex-A53: 1530924

More details can be found in mail-chain:
https://lists.trustedfirmware.org/pipermail/tf-a/2020-April/000445.html

Currently, Workaround is implemented as build option which is default
disabled.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: If8545e61f782cb0c2dda7ffbaf50681c825bd2f0
2020-05-14 13:08:54 +00:00
bl1 linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
bl2 linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
bl2u linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
bl31 linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
bl32 linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
common SPMD: extract SPMC DTB header size from SPMD 2020-05-13 08:08:39 +02:00
docs Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
drivers plat/stm32: Use generic fdt_get_reg_props_by_name() 2020-05-05 15:36:51 +01:00
fdts fdts: a5ds: Fix for the system timer issue. 2020-04-17 21:12:15 +01:00
include Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
lib Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
make_helpers Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
plat SPMD: extract SPMC DTB header size from SPMD 2020-05-13 08:08:39 +02:00
services SPMD: extract SPMC DTB header size from SPMD 2020-05-13 08:08:39 +02:00
tools Merge changes from topic "sb/dualroot" into integration 2020-03-10 13:47:47 +00:00
.checkpatch.conf Re-apply GIT_COMMIT_ID check for checkpatch 2019-07-12 11:06:24 +01:00
.editorconfig doc: Final, pre-release fixes and updates 2019-10-22 13:15:02 +00:00
.gitignore Ignore the ctags file 2020-01-22 16:08:27 +00:00
.gitreview Specify integration as the default branch for git-review 2020-04-02 07:57:17 +00:00
Makefile Implement workaround for AT speculative behaviour 2020-05-14 13:08:54 +00:00
dco.txt Drop requirement for CLA in contribution.md 2016-09-27 21:52:03 +01:00
license.rst doc: De-duplicate readme and license files 2019-10-08 16:36:15 +00:00
readme.rst doc: Formatting fixes for readme.rst 2019-10-09 15:37:59 +00:00

readme.rst

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> </head>

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:

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.

</html>