blob: 0168ceb986461add7d0402dc5bd9e79032d6a07a [file] [log] [blame]
# Kconfig - ARM core configuration options
#
# Copyright (c) 2015 Wind River Systems, Inc.
#
# SPDX-License-Identifier: Apache-2.0
#
config CPU_CORTEX
bool
# Omit prompt to signify "hidden" option
default n
help
This option signifies the use of a CPU of the Cortex family.
config CPU_CORTEX_M
bool
# Omit prompt to signify "hidden" option
default n
select CPU_CORTEX
select ARCH_HAS_CUSTOM_SWAP_TO_MAIN
select HAS_CMSIS
select HAS_FLASH_LOAD_OFFSET
select HAS_DTS
select ARCH_HAS_STACK_PROTECTION if ARM_CORE_MPU
select ARCH_HAS_USERSPACE if ARM_CORE_MPU
help
This option signifies the use of a CPU of the Cortex-M family.
config CPU_HAS_SYSTICK
bool
# Omit prompt to signify "hidden" option
default n
help
This option is enabled when the CPU has systick timer implemented.
config ARM_STACK_PROTECTION
bool
default y if HW_STACK_PROTECTION
select MPU_STACK_GUARD if ARM_CORE_MPU
help
This option enables MPU stack guard to cause a system fatal error
if the bounds of the current process stack are overflowed.
config ARM_USERSPACE
bool
default y if USERSPACE
help
This option enables APIs to drop a thread's privileges, supporting
user-level threads that are protected from each other and from
crashing the kernel.
menu "Architectue Floating Point Options"
depends on CPU_HAS_FPU
choice
prompt "Floating point ABI"
default FP_HARDABI
depends on FLOAT
config FP_HARDABI
bool "Floating point Hard ABI"
depends on FLOAT
help
This option selects the Floating point ABI in which hardware floating
point instructions are generated and uses FPU-specific calling
conventions
config FP_SOFTABI
bool "Floating point Soft ABI"
depends on FLOAT
help
This option selects the Floating point ABI in which hardware floating
point instructions are generated but soft-float calling conventions.
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"
endif