1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/cpu/native/Kconfig
Francisco Molina 14ef09b8b4 drivers/mtd: fix Kconfig dependencies
Currently implementations of the MTD api are selecting the module,
this makes it easy for default backends to be selected. But the
correct modeling is simply selecting the MTD api and then selecting
a backend. BOARDs providing one of the backends can expose this and
then that backend can be selected by default.

There is also currently nothing preventing from using the MTD api
with no backend since a mock backend can easily be provided as is
done in all mtd tests.
2021-09-22 09:22:51 +02:00

93 lines
1.9 KiB
Plaintext

# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#
config CPU_ARCH_NATIVE
bool
select HAS_ARCH_32BIT
select HAS_ARCH_NATIVE
select HAS_CPP
select HAS_CPU_NATIVE
select HAS_LIBSTDCPP
select HAS_PERIPH_CPUID
select HAS_PERIPH_EEPROM
select HAS_PERIPH_FLASHPAGE
select HAS_PERIPH_FLASHPAGE_PAGEWISE
select HAS_PERIPH_HWRNG
select HAS_PERIPH_PM
select HAS_PERIPH_PWM
select HAS_PERIPH_TIMER_PERIODIC
select HAS_SSP
select HAVE_MTD_NATIVE
# needed modules
select MODULE_PERIPH if TEST_KCONFIG
config CPU_CORE_NATIVE
bool
select CPU_ARCH_NATIVE
config CPU_FAM_NATIVE
bool
select CPU_CORE_NATIVE
config CPU_MODEL_NATIVE
bool
select CPU_FAM_NATIVE
select NATIVE_OS_DARWIN if "$(OS)" = "Darwin"
select NATIVE_OS_LINUX if "$(OS)" = "Linux"
select NATIVE_OS_FREEBSD if "$(OS)" = "FreeBSD"
## Declaration of specific features
config HAS_ARCH_NATIVE
bool
help
Indicates that the architecture being used is 'native'.
config HAS_CPU_NATIVE
bool
help
Indicates that the cpu being used is 'native'.
## OS Variants
config NATIVE_OS_DARWIN
bool
config NATIVE_OS_LINUX
bool
select HAS_PERIPH_CAN
select HAS_PERIPH_GPIO
select HAS_PERIPH_GPIO_IRQ
select HAS_PERIPH_SPI
config NATIVE_OS_FREEBSD
bool
## CPU Common symbols
config CPU_ARCH
default "native" if CPU_ARCH_NATIVE
config CPU_CORE
default "native" if CPU_CORE_NATIVE
config CPU_FAM
default "native" if CPU_FAM_NATIVE
config CPU_MODEL
default "native" if CPU_MODEL_NATIVE
config CPU
default "native" if CPU_MODEL_NATIVE
menu "Native modules"
depends on CPU_ARCH_NATIVE
rsource "backtrace/Kconfig"
endmenu # Native modules
rsource "periph/Kconfig"