CMSIS TF-M Packs
This repository contains tools and data to create TF-M CMSIS-Packs.
Prerequisites
- bash compatible shell (under Windows, use for example git bash)
- Git
- 7-Zip
- Python v3.6 or later with pip package manager
- Doxygen v1.8.0 or later (for building documentation)
- Graphviz v2.38.0 or later (for building documentation)
- PlantUML v1.2018.11 or later in PLANTUML_JAR_PATH (for building documentation)
- Java runtime environment 1.8 or later (for running PlantUML)
- CMSIS Pack installed in CMSIS_PACK_ROOT (for PackChk utility)
- xmllint in path (XML schema validation; available only for Linux)
Create packs
- Open a bash compatible shell
- Run
./setup.sh
script. The script will:- install the required python packages
- clone the trusted-firmware-m repository
- clone the tf-m-tests repository
- clone the mcuboot repository
- merge mcuboot into trusted-firmware-m
- apply patches for trusted-firmware-m
- apply patches for tf-m-tests
- generate template based files
- setup tf-m-tests (copy/move files from trusted-firmware-m)
- merge addon files for trusted-firmware-m
- merge addon files for tf-m-tests
- Generate TF-M documentation:
- setup path variable for PlantUML:
export PLANTUML_JAR_PATH=<plantuml_Path>/plantuml.jar
- run
gen_doc.sh
script
- Generate CMSIS-Packs:
- TFM:
- go to
./trusted-firmware-m
directory - run
gen_pack.sh
script - generated pack is available in the
output
directory
- TFM-Test:
- go to
./tf-m-tests
directory - run
gen_pack.sh
script - generated pack is available in the
output
directory
- V2M-MPS2_SSE_200_TFM-PF (TF-M Platform support for MPS2):
- run
setup_mps2.sh
script - go to
./tf-m-platform-mps2
directory - run
gen_pack.sh
script - generated pack is available in the
output
directory - note: this pack should not be published and used only for testing TF-M
- Run
./clean.sh
script to delete all intermediate and generated files
Copyright (c) 2021, Arm Limited. All rights reserved.