mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-01-18 12:52:44 +01:00
df7ce1c647
This introduces KCONFIG_BOARD_CONFIG and KCONFIG_CPU_CONFIG variable for boards and CPUs (including common directories) to add default configuration files to be merged. The current approach, as it uses Makefile.features, would include boards first, not allowing them to override CPU configurations.
48 lines
1.3 KiB
Makefile
48 lines
1.3 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 += dbgpin
|
|
FEATURES_PROVIDED += libstdcpp
|
|
FEATURES_PROVIDED += newlib
|
|
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_CPU_CONFIG += $(RIOTCPU)/cortexm_common/cortexm_common.config
|
|
endif
|