Upstream fork of ATF with a couple of rk3399 patches to remove HDCP blob and increase BAUD_RATE.
Go to file
Manish V Badarkhe f98630fbbf plat/arm: fvp: Protect GICR frames for fused/unused cores
Currently, BLs are mapping the GIC memory region as read-write
for all cores on boot-up.

This opens up the security hole where the active core can write
the GICR frame of fused/inactive core. To avoid this issue, disable
the GICR frame of all inactive cores as below:

1. After primary CPU boots up, map GICR region of all cores as
   read-only.
2. After primary CPU boots up, map its GICR region as read-write
   and initialize its redistributor interface.
3. After secondary CPU boots up, map its GICR region as read-write
   and initialize its redistributor interface.
4. All unused/fused core's redistributor regions remain read-only and
   write attempt to such protected regions results in an exception.

As mentioned above, this patch offers only the GICR memory-mapped
region protection considering there is no facility at the GIC IP
level to avoid writing the redistributor area.

These changes are currently done in BL31 of Arm FVP and guarded under
the flag 'FVP_GICR_REGION_PROTECTION'.

As of now, this patch is tested manually as below:
1. Disable the FVP cores (core 1, 2, 3) with core 0 as an active core.
2. Verify data abort triggered by manually updating the ‘GICR_CTLR’
   register of core 1’s(fused) redistributor from core 0(active).

Change-Id: I86c99c7b41bae137b2011cf2ac17fad0a26e776d
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
2021-02-09 15:55:26 +00:00
bl1 Add support for FEAT_MTPMU for Armv8.6 2020-12-11 12:49:20 +00:00
bl2 Add support for FEAT_MTPMU for Armv8.6 2020-12-11 12:49:20 +00:00
bl2u linker_script: move .data section to bl_common.ld.h 2020-04-25 20:09:08 +09:00
bl31 Add TRNG Firmware Interface service 2021-02-05 11:49:18 +00:00
bl32 Add support for FEAT_MTPMU for Armv8.6 2020-12-11 12:49:20 +00:00
common Merge "Increase type widths to satisfy width requirements" into integration 2020-10-18 14:51:00 +00:00
docs doc: Build option to protect GICR frame 2021-02-09 15:54:19 +00:00
drivers Merge changes from topic "scmi-msg" into integration 2021-01-27 15:14:46 +00:00
fdts product/tc0: Enable Theodul DSU in TC platform 2021-02-03 10:10:58 +00:00
include Merge "ddr: stm32mp1_ddr: correct SELFREF_TO_X32 mask" into integration 2021-02-05 18:33:33 +00:00
lib rainier: remove cpu workaround for errata 1542419 2021-02-05 11:14:58 +00:00
make_helpers Add TRNG Firmware Interface service 2021-02-05 11:49:18 +00:00
plat plat/arm: fvp: Protect GICR frames for fused/unused cores 2021-02-09 15:55:26 +00:00
services Add TRNG Firmware Interface service 2021-02-05 11:49:18 +00:00
tools Merge "tools: cert_create: Create only requested certificates" into integration 2021-01-28 15:04:22 +00:00
.checkpatch.conf Re-apply GIT_COMMIT_ID check for checkpatch 2019-07-12 11:06:24 +01:00
.editorconfig .editorconfig: set max line length to 100 2020-12-03 15:39:23 +00:00
.gitignore tools: renesas: Add tool support for RZ/G2 platforms 2021-01-13 19:15:57 +00:00
.gitreview Specify integration as the default branch for git-review 2020-04-02 07:57:17 +00:00
Makefile Add TRNG Firmware Interface service 2021-02-05 11:49:18 +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>