Cortex M55 FreeRTOS Porting
Cortex M55 FreeRTOS Porting
In FreeRTOS, the linking and memory layout are typically handled by the linker script and
startup code. Here’s how you can locate and modify these files:
FreeRTOS/portable/GCC/ARM_CM4F/linker_script.ld
bash
Your_Project/Board_Support/linker_script.ld
Example:
ld
1/3
MEMORY
{
FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 512K
RAM (rwx) : ORIGIN = 0x20000000, LENGTH = 256K
}
Cortex-M55 might have different Flash and RAM mapping, so refer to its datasheet.
The startup file ( startup_<chip>.s ) contains vector table and initialization code.
If you modify an M4 startup file, update the vector table and system initialization.
In Makefile/CMake:
make
Change to:
make
-mcpu=cortex-m55 -mfloat-abi=hard
--cpu=Cortex-M4
Change to:
make
--cpu=Cortex-M55
2/3
Check FreeRTOS/portable/GCC/ARM_CM55/ for a port, or adapt ARM_CM4F .
If the system crashes, check vector table alignment and clock configuration.
Would you like help with a specific step, such as modifying the linker script?
3/3