Skip to content

ARM-software/CMSIS-RTOS2_Validation

Repository files navigation

CMSIS-RTOS2 Validation

This repository contains a test suite that validates CMSIS-RTOS2 implementations. It uses Arm Virtual Hardware to run a CI/CD flow to verify correct operation of the real-time operating systems (RTOS) under test on various Arm Cortex-M based processors.

Arm Virtual Hardware provides simulation models, software tooling, and infrastructure that can be integrated into CI/CD and MLOps development flows. The simulation models (called Arm Virtual Hardware Targets) are an implementation of a Cortex-M device sub-systems and are designed for complex software verification and testing. This allows simulation-based test automation of various software workloads, including unit tests, integration tests, and fault injection. Refer to the Arm Virtual Hardware documentation for more information.

Repository structure

Directory Contents
.github/workflows Workflow YML files for running the test suite and for creating the documentation.
Doxygen Doxygen input files for creating the documentation.
Include Include files for test cases etc.
Layer Layers for creating the projects.
Project An example project that shows unit testing.
Script Various shell scripts.
Source Test case source code.

Test matrix

Currently, the following tests are executed in the CMSIS_RV2 workflow:

RTOS Device Compiler
FreeRTOS ARMCM0P AC6, GCC, CLANG
FreeRTOS ARMCM3 AC6, GCC, CLANG
FreeRTOS ARMCM4 AC6, GCC, CLANG
FreeRTOS ARMCM7 AC6, GCC, CLANG
FreeRTOS ARMCM23 AC6, GCC, CLANG
FreeRTOS ARMCM33 AC6, GCC, CLANG
FreeRTOS ARMCM55 AC6, GCC, CLANG
FreeRTOS ARMCM85 AC6, GCC, CLANG
RTX5 ARMCM0P AC6, GCC, CLANG
RTX5 ARMCM3 AC6, GCC, CLANG
RTX5 ARMCM4 AC6, GCC, CLANG
RTX5 ARMCM7 AC6, GCC, CLANG
RTX5 ARMCM23 AC6, GCC, CLANG
RTX5 ARMCM33 AC6, GCC, CLANG
RTX5 ARMCM55 AC6, GCC, CLANG
RTX5 ARMCM85 AC6, GCC, CLANG

License

License