Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Open Source Software and Platforms
Open Source Software and Platforms
Wiki TF-M Musca Regression Test
  • Help
  • Jump...
  • Cancel
  • About this wiki
  • Supported platforms
  • Obtaining support
  • +Arm Reference Platforms deliverables
  • +A-class platforms
  • -M-class platforms
    • -IoT Subsystems
      • Corstone-300 Platforms
      • +Beetle development board
      • -Musca development boards
        • Musca Platforms Links & Resources
        • -Musca-A development board
          • Musca-A Links and Resources
          • Musca-A Frequently Asked Questions
          • Musca-A Power Rail Information
          • Drag & Drop issues on Musca-A boards
          • Musca-A Firmware update & QSPI / Boot recovery
          • Keil Support for Musca-A
          • -Musca-A Software Examples
            • TF-M Musca Demo
            • TF-M Musca Regression Test
            • Musca-A Secure/Non-secure Blinky example
            • Musca-A MHU Doorbell example
        • +Musca-B1 development board
        • +Musca-S1 development board
        • Configuring S/NS Memory in an Armv8-M System
  • +R-class platforms
  • +FPGA prototyping boards
  • +Open source software

You are currently reviewing an older revision of this page.

  • History View current version

TF-M Musca Regression Test

This example is based on Trusted Firmware-M project's 'Regression Configuration'.  It is supplied by the Keil Musca TF-M Middleware pack v1.0.1 and requires the Keil Musca BSP version 2.0.0. Note: These examples are not available in later versions of the Trusted Firmware-M pack.

The example consist of 4 projects. Two projects provide the secure and the non-secure images to be run on the board.
Two other projects provide secure services libraries (Audit Log, Secure Storage) utilised by the Secure image.

In order to build or load a project it needs to be set as the active project in Keil.


To compile this example correctly the secure services needs to be compiled first as libraries, then the secure project as a binary,  finally the non-secure.
As a result of the secure build an object file with the veneers is generated which is then linked to the non-secure image.

To run the example on the Musca board you need to load both the secure and non-secure images onto the board.
From the 2 relevant projects just click on the Load icon to load the image. It does not matter which image is loaded first.

TF-M core and secure services are tested by this example.

The results are printed to the serial port:
UART1 serial port (connected in USB port) at 115200 baudrate (8N1).