No description
Find a file
Manish Pandey bd6cc0b238 feat(drtm): introduce drtm dynamic launch function
This function is placeholder for checking all the necessary conditions
before doing drtm dynamic launch.
In this patch following conditions are checked (based on Table 31 of
DRTM spec beta0), rest of the conditions will be added in later
patches.
 - Only boot PE is online
 - Caller execution state is AArch64
 - Caller exception level is NS-EL2 or NS-EL1

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: I622b946bc191bb39f828831336ceafbc10834c19
2022-10-05 15:25:28 +01:00
.husky build(hooks): add commitlint hook 2021-04-19 14:06:25 +01:00
bl1 feat(debug): add helpers for aborts on AARCH32 2022-10-03 14:42:40 +02:00
bl2 feat(debug): add helpers for aborts on AARCH32 2022-10-03 14:42:40 +02:00
bl2u feat(debug): add helpers for aborts on AARCH32 2022-10-03 14:42:40 +02:00
bl31 feat(drtm): add platform functions for DRTM 2022-10-05 15:25:28 +01:00
bl32 feat(debug): add helpers for aborts on AARCH32 2022-10-03 14:42:40 +02:00
common feat(debug): add helpers for aborts on AARCH32 2022-10-03 14:42:40 +02:00
docs refactor(cpu): use the updated IP name for Demeter CPU 2022-10-03 15:31:40 +05:30
drivers refactor(measured-boot): split out a few Event Log driver functions 2022-10-05 15:25:28 +01:00
fdts fix(tc): resolve the static-checks errors 2022-09-28 13:48:12 +01:00
include refactor(measured-boot): split out a few Event Log driver functions 2022-10-05 15:25:28 +01:00
lib Merge "refactor(console): move putchar() to console driver" into integration 2022-10-04 17:06:43 +02:00
licenses docs(license): rectify arm-gic.h license 2021-04-26 12:36:00 +01:00
make_helpers fix(ras): trap "RAS error record" accesses only for NS 2022-09-28 17:10:57 +01:00
plat feat(drtm): add platform functions for DRTM 2022-10-05 15:25:28 +01:00
services feat(drtm): introduce drtm dynamic launch function 2022-10-05 15:25:28 +01:00
tools fix: 'sp_mk_generator.py' reference to undef var 2022-09-14 15:56:03 +01:00
.checkpatch.conf Re-apply GIT_COMMIT_ID check for checkpatch 2019-07-12 11:06:24 +01:00
.commitlintrc.js build(commitlint): make the scope optional 2022-05-03 11:06:50 +02:00
.cz.json refactor(hooks): replace cz-conventional-changelog with cz-commitlint 2022-01-24 12:55:00 +00:00
.editorconfig .editorconfig: set max line length to 100 2020-12-03 15:39:23 +00:00
.gitignore feat(sptool): delete c version of the sptool 2022-05-04 15:37:47 +01:00
.gitreview Specify integration as the default branch for git-review 2020-04-02 07:57:17 +00:00
.versionrc.js docs(changelog): fix broken version bumping 2022-01-24 12:55:34 +00:00
changelog.yaml build(changelog): add new scope for mbedTLS and Crypto module 2022-10-05 15:25:28 +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 refactor(crypto): change CRYPTO_SUPPORT flag to numeric 2022-10-05 15:25:28 +01:00
package-lock.json docs(changelog): changelog for v2.7 release 2022-06-01 15:19:37 +01:00
package.json docs(changelog): changelog for v2.7 release 2022-06-01 15:19:37 +01: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