mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-12-07 05:34:59 -05:00
ARMv7-R MPU Port Demos (#1149)
* Add in a Cortex R5F MPU demo for the Hercules RM57 Development Kit. * Add in a Cortex R4F MPU demo for the Hercules RM46 Development Kit. * Provide a Code Composer Studio (CCS) project for running these demos. * Provide a CMakeLists.txt file to allow for compilation of the demos without use of an IDE. * Add a CI-CD build of these demos using CMake with Fetch-Content. * Include necessary README to explain the new demos. ---------
This commit is contained in:
parent
8517050490
commit
273fb94328
290 changed files with 139904 additions and 0 deletions
6
.github/scripts/core_checker.py
vendored
6
.github/scripts/core_checker.py
vendored
|
|
@ -44,8 +44,10 @@ FREERTOS_IGNORED_EXTENSIONS = [
|
|||
'.cfg',
|
||||
'.cgp',
|
||||
'.checksum',
|
||||
'.clang-format',
|
||||
'.cmake',
|
||||
'.cmd',
|
||||
'.code-workspace',
|
||||
'.config',
|
||||
'.cpp',
|
||||
'.cproj',
|
||||
|
|
@ -303,6 +305,8 @@ FREERTOS_IGNORED_PATTERNS = [
|
|||
r'FreeRTOS/Demo/CORTEX_STM32L152_Discovery_IAR/include/.*',
|
||||
r'FreeRTOS/Demo/CORTEX_M0_Infineon_XMC1000_IAR_Keil_GCC/.*',
|
||||
r'FreeRTOS/Demo/CORTEX_M4F_Infineon_XMC4000_Keil/.*',
|
||||
r'FreeRTOS/Demo/CORTEX_MPU_R4F_TI_RM46_HERCULES_GCC/BoardFiles/.*',
|
||||
r'FreeRTOS/Demo/CORTEX_MPU_R5F_TI_RM57_HERCULES_GCC/BoardFiles/.*',
|
||||
r'FreeRTOS/Demo/AVR_ATMega4809_Atmel_Studio/RTOSDemo/.*',
|
||||
r'FreeRTOS/Demo/AVR32_UC3/.*',
|
||||
r'FreeRTOS/Demo/AVR_ATMega4809_IAR/.*',
|
||||
|
|
@ -331,6 +335,8 @@ FREERTOS_IGNORED_PATTERNS = [
|
|||
|
||||
FREERTOS_IGNORED_FILES = [
|
||||
'cspell.config.yaml',
|
||||
'.ccsproject',
|
||||
'.clang-format',
|
||||
'.cproject',
|
||||
'.project',
|
||||
'requirements.txt',
|
||||
|
|
|
|||
119
.github/workflows/freertos_mpu_demo.yml
vendored
Normal file
119
.github/workflows/freertos_mpu_demo.yml
vendored
Normal file
|
|
@ -0,0 +1,119 @@
|
|||
name: FreeRTOS MPU Demo
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
bashPass: \033[32;1mPASSED -
|
||||
bashInfo: \033[33;1mINFO -
|
||||
bashFail: \033[31;1mFAILED -
|
||||
bashEnd: \033[0m
|
||||
|
||||
jobs:
|
||||
Cortex-R4:
|
||||
name: Texas Instruments RM46
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- env:
|
||||
stepName: Checkout Repository
|
||||
name: ${{ env.stepName }}
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
submodules: false
|
||||
|
||||
- env:
|
||||
stepName: Install GNU ARM Toolchain
|
||||
name: Install GNU ARM Toolchain
|
||||
shell: bash
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group::${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
sudo apt-get -y update
|
||||
sudo apt-get -y install gcc-arm-none-eabi build-essential cmake git ninja-build python3-minimal
|
||||
echo -e "::endgroup::"
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
|
||||
- env:
|
||||
stepName: Build CORTEX R4 MPU Demo
|
||||
name: ${{ env.stepName }}
|
||||
shell: bash
|
||||
working-directory: FreeRTOS/Demo/CORTEX_MPU_R4F_TI_RM46_HERCULES_GCC
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group::${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
set +e
|
||||
cmake -S . -B build;
|
||||
make -C build all;
|
||||
exitStatus=$?
|
||||
set -e
|
||||
echo -e "::endgroup::"
|
||||
if [ $exitStatus -eq 0 ]; then
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
else
|
||||
echo -e "${{ env.bashFail }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Cortex-R5:
|
||||
name: Texas Instruments RM57
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- env:
|
||||
stepName: Checkout Repository
|
||||
name: ${{ env.stepName }}
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
submodules: false
|
||||
|
||||
- env:
|
||||
stepName: Install GNU ARM Toolchain
|
||||
name: Install GNU ARM Toolchain
|
||||
shell: bash
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group::${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
sudo apt-get -y update
|
||||
sudo apt-get -y install gcc-arm-none-eabi build-essential cmake git ninja-build python3-minimal
|
||||
echo -e "::endgroup::"
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
|
||||
- env:
|
||||
stepName: Fetch Kernel Submodule
|
||||
name: ${{ env.stepName }}
|
||||
shell: bash
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group:: ${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
set +e
|
||||
git submodule update --checkout --init --depth 1 FreeRTOS/Source FreeRTOS/Demo/ThirdParty/Community-Supported-Demos
|
||||
exitStatus=$?
|
||||
set -e
|
||||
echo -e "::endgroup::"
|
||||
if [ $exitStatus -eq 0 ]; then
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
else
|
||||
echo -e "${{ env.bashFail }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- env:
|
||||
stepName: Build CORTEX R5 MPU Demo
|
||||
name: ${{ env.stepName }}
|
||||
shell: bash
|
||||
working-directory: FreeRTOS/Demo/CORTEX_MPU_R5F_TI_RM57_HERCULES_GCC
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group::${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
set +e
|
||||
cmake -S . -B build;
|
||||
make -C build all;
|
||||
exitStatus=$?
|
||||
set -e
|
||||
echo -e "::endgroup::"
|
||||
if [ $exitStatus -eq 0 ]; then
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
else
|
||||
echo -e "${{ env.bashFail }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
exit 1
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue