I took the code from the “CORTEX_MPU_LPC1768_GCC_RedSuite” example and adjusted FreeRTOS.h, the adresses in the main code and the LCD routines for the STM32F103. Compiles just fine. The problem is the Linker Script. “Placeholders” like
. = ORIGIN( SRAM ) + _Privileged_Data_Region_Size;
will cause the code to somehow bloat
c:/programme/codesourcery/sourcery g++ lite/bin/../lib/gcc/arm-none-eabi/4.5.2/../../../../arm-none-eabi/bin/ld.exe: FreeRtos_MPU-LPC_Example.elf section `.text' will not fit in region `FLASH'
c:/programme/codesourcery/sourcery g++ lite/bin/../lib/gcc/arm-none-eabi/4.5.2/../../../../arm-none-eabi/bin/ld.exe: region `FLASH' overflowed by 133201600 bytes
If you set the flash to 1000M look at the listfile you will see a gap of the size of 0x8004000. No code in between.
Does anyone have a working Linker Script for the STM32 family and the MPU-port?Or an explanation for the behavior? Regards, Torben