board: arm: Enable MPU for all STM32 boards supporting it

Only boards with at least 64K Flash will activate MPU because:
MPU + UERSPACE + All switches implicity activated
(CONFIG_MPU_STACK_GUARD, CONFIG_ARM_STACK_PROTECTION ...)
will consume about 40K Flash
(value computed on nucleo_f767_zi on tests/arch/arm/arm_ramfunc/).

Signed-off-by: Alexandre Bourdiol <alexandre.bourdiol@st.com>
This commit is contained in:
Alexandre Bourdiol 2020-06-05 22:20:43 +02:00 committed by Kumar Gala
commit 6f55614222
29 changed files with 83 additions and 0 deletions

View file

@ -6,6 +6,9 @@ CONFIG_SOC_STM32F412CG=y
# 84MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=84000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -3,6 +3,9 @@ CONFIG_SOC_STM32MP15_M4=y
# 209 MHz system clock (mlhclk_ck)
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=209000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable GPIO
CONFIG_GPIO=y

View file

@ -6,6 +6,9 @@ CONFIG_SOC_STM32F411XE=y
# 84MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=84000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -3,6 +3,9 @@ CONFIG_SOC_STM32L151XBA=y
# 32MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -10,6 +10,9 @@ CONFIG_BOARD_B_L072Z_LRWAN1=y
# General Kernel Options
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32000000
# Enable MPU
CONFIG_ARM_MPU=y
# Clock configuration
CONFIG_CLOCK_CONTROL=y
# SYSCLK selection

View file

@ -6,6 +6,9 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=120000000
CONFIG_SERIAL=y
# Enable MPU
CONFIG_ARM_MPU=y
# console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

View file

@ -7,6 +7,9 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
CONFIG_SERIAL=y
# Enable MPU
CONFIG_ARM_MPU=y
# console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

View file

@ -9,6 +9,9 @@ CONFIG_SOC_STM32L053XX=y
# General Kernel Options
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32000000
# Enable MPU
CONFIG_ARM_MPU=y
# Kernel Options due to Low Memory (8k)
CONFIG_MAIN_STACK_SIZE=640
CONFIG_IDLE_STACK_SIZE=200

View file

@ -9,6 +9,9 @@ CONFIG_SOC_STM32L073XX=y
# General Kernel Options
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32000000
# Enable MPU
CONFIG_ARM_MPU=y
# Serial Drivers
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y

View file

@ -6,6 +6,9 @@ CONFIG_CORTEX_M_SYSTICK=y
# 32MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=32000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y
# enable console

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32L432XX=y
# 80MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=80000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -8,6 +8,9 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=80000000
# enable uart driver
CONFIG_SERIAL=y
# Enable MPU
CONFIG_ARM_MPU=y
# enable pinmux
CONFIG_PINMUX=y

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32F103XB=y
# 72MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -9,6 +9,9 @@ CONFIG_SOC_STM32F373XC=y
# Floating Point Options
CONFIG_FPU=y
# Enable MPU
CONFIG_ARM_MPU=y
# General Kernel Options
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000

View file

@ -11,6 +11,9 @@ CONFIG_SOC_STM32F103X8=y
# 72MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -6,6 +6,9 @@ CONFIG_SOC_STM32F103X8=y
# 72MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -8,6 +8,9 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
# Floating Point Options
CONFIG_FPU=y
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32F723XX=y
# 216MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=216000000
# Enable MPU
CONFIG_ARM_MPU=y
CONFIG_SERIAL=y
# console

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32F746XX=y
# 216MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=216000000
# Enable MPU
CONFIG_ARM_MPU=y
CONFIG_SERIAL=y
# console

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32F769XX=y
# 216MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=216000000
# Enable MPU
CONFIG_ARM_MPU=y
CONFIG_SERIAL=y
# console

View file

@ -15,6 +15,9 @@ CONFIG_GPIO=y
# clock configuration
CONFIG_CLOCK_CONTROL=y
# Enable MPU
CONFIG_ARM_MPU=y
# By default SERIAL peripherals are assigned to m7
# enable uart driver

View file

@ -30,6 +30,9 @@ CONFIG_CLOCK_STM32_PLL_P_DIVISOR=2
CONFIG_CLOCK_STM32_PLL_Q_DIVISOR=4
CONFIG_CLOCK_STM32_PLL_R_DIVISOR=2
# Enable MPU
CONFIG_ARM_MPU=y
# Disable following to assign serial ports to m4 core
# enable uart driver

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32L476XX=y
# 80MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=80000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -5,6 +5,9 @@ CONFIG_SOC_STM32L496XX=y
# 80MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=80000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -6,6 +6,9 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=209000000
# enable GPIO
CONFIG_GPIO=y
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y

View file

@ -7,6 +7,9 @@ CONFIG_SOC_STM32F100XB=y
# 24MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=24000000
# Enable MPU
CONFIG_ARM_MPU=y
# enable uart driver
CONFIG_SERIAL=y

View file

@ -11,5 +11,6 @@ config SOC_SERIES_STM32F2X
select SOC_FAMILY_STM32
select HAS_STM32CUBE
select HAS_SWO
select CPU_HAS_ARM_MPU
help
Enable support for stm32f2 MCU series

View file

@ -12,11 +12,14 @@ config SOC_STM32L011XX
config SOC_STM32L053XX
bool "STM32L053XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L072XX
bool "STM32L072XX"
select CPU_HAS_ARM_MPU
config SOC_STM32L073XX
bool "STM32L073XX"
select CPU_HAS_ARM_MPU
endchoice

View file

@ -11,5 +11,6 @@ config SOC_SERIES_STM32L1X
select SOC_FAMILY_STM32
select HAS_STM32CUBE
select HAS_SWO
select CPU_HAS_ARM_MPU
help
Enable support for STM32L1 MCU series