Read-only mirror of Trusted Firmware-A
Go to file
Varun Wadekar 040529e9e6 Tegra194: save system suspend entry marker to TZDRAM
This patch adds support to save the system suspend entry and exit
markers to TZDRAM to help the trampoline code decide if the current
warmboot is actually an exit from System Suspend.

The Tegra194 platform handler sets the system suspend entry marker
before entering SC7 state and the trampoline flips the state back to
system resume, on exiting SC7.

Change-Id: I29d73f1693c89ebc8d19d7abb1df1e460eb5558e
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
2019-11-28 11:14:21 -08:00
bl1 TF-A: Add support for ARMv8.3-PAuth in BL1 SMC calls and BL2U 2019-10-03 14:43:55 +01:00
bl2 Refactor ARMv8.3 Pointer Authentication support code 2019-09-13 14:11:59 +01:00
bl2u TF-A: Add support for ARMv8.3-PAuth in BL1 SMC calls and BL2U 2019-10-03 14:43:55 +01:00
bl31 Neoverse N1 Errata Workaround 1542419 2019-10-04 19:31:24 +03:00
bl32 AArch32: Disable Secure Cycle Counter 2019-09-26 15:36:02 +00:00
common Refactor load_auth_image_internal(). 2019-11-14 11:20:27 +01:00
docs Merge changes from topic "lm/improve_memory_layout" into integration 2019-11-18 16:45:03 +00:00
drivers GIC-600: Fix include ordering according to the coding style 2019-11-19 11:38:33 +00:00
fdts Add multithreaded DynamIQ dts file 2019-11-13 16:36:14 +00:00
include Merge "plat/arm: Re-enable PIE when RESET_TO_BL31=1" into integration 2019-11-12 17:00:13 +00:00
lib Merge "Coding guideline suggest not to use unsigned long" into integration 2019-11-15 07:40:52 +00:00
make_helpers Fix the CAS spinlock implementation 2019-10-04 10:19:35 +02:00
plat Tegra194: save system suspend entry marker to TZDRAM 2019-11-28 11:14:21 -08:00
services Merge changes from topic "jc/coverity-fixes" into integration 2019-08-13 11:20:25 +00:00
tools Remove RSA PKCS#1 v1.5 support from cert_tool 2019-09-12 15:27:41 +01: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 meson: Rename platform directory to amlogic 2019-09-05 10:39:25 +01: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
Makefile Update TF-A version to 2.2 2019-10-15 10:47:09 -05:00
readme.rst doc: Formatting fixes for readme.rst 2019-10-09 15:37:59 +00:00

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.*

.. _Armv7-A and Armv8-A: https://developer.arm.com/products/architecture/a-profile
.. _Secure Monitor: http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php
.. _Power State Coordination Interface (PSCI): PSCI_
.. _PSCI: http://infocenter.arm.com/help/topic/com.arm.doc.den0022d/Power_State_Coordination_Interface_PDD_v1_1_DEN0022D.pdf
.. _Trusted Board Boot Requirements CLIENT (TBBR-CLIENT): https://developer.arm.com/docs/den0006/latest/trusted-board-boot-requirements-client-tbbr-client-armv8-a
.. _SMC Calling Convention: http://infocenter.arm.com/help/topic/com.arm.doc.den0028b/ARM_DEN0028B_SMC_Calling_Convention.pdf
.. _System Control and Management Interface (SCMI): SCMI_
.. _SCMI: http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf
.. _Software Delegated Exception Interface (SDEI): SDEI_
.. _SDEI: http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf
.. _Arm A-Profile architectures: https://developer.arm.com/architectures/cpu-architecture/a-profile
.. _view the full documentation: https://www.trustedfirmware.org/docs/tf-a
.. _trustedfirmware.org: http://www.trustedfirmware.org