1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/cortexm_common/Makefile.features
2020-10-14 17:02:04 +02:00

46 lines
1.2 KiB
Makefile

FEATURES_PROVIDED += arch_32bit
FEATURES_PROVIDED += arch_arm
FEATURES_PROVIDED += cortexm_svc
FEATURES_PROVIDED += cpp
FEATURES_PROVIDED += cpu_check_address
FEATURES_PROVIDED += cpu_core_cortexm
FEATURES_PROVIDED += libstdcpp
FEATURES_PROVIDED += periph_pm
FEATURES_PROVIDED += puf_sram
FEATURES_PROVIDED += picolibc
FEATURES_PROVIDED += ssp
# cortex-m4f and cortex-m7 provide FPU support
ifneq (,$(filter $(CPU_CORE),cortex-m4f cortex-m7))
FEATURES_PROVIDED += cortexm_fpu
endif
# Set CPU_ARCH depending on the CPU_CORE
ifeq ($(CPU_CORE),cortex-m0)
CPU_ARCH := armv6m
else ifeq ($(CPU_CORE),cortex-m0plus)
CPU_ARCH := armv6m
else ifeq ($(CPU_CORE),cortex-m23)
CPU_ARCH := armv8m
else ifeq ($(CPU_CORE),cortex-m3)
CPU_ARCH := armv7m
else ifeq ($(CPU_CORE),cortex-m33)
CPU_ARCH := armv8m
else ifeq ($(CPU_CORE),cortex-m4)
CPU_ARCH := armv7m
else ifeq ($(CPU_CORE),cortex-m4f)
CPU_ARCH := armv7m
else ifeq ($(CPU_CORE),cortex-m7)
CPU_ARCH := armv7m
else
$(error Unkwnown cortexm core: $(CPU_CORE))
endif
FEATURES_PROVIDED += no_idle_thread
# This configuration enables modules that are only available when using Kconfig
# module modelling
ifeq (1, $(TEST_KCONFIG))
KCONFIG_ADD_CONFIG += $(RIOTCPU)/cortexm_common/cortexm_common.config
endif