arch: arm: Refactor CONFIG_CORTEX_M
Clean up Kconfig so each SoC just selects the specific Cortex-M implementaiton rather than having to select both CORTEX_M and CORTEX_{M0, M3, M4, etc.}. Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This commit is contained in:
parent
679f401fa0
commit
ad18f84f50
26 changed files with 67 additions and 79 deletions
|
@ -69,9 +69,7 @@ endchoice
|
|||
|
||||
endmenu
|
||||
|
||||
if CPU_CORTEX_M
|
||||
source "arch/arm/core/cortex_m/Kconfig"
|
||||
endif
|
||||
|
||||
if CPU_HAS_MPU
|
||||
source "arch/arm/core/cortex_m/mpu/Kconfig"
|
||||
|
|
|
@ -6,6 +6,71 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
# NOTE: We have the specific core implementations first and outside of the
|
||||
# if CPU_CORTEX_M block so that SoCs can select which core they are using
|
||||
# without having to select all the options related to that core. Everything
|
||||
# else is captured inside the if CPU_CORTEX_M block so they are not exposed
|
||||
# if one select a differnet ARM Cortex Family (Cortex-A or Cortex-R)
|
||||
|
||||
config CPU_CORTEX_M0
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M0 CPU
|
||||
|
||||
config CPU_CORTEX_M0PLUS
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M0+ CPU
|
||||
|
||||
config CPU_CORTEX_M3
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M3 CPU
|
||||
|
||||
config CPU_CORTEX_M4
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M4 CPU
|
||||
|
||||
config CPU_CORTEX_M23
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M23 CPU
|
||||
|
||||
config CPU_CORTEX_M33
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M33 CPU
|
||||
|
||||
config CPU_CORTEX_M7
|
||||
bool
|
||||
select CPU_CORTEX_M
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
default n
|
||||
help
|
||||
This option signifies the use of a Cortex-M7 CPU
|
||||
|
||||
if CPU_CORTEX_M
|
||||
|
||||
config ISA_THUMB2
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
|
@ -116,59 +181,6 @@ config ARMV7_M_ARMV8_M_FP
|
|||
implementation, or the use of an ARMv8-M processor
|
||||
implementation supporting the Floating-Point Extension.
|
||||
|
||||
config CPU_CORTEX_M0
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M0 CPU
|
||||
|
||||
config CPU_CORTEX_M0PLUS
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M0+ CPU
|
||||
|
||||
config CPU_CORTEX_M3
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M3 CPU
|
||||
|
||||
config CPU_CORTEX_M4
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
select ARMV7_M_ARMV8_M_FP if CPU_HAS_FPU
|
||||
help
|
||||
This option signifies the use of a Cortex-M4 CPU
|
||||
|
||||
config CPU_CORTEX_M23
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV6_M_ARMV8_M_BASELINE
|
||||
help
|
||||
This option signifies the use of a Cortex-M23 CPU
|
||||
|
||||
config CPU_CORTEX_M33
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
select ARMV7_M_ARMV8_M_FP if CPU_HAS_FPU
|
||||
help
|
||||
This option signifies the use of a Cortex-M33 CPU
|
||||
|
||||
config CPU_CORTEX_M7
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select ARMV7_M_ARMV8_M_MAINLINE
|
||||
select ARMV7_M_ARMV8_M_FP if CPU_HAS_FPU
|
||||
default n
|
||||
help
|
||||
This option signifies the use of a Cortex-M7 CPU
|
||||
|
||||
menu "ARM Cortex-M options"
|
||||
depends on CPU_CORTEX_M
|
||||
|
||||
|
@ -259,3 +271,5 @@ config SW_VECTOR_RELAY
|
|||
(or an Armv8-M baseline core) with no VTOR and no other hardware
|
||||
relocation table mechanisms.
|
||||
endmenu
|
||||
|
||||
endif # CPU_CORTEX_M
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
config SOC_SERIES_BEETLE
|
||||
bool "ARM Beetle MCU Series"
|
||||
depends on ARM
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select SOC_FAMILY_ARM
|
||||
select CPU_HAS_SYSTICK
|
||||
|
|
|
@ -8,7 +8,6 @@ config SOC_SERIES_MPS2
|
|||
bool "ARM MPS2 MCU Series"
|
||||
depends on ARM
|
||||
select SOC_FAMILY_ARM
|
||||
select CPU_CORTEX_M
|
||||
select CPU_HAS_SYSTICK
|
||||
select GPIO_MMIO32 if GPIO
|
||||
help
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
|
||||
config SOC_SERIES_SAM3X
|
||||
bool "Atmel SAM3X MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select SOC_FAMILY_SAM
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_SAM4S
|
||||
bool "Atmel SAM4S MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_SAM
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
|
||||
config SOC_SERIES_SAME70
|
||||
bool "Atmel SAME70 MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M7
|
||||
select SOC_FAMILY_SAM
|
||||
select CPU_HAS_FPU
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
|
||||
config SOC_SERIES_SAMD21
|
||||
bool "Atmel SAMD21 MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M0PLUS
|
||||
select SOC_FAMILY_SAM0
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_NRF51X
|
||||
bool "Nordic Semiconductor nRF51 series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M0
|
||||
select SOC_FAMILY_NRF5
|
||||
select NRF_RTC_TIMER
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_NRF52X
|
||||
bool "Nordic Semiconductor nRF52 series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select CPU_HAS_FPU
|
||||
select CPU_HAS_MPU
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_IMX_RT
|
||||
bool "i.MX RT Series"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M7
|
||||
select SOC_FAMILY_IMX
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_KINETIS_K6X
|
||||
bool "Kinetis K6x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_KINETIS
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_KINETIS_KL2X
|
||||
bool "Kinetis KL2x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M0PLUS
|
||||
select SOC_FAMILY_KINETIS
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_KINETIS_KWX
|
||||
bool "Kinetis KWx Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select SOC_FAMILY_KINETIS
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
select CPU_HAS_SYSTICK
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_LPC54XXX
|
||||
bool "LPC LPC54xxx Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_LPC
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_EFM32WG
|
||||
bool "EFM32WG Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select CPU_HAS_FPU
|
||||
select SOC_FAMILY_EXX32
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_STM32F0X
|
||||
bool "STM32F0x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M0
|
||||
select CPU_CORTEX_M0_HAS_VECTOR_TABLE_REMAP
|
||||
select SOC_FAMILY_STM32
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_STM32F1X
|
||||
bool "STM32F1x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select SOC_FAMILY_STM32
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_STM32F3X
|
||||
bool "STM32F3x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_STM32
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_STM32F4X
|
||||
bool "STM32F4x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select CPU_HAS_FPU
|
||||
select SOC_FAMILY_STM32
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_STM32L0X
|
||||
bool "STM32L0x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M0PLUS
|
||||
select CPU_CORTEX_M_HAS_VTOR
|
||||
select SOC_FAMILY_STM32
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
|
||||
config SOC_SERIES_STM32L4X
|
||||
bool "STM32L4x Series MCU"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_STM32
|
||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
|
||||
config SOC_TI_LM3S6965
|
||||
bool "TI LM3S6965"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select CPU_HAS_SYSTICK
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
|
||||
config SOC_SERIES_CC2650
|
||||
bool "TI SimpleLink Family CC2650"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select SOC_FAMILY_TISIMPLELINK
|
||||
select CPU_HAS_SYSTICK
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
|
||||
config SOC_SERIES_CC32XX
|
||||
bool "TI SimpleLink Family"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_TISIMPLELINK
|
||||
select CPU_HAS_SYSTICK
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
|
||||
config SOC_SERIES_MSP432P4XX
|
||||
bool "TI SimpleLink Family MSP432P4XX"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select SOC_FAMILY_TISIMPLELINK
|
||||
select CPU_HAS_FPU
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue