Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Flavio Ceolin 8caef68264 samples: tfm_psa_test: Set TFM_PROFILE 2 weeks ago
..
src samples: tfm_psa_test: Adapt to TF-M split build 1 year ago
CMakeLists.txt modules: tf-m: restore check on CONFIG_TFM_PARTITION_INITIAL_ATTESTATION 1 year ago
README.rst samples: tfm_integration: use zephyr:code-sample directive 10 months ago
prj.conf samples: tfm_psa_test: Set TFM_PROFILE 2 weeks ago
sample.yaml samples: tfm_integration: Update regression test dependencies 6 months ago

README.rst

.. _tfm_psa_test:

TF-M Platform Security Architecture Test Sample
###############################################

Overview
********

Run PSA test suites tests with Zephyr and TFM.

The PSA tests are implemented in the psa-arch-tests repo: https://github.com/ARM-software/psa-arch-tests

This sample is supported for platforms that have a port in psa-arch-tests.
See sample.yaml for a list of supported platforms.

Building and Running
********************

You must choose a suite via the CONFIG_TFM_PSA_TEST_* configs.

Only one of these suites can be run at a time, with the test suite set via one
of the following kconfig options:

* ``CONFIG_TFM_PSA_TEST_CRYPTO``
* ``CONFIG_TFM_PSA_TEST_PROTECTED_STORAGE``
* ``CONFIG_TFM_PSA_TEST_INTERNAL_TRUSTED_STORAGE``
* ``CONFIG_TFM_PSA_TEST_STORAGE``
* ``CONFIG_TFM_PSA_TEST_INITIAL_ATTESTATION``

You can indicate the desired test suite at build time via a config flag:

.. code-block:: bash

$ west build samples/tfm_integration/tfm_psa_test/ \
-p -b mps2/an521/cpu0/ns -t run -- \
-DCONFIG_TFM_PSA_TEST_STORAGE=y

Note that not all test suites are valid on all boards.

On Target
=========

Refer to :zephyr:code-sample:`tfm_ipc` for detailed instructions.

On QEMU:
========

Refer to :zephyr:code-sample:`tfm_ipc` for detailed instructions.
Following is an example based on ``west build``

.. code-block:: bash

$ west build samples/tfm_integration/tfm_psa_test/ -p -b mps2/an521/cpu0/ns -t run -- -DCONFIG_TFM_PSA_TEST_STORAGE=y

Sample Output
=============

.. code-block:: console

*** Booting Zephyr OS build zephyr-v2.5.0-456-g06f4da459a99 ***

***** PSA Architecture Test Suite - Version 1.0 *****

Running.. Storage Suite
******************************************

TEST: 401 | DESCRIPTION: UID not found check
[Info] Executing tests from non-secure

[Info] Executing ITS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

[Info] Executing PS tests
[Check 1] Call get API for UID 6 which is not set
[Check 2] Call get_info API for UID 6 which is not set
[Check 3] Call remove API for UID 6 which is not set
[Check 4] Call get API for UID 6 which is removed
[Check 5] Call get_info API for UID 6 which is removed
[Check 6] Call remove API for UID 6 which is removed
Set storage for UID 6
[Check 7] Call get API for different UID 5
[Check 8] Call get_info API for different UID 5
[Check 9] Call remove API for different UID 5

TEST RESULT: PASSED

******************************************

[...]

TEST: 417 | DESCRIPTION: Storage assest capacity modification check
[Info] Executing tests from non-secure

[Info] Executing PS tests
Test Case skipped as Optional PS APIs not are supported.

TEST RESULT: SKIPPED (Skip Code=0x0000002B)

******************************************

************ Storage Suite Report **********
TOTAL TESTS : 17
TOTAL PASSED : 11
TOTAL SIM ERROR : 0
TOTAL FAILED : 0
TOTAL SKIPPED : 6
******************************************

Entering standby..