mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-12-10 13:45:07 -05:00
Update Cortex R4F and Cortex R5F MPU Demos (#1200)
* Set configUSE_EVENT_GROUPS to 0 in the CORTEX_MPU_R4/5F Demos. * Update the FreeRTOS-Kernel submodule to use the latest FreeRTOS-Kernel.
This commit is contained in:
parent
076430b2ab
commit
4592acca4c
9 changed files with 53 additions and 97 deletions
102
.github/workflows/freertos_mpu_demo.yml
vendored
102
.github/workflows/freertos_mpu_demo.yml
vendored
|
|
@ -11,8 +11,8 @@ env:
|
|||
bashEnd: \033[0m
|
||||
|
||||
jobs:
|
||||
Cortex-R4:
|
||||
name: Texas Instruments RM46
|
||||
Cortex-Rx-MPU-Demos:
|
||||
name: TI-Hercules RM46 and RM57 MPU Demos
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- env:
|
||||
|
|
@ -20,7 +20,17 @@ jobs:
|
|||
name: ${{ env.stepName }}
|
||||
uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
submodules: false
|
||||
submodules: true
|
||||
|
||||
- env:
|
||||
stepName: Fetch FreeRTOS-Kernel
|
||||
name: ${{ env.stepName }}
|
||||
shell: bash
|
||||
run: |
|
||||
# ${{ env.stepName }}
|
||||
echo -e "::group::${{ env.bashInfo }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
git submodule update --checkout --init --depth 1 FreeRTOS/Source
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
|
||||
- env:
|
||||
stepName: Install GNU ARM Toolchain
|
||||
|
|
@ -34,6 +44,18 @@ jobs:
|
|||
echo -e "::endgroup::"
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
|
||||
- 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 }}"
|
||||
cmake -S . -B build && make -j -C build all
|
||||
echo -e "::endgroup::"
|
||||
echo -e "${{ env.bashPass }} ${{ env.stepName }} ${{ env.bashEnd }}"
|
||||
|
||||
- env:
|
||||
stepName: Build CORTEX R4 MPU Demo
|
||||
name: ${{ env.stepName }}
|
||||
|
|
@ -42,78 +64,6 @@ jobs:
|
|||
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
|
||||
cmake -S . -B build && make -j -C build all
|
||||
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
|
||||
|
|
|
|||
|
|
@ -50,19 +50,22 @@ INCLUDE(FetchContent)
|
|||
FetchContent_Declare(
|
||||
FreeRTOS-Kernel
|
||||
GIT_REPOSITORY https://github.com/FreeRTOS/FreeRTOS-Kernel.git
|
||||
GIT_TAG main
|
||||
# Last tested FreeRTOS-Kernel Commit
|
||||
GIT_TAG e8289dfee6e00660b5ad028e9f931ffb76c95840
|
||||
SOURCE_DIR "${DEMO_DIR}/../../Source"
|
||||
USES_TERMINAL_DOWNLOAD YES
|
||||
USES_TERMINAL_UPDATE YES
|
||||
BUILD_COMMAND "")
|
||||
BUILD_COMMAND ""
|
||||
)
|
||||
|
||||
FetchContent_GetProperties(FreeRTOS-Kernel)
|
||||
if(NOT FreeRTOS-Kernel_POPULATED)
|
||||
FetchContent_Populate(FreeRTOS-Kernel)
|
||||
endif()
|
||||
# Uncomment the following lines to use Fetch-Content to clone Kernel.
|
||||
# FetchContent_GetProperties(FreeRTOS-Kernel)
|
||||
# if(NOT FreeRTOS-Kernel_POPULATED)
|
||||
# FetchContent_Populate(FreeRTOS-Kernel)
|
||||
# endif()
|
||||
|
||||
# Get the absolute path to the FreeRTOS-Kernel Directory
|
||||
SET(FREERTOS_KERNEL_DIR_REL "${freertos-kernel_SOURCE_DIR}")
|
||||
SET(FREERTOS_KERNEL_DIR_REL "${DEMO_DIR}/../../Source")
|
||||
GET_FILENAME_COMPONENT(FREERTOS_KERNEL_DIR ${FREERTOS_KERNEL_DIR_REL} ABSOLUTE)
|
||||
|
||||
# Get the absolute path to the Port Directory
|
||||
|
|
|
|||
|
|
@ -97,6 +97,7 @@ extern void vMainSetupTimerInterrupt( void );
|
|||
#define configUSE_CO_ROUTINES 0
|
||||
#define configUSE_MUTEXES 1U
|
||||
#define configUSE_RECURSIVE_MUTEXES 1U
|
||||
#define configUSE_EVENT_GROUPS 0U
|
||||
#define configCHECK_FOR_STACK_OVERFLOW 0
|
||||
#define configUSE_QUEUE_SETS 1U
|
||||
#define configUSE_COUNTING_SEMAPHORES 1U
|
||||
|
|
|
|||
|
|
@ -100,8 +100,7 @@
|
|||
#define demoIRQ_TASK_PRIORITY ( configTIMER_TASK_PRIORITY + 2UL )
|
||||
|
||||
/** @brief Priority at which the Notification Demo Task is created. */
|
||||
#define demoNOTIFICATION_TASK_PRIORITY \
|
||||
( configTIMER_TASK_PRIORITY + 1UL ) | portPRIVILEGE_BIT
|
||||
#define demoNOTIFICATION_TASK_PRIORITY ( configTIMER_TASK_PRIORITY + 1UL )
|
||||
|
||||
/* ------------------------------- Register Test Tasks ------------------------------- */
|
||||
|
||||
|
|
@ -173,7 +172,6 @@ PRIVILEGED_FUNCTION void vIRQDemoHandler( void );
|
|||
#define portRTI_INTFLAG_REG ( *( ( volatile uint32_t * ) 0xFFFFFC88UL ) )
|
||||
#define portEND_OF_INTERRUPT_REG ( ( ( volatile uint32_t * ) configEOI_ADDRESS ) )
|
||||
|
||||
|
||||
/* Registers used by the Vectored Interrupt Manager */
|
||||
typedef void ( *ISRFunction_t )( void );
|
||||
#define portVIM_IRQ_INDEX ( *( ( volatile uint32_t * ) 0xFFFFFE00 ) )
|
||||
|
|
|
|||
|
|
@ -50,19 +50,23 @@ INCLUDE(FetchContent)
|
|||
FetchContent_Declare(
|
||||
FreeRTOS-Kernel
|
||||
GIT_REPOSITORY https://github.com/FreeRTOS/FreeRTOS-Kernel.git
|
||||
GIT_TAG main
|
||||
# Last tested FreeRTOS-Kernel Commit
|
||||
GIT_TAG e8289dfee6e00660b5ad028e9f931ffb76c95840
|
||||
SOURCE_DIR "${DEMO_DIR}/../../Source"
|
||||
USES_TERMINAL_DOWNLOAD YES
|
||||
USES_TERMINAL_UPDATE YES
|
||||
BUILD_COMMAND "")
|
||||
BUILD_COMMAND ""
|
||||
)
|
||||
|
||||
# Uncomment the following lines to use Fetch-Content to clone Kernel.
|
||||
# FetchContent_GetProperties(FreeRTOS-Kernel)
|
||||
# if(NOT FreeRTOS-Kernel_POPULATED)
|
||||
# FetchContent_Populate(FreeRTOS-Kernel)
|
||||
# endif()
|
||||
|
||||
FetchContent_GetProperties(FreeRTOS-Kernel)
|
||||
if(NOT FreeRTOS-Kernel_POPULATED)
|
||||
FetchContent_Populate(FreeRTOS-Kernel)
|
||||
endif()
|
||||
|
||||
# Get the absolute path to the FreeRTOS-Kernel Directory
|
||||
SET(FREERTOS_KERNEL_DIR_REL "${freertos-kernel_SOURCE_DIR}")
|
||||
SET(FREERTOS_KERNEL_DIR_REL "${DEMO_DIR}/../../Source")
|
||||
GET_FILENAME_COMPONENT(FREERTOS_KERNEL_DIR ${FREERTOS_KERNEL_DIR_REL} ABSOLUTE)
|
||||
|
||||
# Get the absolute path to the Port Directory
|
||||
|
|
|
|||
|
|
@ -97,6 +97,7 @@ extern void vMainSetupTimerInterrupt( void );
|
|||
#define configUSE_CO_ROUTINES 0
|
||||
#define configUSE_MUTEXES 1U
|
||||
#define configUSE_RECURSIVE_MUTEXES 1U
|
||||
#define configUSE_EVENT_GROUPS 0U
|
||||
#define configCHECK_FOR_STACK_OVERFLOW 0
|
||||
#define configUSE_QUEUE_SETS 1U
|
||||
#define configUSE_COUNTING_SEMAPHORES 1U
|
||||
|
|
|
|||
|
|
@ -100,8 +100,7 @@
|
|||
#define demoIRQ_TASK_PRIORITY ( configTIMER_TASK_PRIORITY + 2UL )
|
||||
|
||||
/** @brief Priority at which the Notification Demo Task is created. */
|
||||
#define demoNOTIFICATION_TASK_PRIORITY \
|
||||
( configTIMER_TASK_PRIORITY + 1UL ) | portPRIVILEGE_BIT
|
||||
#define demoNOTIFICATION_TASK_PRIORITY ( configTIMER_TASK_PRIORITY + 1UL )
|
||||
|
||||
/* ------------------------------- Register Test Tasks ------------------------------- */
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 625b24a104dd901d86759668b6b272590d154308
|
||||
Subproject commit e8289dfee6e00660b5ad028e9f931ffb76c95840
|
||||
|
|
@ -5,7 +5,7 @@ license: "MIT"
|
|||
|
||||
dependencies:
|
||||
- name: "FreeRTOS-Kernel"
|
||||
version: "625b24a10"
|
||||
version: "e8289dfee"
|
||||
repository:
|
||||
type: "git"
|
||||
url: "https://github.com/FreeRTOS/FreeRTOS-Kernel.git"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue