mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
0c2cfe99e6
Adds a separate board for native64 instead of the `NATIVE_64BIT` workaround. The files in `boards/native64` are more or less dummy files and just include the `boards/native` logic (similar to `openlabs-kw41z-mini-256kib`). The main logic for native is in `makefiles/arch/native.inc.mk`, `cpu/native` and `boards/native`. The remaining changes concern the build system, and change native board checks to native CPU checks to cover both boards.
94 lines
2.1 KiB
Plaintext
94 lines
2.1 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 if BOARD_NATIVE
|
|
select HAS_ARCH_64BIT if BOARD_NATIVE64
|
|
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
|
|
select MODULE_NATIVE_CLI_EUI_PROVIDER if MODULE_EUI_PROVIDER
|
|
|
|
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_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_LINUX
|
|
bool
|
|
select HAS_PERIPH_CAN
|
|
select HAS_PERIPH_GPIO
|
|
select HAS_PERIPH_GPIO_IRQ
|
|
select HAS_PERIPH_SPI
|
|
select HAS_RUST_TARGET if "$(OS_ARCH)" = "x86_64" && HAS_ARCH_32BIT
|
|
|
|
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"
|
|
rsource "cli_eui_provider/Kconfig"
|
|
|
|
endmenu # Native modules
|
|
|
|
rsource "periph/Kconfig"
|
|
rsource "vfs/Kconfig"
|