blob: 4fcd4921cf8c918a16691b1aff19a8a0dc8548c9 [file] [log] [blame]
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +02001Trusted Firmware-A Tests
2========================
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +02003
4The Trusted Firmware-A Tests (TF-A-Tests) is a suite of baremetal tests to
5exercise the `Trusted Firmware-A (TF-A)`_ features from the Normal World. It
6enables strong TF-A functional testing without dependency on a Rich OS. It
7mainly interacts with TF-A through its SMC interface.
8
9It provides a basis for TF-A developers to validate their own platform ports and
10add their own test cases.
11
12The following TF-A features are currently tested to some extent (this list is
13not exhaustive):
14
15- `SMC Calling Convention`_
16- `Power State Coordination Interface (PSCI)`_
17- `Software Delegated Exception Interface (SDEI)`_
18- `Performance Measurement Framework (PMF)`_
19- Communication and interaction with the `Test Secure Payload (TSP)`_
20- `Firmware update`_ (or recovery mode)
21- `EL3 payload`_ boot flow
22- `Secure partition`_ support
23
24These tests are not a compliance test suite for the Arm interface standards used
25in TF-A (such as PSCI).
26
27They do not cover 100% of the TF-A code. The fact that all tests pass does not
28mean that TF-A is free of bugs.
29
30They are not reference code. They should not be considered as the official way
31to test hardware/firmware features. Instead, they are provided as example code
32to experiment with and improve on.
33
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020034More Info and Documentation
35---------------------------
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020036
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020037To find out more about Trusted Firmware-A Tests, please
38`view the full documentation`_ that is available through `trustedfirmware.org`_.
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020039
40--------------
41
42*Copyright (c) 2018-2020, Arm Limited. All rights reserved.*
43
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020044.. _Power State Coordination Interface (PSCI): PSCI_
45.. _PSCI: http://infocenter.arm.com/help/topic/com.arm.doc.den0022d/Power_State_Coordination_Interface_PDD_v1_1_DEN0022D.pdf
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020046
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020047.. _Software Delegated Exception Interface (SDEI): SDEI_
48.. _SDEI: http://infocenter.arm.com/help/topic/com.arm.doc.den0054a/ARM_DEN0054A_Software_Delegated_Exception_Interface.pdf
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020049
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020050.. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020051
52.. _Trusted Firmware-A (TF-A): TF-A_
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020053.. _TF-A: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
Sandrine Bailleuxf6ee8fb2020-04-22 12:09:36 +020054
Sandrine Bailleuxd079ea72020-04-28 12:28:27 +020055.. _Test Secure Payload (TSP): TSP_
56.. _TSP: https://trustedfirmware-a.readthedocs.io/en/latest/perf/tsp.html
57
58.. _Performance Measurement Framework (PMF): PMF_
59.. _PMF: https://trustedfirmware-a.readthedocs.io/en/latest/design/firmware-design.html#performance-measurement-framework
60
61.. _Firmware update: https://trustedfirmware-a.readthedocs.io/en/latest/components/firmware-update.html
62.. _EL3 payload: https://trustedfirmware-a.readthedocs.io/en/latest/design/alt-boot-flows.html#el3-payloads-alternative-boot-flow
63.. _Secure partition: https://trustedfirmware-a.readthedocs.io/en/latest/components/secure-partition-manager-design.html
64
65.. _view the full documentation: https://trustedfirmware-a-tests.readthedocs.io/
66.. _trustedfirmware.org: http://www.trustedfirmware.org