Skip to content
This repository was archived by the owner on Mar 3, 2025. It is now read-only.

✨ Add CI for verifying whether the project is CMSIS Compliant #1

Merged
merged 4 commits into from
Jun 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions .github/workflows/verify-example1_cm4_mps2_an386.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example1_cm4_mps2_an386:
name: Verify CMSIS Compliance example1_cm4_mps2_an386
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example1_cm4_mps2_an386
with:
branch: ${{ github.ref }}
project-file: ./example1_cm4_mps2_an386/blink.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example1_cm4_mps2_an386
23 changes: 23 additions & 0 deletions .github/workflows/verify-example1_cm55_mps3_an552.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example1_cm55_mps3_an552:
name: Verify CMSIS Compliance example1_cm55_mps3_an552
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example2_cm4_mps2_an386
with:
branch: ${{ github.ref }}
project-file: ./example1_cm55_mps3_an552/blink.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example1_cm55_mps3_an552
23 changes: 23 additions & 0 deletions .github/workflows/verify-example2_cm4_mps2_an386.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example2_cm4_mps2_an386:
name: Verify CMSIS Compliance example2_cm4_mps2_an386
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example2_cm4_mps2_an386
with:
branch: ${{ github.ref }}
project-file: ./example2_cm4_mps2_an386/hello.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example2_cm4_mps2_an386
23 changes: 23 additions & 0 deletions .github/workflows/verify-example2_cm55_mps3_an552.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example2_cm55_mps3_an552:
name: Verify CMSIS Compliance example2_cm55_mps3_an552
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example2_cm55_mps3_an552
with:
branch: ${{ github.ref }}
project-file: ./example2_cm55_mps3_an552/hello.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example2_cm55_mps3_an552
23 changes: 23 additions & 0 deletions .github/workflows/verify-example3_cm4_mps2_an386.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example3_cm4_mps2_an386:
name: Verify CMSIS Compliance example3_cm4_mps2_an386
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example3_cm4_mps2_an386
with:
branch: ${{ github.ref }}
project-file: ./example3_cm4_mps2_an386/coremark.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example3_cm4_mps2_an386
23 changes: 23 additions & 0 deletions .github/workflows/verify-example4_mps2_multi_devices.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example4_mps2_multi_devices:
name: Verify CMSIS Compliance example4_mps2_multi_devices
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example4_mps2_multi_devices
with:
branch: ${{ github.ref }}
project-file: ./example4_mps2_multi_devices/coremark.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example4_mps2_multi_devices
23 changes: 23 additions & 0 deletions .github/workflows/verify-example5_multi_projects.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Verify CMSIS Compliance

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 6 * * 0'

jobs:
verify-cmsis-compliance-example5_multi_projects:
name: Verify CMSIS Compliance example5_multi_projects
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Arm-Examples/verify-cmsis-example-action@latest
name: Verify CMSIS Compliance example5_multi_projects
with:
branch: ${{ github.ref }}
project-file: ./example5_multi_projects/coremark-pro.csolution.yml
API_TOKEN: ${{ secrets.CMSIS_API_KEY }}
output-artifact: output-example5_multi_projects
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,15 @@ After installing the tools, you need to setup a local CMSIS-PACK storage locatio
This repository contains the following examples:

- Example 1: A minimal blinky project
- example1_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386)
- example1_cm55_mps3_an552 : For MPS3 with Cortex-M55 FPGA image (AN552)
- example1_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example1_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- example1_cm55_mps3_an552 : For MPS3 with Cortex-M55 FPGA image (AN552) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example1_cm55_mps3_an552.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- Example 2: Hello world based on CMSIS-Compiler, with printf message(s) output via a UART interface.
- example2_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386)
- example2_cm55_mps3_an552 : For MPS3 with Cortex-M55 FPGA image (AN552)
- example2_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example2_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- example2_cm55_mps3_an552 : For MPS3 with Cortex-M55 FPGA image (AN552) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example2_cm55_mps3_an552.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- Example 3: Compilation of the SPEC's CoreMark benchmark to demonstrate compiler options and linker script setup.
- example3_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386)
- example3_cm4_mps2_an386 : For MPS2/MPS2+ with Cortex-M4 FPGA image (AN386) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example3_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- Example 4: A modified version of the example 3 to support multiple types of FPGA images.
- example4_mps2_multi_devices : For MPS2/MPS2+ and MPS3 FPGA images including:
- example4_mps2_multi_devices : For MPS2/MPS2+ and MPS3 FPGA images including: [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example4_mps2_multi_devices.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)
- AN382: [MPS2/MPS2+] Cortex-M0 with CMSDK (Cortex-M System Design Kit)
- AN383: [MPS2/MPS2+] Cortex-M0+ with CMSDK (Cortex-M System Design Kit)
- AN385: [MPS2/MPS2+] Cortex-M3 with CMSDK (Cortex-M System Design Kit)
Expand All @@ -75,7 +75,7 @@ This repository contains the following examples:
- AN552: [MPS3] Cortex-M55 with Corstone-300
- AN555: [MPS3] Cortex-M85 with Corstone-310
- Example 5: Compilation of the SPEC's CoreMark-Pro benchmark to demonstrate multiple projects in a CMSIS solution, as well as using clayer.
- example5_multi_projects : For MPS2/MPS2+ with Cortex-M7 FPGA image (AN500)
- example5_multi_projects : For MPS2/MPS2+ with Cortex-M7 FPGA image (AN500) [![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example5_multi_projects.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

In each of the example directories, there is a makefile and a batch file to help you to go through different steps.

Expand Down
1 change: 1 addition & 0 deletions example1_cm4_mps2_an386/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Blinky example for Cortex-M4 running on Arm MPS2/MPS2+ FPGA board (AN386 FPGA image)
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example1_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Documentation related to the system

Expand Down
1 change: 1 addition & 0 deletions example1_cm55_mps3_an552/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Blinky example for Cortex-M55 running on Arm MPS3 FPGA board (AN552 FPGA image)
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example1_cm55_mps3_an552.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Documentation related to the system

Expand Down
1 change: 1 addition & 0 deletions example2_cm4_mps2_an386/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Hello world example for Cortex-M4 running on Arm MPS2/MPS2+ FPGA board (AN386 FPGA image)
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example2_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Descriptions

Expand Down
1 change: 1 addition & 0 deletions example2_cm55_mps3_an552/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Hello world example for Cortex-M55 running on Arm MPS3 FPGA board (AN552 FPGA image)
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example2_cm55_mps3_an552.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Descriptions

Expand Down
1 change: 1 addition & 0 deletions example3_cm4_mps2_an386/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# CoreMark example for Cortex-M4 running on Arm MPS2/MPS2+ FPGA board (AN386 FPGA image)
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example3_cm4_mps2_an386.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Descriptions

Expand Down
1 change: 1 addition & 0 deletions example4_mps2_multi_devices/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# CoreMark example for Cortex-M running on Arm MPS2/MPS2+ FPGA board
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example4_mps2_multi_devices.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Descriptions

Expand Down
1 change: 1 addition & 0 deletions example5_multi_projects/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# CoreMark-Pro example for Cortex-M running on Arm MPS2/MPS2+ FPGA board
[![CMSIS Compliance](https://img.shields.io/github/actions/workflow/status/Arm-Examples/EW2024_CMSIS-Toolbox/verify-example5_multi_projects.yml?logo=arm&logoColor=0091bd&label=CMSIS%20Compliance)](https://www.keil.arm.com/cmsis)

## Descriptions

Expand Down