1.. _tfm_integration-samples:
2
3TF-M Integration Samples
4########################
5
6.. toctree::
7   :maxdepth: 1
8   :glob:
9
10   */*
11
12Trusted Firmware-M (TF-M)
13#########################
14
15Overview
16********
17These TF-M integration examples can be used with a supported Armv8-M board, and
18demonstrate how the TF-M APIs can be used with Zephyr.
19
20Trusted Firmware Platform Security Architecture (PSA) APIs are used for the
21secure processing environment (S), with Zephyr running in the non-secure
22processing environment (NS).
23
24As part of the standard build process, the secure bootloader (BL2) is normally
25built, in addition to the TF-M S and Zephyr NS binary images. The S and NS
26images are then merged and signed using the private signing keys, whose public
27key values are stored in the secure bootloader. This allows the application
28images to be verified and either accepted or rejected during the image
29verification process at startup, based on a pair of private keys that you
30control.
31
32What is Trusted Firmware-M (TF-M)?
33**********************************
34
35Trusted Firmware-M (TF-M) is the reference implementation of `Platform Security
36Architecture (PSA) <https://pages.arm.com/psa-resources.html>`_.
37
38TF-M provides a highly configurable set of software components to create a
39Trusted Execution Environment. This is achieved by a set of secure run time
40services such as Secure Storage, Cryptography, Audit Logs and Attestation.
41Additionally, secure boot in TF-M ensures integrity of run time software and
42supports firmware upgrade.
43
44The current TF-M implementation specifically targets TrustZone for ARMv8-M.
45
46Trusted Firmware-M source code is available at
47`git.trustedfirmware.org <https://git.trustedfirmware.org>`_, although a fork
48of this source code is maintained by the Zephyr Project as a module for
49convenience sake at
50`<https://github.com/zephyrproject-rtos/trusted-firmware-m>`_.
51
52For further information consult the official `TF-M documentation`_
53
54.. _TF-M documentation:
55   https://tf-m-user-guide.trustedfirmware.org/
56