Skip to content

Commit 1f5e62d

Browse files
committed
Document more TF-M configurations
Add documentation for more TF-M-related configurations: * TF-M version supported * Support for TF-M bootloader and two image slots * post binary hooks
1 parent fca2f44 commit 1f5e62d

File tree

1 file changed

+24
-2
lines changed

1 file changed

+24
-2
lines changed

docs/porting/security/psa_targets_in_mbed-os.md

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -171,8 +171,14 @@ An Mbed OS (NSPE) target must contain the following attributes (in addition to o
171171

172172
* `inherits`: PSA generic target `PSA_DUAL_CORE`, unless the target has to inherit
173173
from one of its family targets.
174+
* `extra_labels`: `TARGET_`[label] paths to enable.
175+
* `TFM_LATEST`: If the latest release of TF-M is supported by the target.
176+
* `TFM_V`[major]`_`[minor]: If a legacy release of TF-M supported.
177+
* `macros_add`: C/C++ macros that are globally set during compilation.
178+
* `BL2`: If the TF-M bootloader is supported by the target.
179+
* `MCUBOOT_IMAGE_NUMBER=2`: If the secure and non-secure images are in two separate bootloader slots.
174180
* `tfm_target_name`: Target name in TF-M.
175-
* `tfm_bootloader_supported`: If TF-M bootloader is supported by the target.
181+
* `tfm_bootloader_supported`: If the TF-M bootloader is supported by the target.
176182

177183
The supported values are `true` and `false`.
178184
* `tfm_supported_toolchains`: Supported TF-M toolchains.
@@ -183,6 +189,11 @@ An Mbed OS (NSPE) target must contain the following attributes (in addition to o
183189
The supported values are `ARMCLANG` and `GNUARM`.
184190
* `tfm_delivery_dir`: The directory to which TF-M binaries will be copied.
185191
* `TFM_OUTPUT_EXT`: Optional attribute that indicates the output extension of the TF-M secure binary.
192+
* `post_binary_hook`:
193+
* `function`: The target's post binary hook ([class].[method]) in `tools/targets/__init__.py` for image signing, required if the TF-M bootloader support is supported.
194+
* `secure_image_filename`: The file name of the TF-M secure binary, to be signed by the post binary hook.
195+
196+
**Note**: When `inherits` is used, some of attributes are set by the PSA generic target.
186197

187198
The following example shows a PSA enabled dual-core target, `PSoC64`:
188199

@@ -272,8 +283,14 @@ and [porting targets](../porting/porting-the-hal-apis.html)):
272283

273284
* `inherits`: PSA generic target `PSA_V8_M`, unless the target has to inherit from
274285
one of its family targets.
286+
* `extra_labels`: `TARGET_`[label] paths to enable.
287+
* `TFM_LATEST`: If the latest release of TF-M is supported by the target.
288+
* `TFM_V`[major]`_`[minor]: If a legacy release of TF-M supported.
289+
* `macros_add`: C/C++ macros that are globally set during compilation.
290+
* `BL2`: If the TF-M bootloader is supported by the target.
291+
* `MCUBOOT_IMAGE_NUMBER=2`: If the secure and non-secure images are in two separate bootloader slots.
275292
* `tfm_target_name`: Target name in TF-M.
276-
* `tfm_bootloader_supported`: If TF-M bootloader is supported by the target.
293+
* `tfm_bootloader_supported`: If the TF-M bootloader is supported by the target.
277294

278295
The supported values are `true` and `false`.
279296
* `tfm_supported_toolchains`: Supported TF-M toolchains.
@@ -285,6 +302,11 @@ and [porting targets](../porting/porting-the-hal-apis.html)):
285302

286303
* `tfm_delivery_dir`: The directory to which TF-M binary will be copied.
287304
* `TFM_OUTPUT_EXT`: Optional attribute that indicates the output extension of the TF-M secure binary.
305+
* `post_binary_hook`:
306+
* `function`: The target's post binary hook ([class].[method]) in `tools/targets/__init__.py` for image signing, required if the TF-M bootloader support is supported.
307+
* `secure_image_filename`: The file name of the TF-M secure binary, to be signed by the post binary hook.
308+
309+
**Note**: When `inherits` is used, some of attributes are set by the PSA generic target.
288310

289311
The following example shows a PSA-enabled Armv8-M PSA target, `ARM_MUSCA_A1`:
290312

0 commit comments

Comments
 (0)