1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00

Merge pull request #15058 from benpicco/feature_stdio_highlevel

boards: remove the bootloader_% pseudo-feature, replace it with highlevel_stdio
This commit is contained in:
benpicco 2020-10-13 14:25:03 +02:00 committed by GitHub
commit 4852c09027
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
29 changed files with 37 additions and 51 deletions

View File

@ -16,6 +16,6 @@ config BOARD_ADAFRUIT_CLUE
select HAS_PERIPH_SPI
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_NRFUTIL
select HAS_HIGHLEVEL_STDIO
source "$(RIOTBOARD)/common/nrf52/Kconfig"

View File

@ -9,7 +9,7 @@ endif
# use nrfutil-bootloader/stdio_cdc_acm only if no other stdio_% other than stdio_cdc_acm
# is requested
ifeq (,$(filter-out stdio_cdc_acm,$(filter stdio_% slipdev_stdio,$(USEMODULE))))
FEATURES_REQUIRED += bootloader_nrfutil
FEATURES_REQUIRED += highlevel_stdio
USEMODULE += usb_board_reset
USEMODULE += stdio_cdc_acm
endif

View File

@ -7,6 +7,6 @@ FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += bootloader_nrfutil
FEATURES_PROVIDED += highlevel_stdio
include $(RIOTBOARD)/common/nrf52/Makefile.features

View File

@ -16,6 +16,6 @@ config BOARD_ADAFRUIT_ITSYBITSY_NRF52
select HAS_PERIPH_SPI
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_NRFUTIL
select HAS_HIGHLEVEL_STDIO
source "$(RIOTBOARD)/common/nrf52/Kconfig"

View File

@ -9,7 +9,7 @@ endif
# enable bootloader reset over USB, requires USB bootloader to be used
ifneq (,$(filter stdio_cdc_acm,$(USEMODULE)))
FEATURES_REQUIRED += bootloader_nrfutil
FEATURES_REQUIRED += highlevel_stdio
USEMODULE += usb_board_reset
endif

View File

@ -7,6 +7,6 @@ FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += bootloader_nrfutil
FEATURES_PROVIDED += highlevel_stdio
include $(RIOTBOARD)/common/nrf52/Makefile.features

View File

@ -16,6 +16,6 @@ config BOARD_ARDUINO_NANO_33_BLE
select HAS_PERIPH_SPI
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO
source "$(RIOTBOARD)/common/nrf52/Kconfig"

View File

@ -9,7 +9,7 @@ ifeq (,$(filter-out stdio_cdc_acm,$(filter stdio_% slipdev_stdio,$(USEMODULE))))
USEMODULE += stdio_cdc_acm
# This board requires support for Arduino bootloader.
FEATURES_REQUIRED += bootloader_arduino
FEATURES_REQUIRED += highlevel_stdio
USEMODULE += usb_board_reset
endif

View File

@ -7,6 +7,6 @@ FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio
include $(RIOTBOARD)/common/nrf52/Makefile.features

View File

@ -18,4 +18,4 @@ config BOARD_COMMON_ARDUINO_MKR
select HAS_PERIPH_USBDEV
select HAS_ARDUINO
select HAS_ARDUINO_PWM
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO

View File

@ -16,4 +16,4 @@ FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += arduino
FEATURES_PROVIDED += arduino_pwm
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio

View File

@ -2,4 +2,4 @@
USEMODULE += usb_board_reset
USEMODULE += stdio_cdc_acm
FEATURES_REQUIRED += bootloader_arduino
FEATURES_REQUIRED += highlevel_stdio

View File

@ -15,4 +15,4 @@ config BOARD_COMMON_SODAQ
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_ARDUINO
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO

View File

@ -12,4 +12,4 @@ FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += arduino
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio

View File

@ -20,4 +20,4 @@ config BOARD_FEATHER_M0_WIFI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO

View File

@ -20,4 +20,4 @@ config BOARD_FEATHER_M0
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO

View File

@ -13,4 +13,4 @@ FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev
# Put other features for this board (in alphabetical order)
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio

View File

@ -15,6 +15,6 @@ config BOARD_NRF52840DONGLE
select HAS_PERIPH_PWM
select HAS_PERIPH_UART
select HAS_PERIPH_USBDEV
select HAS_BOOTLOADER_NRFUTIL
select HAS_HIGHLEVEL_STDIO
source "$(RIOTBOARD)/common/nrf52/Kconfig"

View File

@ -9,7 +9,7 @@ endif
# enable bootloader reset over USB, requires USB bootloader to be used
ifneq (,$(filter stdio_cdc_acm,$(USEMODULE)))
FEATURES_REQUIRED += bootloader_nrfutil
FEATURES_REQUIRED += highlevel_stdio
USEMODULE += usb_board_reset
endif

View File

@ -6,6 +6,6 @@ FEATURES_PROVIDED += periph_uart
FEATURES_PROVIDED += periph_usbdev
# Various other features (if any)
FEATURES_PROVIDED += bootloader_nrfutil
FEATURES_PROVIDED += highlevel_stdio
include $(RIOTBOARD)/common/nrf52/Makefile.features

View File

@ -11,7 +11,7 @@ config BOARD_SERPENTE
bool
default y
select CPU_MODEL_SAMD21E18A
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO
select HAS_PERIPH_ADC
select HAS_PERIPH_I2C
select HAS_PERIPH_PWM

View File

@ -2,7 +2,7 @@ CPU = samd21
CPU_MODEL = samd21e18a
# Put defined MCU peripherals here (in alphabetical order)
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio
FEATURES_PROVIDED += periph_adc
FEATURES_PROVIDED += periph_i2c
FEATURES_PROVIDED += periph_pwm

View File

@ -12,6 +12,6 @@ config BOARD_WEMOS_ZERO
bool
default y
select BOARD_COMMON_ARDUINO_ZERO
select HAS_BOOTLOADER_ARDUINO
select HAS_HIGHLEVEL_STDIO
source "$(RIOTBOARD)/common/arduino-zero/Kconfig"

View File

@ -1,3 +1,3 @@
include $(RIOTBOARD)/common/arduino-zero/Makefile.features
FEATURES_PROVIDED += bootloader_arduino
FEATURES_PROVIDED += highlevel_stdio

View File

@ -21,11 +21,6 @@ config CPU_COMMON_NRF5X
select HAS_RADIO_NRFMIN
## Definition of specific features
config HAS_BOOTLOADER_NRFUTIL
bool
help
Indicates that the nRF Util bootloader is being used.
config HAS_BLE_NIMBLE
bool
help

View File

@ -42,11 +42,6 @@ config HAS_BACKUP_RAM
help
Indicates that Backup RAM is supported.
config HAS_BOOTLOADER_ARDUINO
bool
help
Indicates that the Arduino bootloader is used.
config HAS_CPP
bool
help
@ -67,6 +62,13 @@ config HAS_ETHERNET
help
Indicates that Ethernet connectivity is present.
config HAS_HIGHLEVEL_STDIO
bool
help
Indicates that a high-level stdio method (such as CDC ACM) is used.
This requires a running thread and set-up and will not print during
a crash.
config HAS_LIBSTDCPP
bool
help

View File

@ -44,13 +44,6 @@ ifneq (,$(filter stdio_uart,$(USEMODULE)))
FEATURES_REQUIRED += periph_uart
endif
ifeq (,$(filter stdio_cdc_acm,$(USEMODULE)))
# The arduino and nrfutil bootloader features cannot be used if the
# stdio_cdc_acm module is not used
FEATURES_BLACKLIST += bootloader_arduino
FEATURES_BLACKLIST += bootloader_nrfutil
endif
ifneq (,$(filter stdio_semihosting,$(USEMODULE)))
USEMODULE += xtimer
FEATURES_REQUIRED += cpu_core_cortexm

View File

@ -2,10 +2,9 @@ include ../Makefile.tests_common
USEMODULE += ssp
# This test intentionally crashes the firmware and when using a board with a
# preflashed bootloader, it cannot be reflashed automatically afterwards.
FEATURES_BLACKLIST += bootloader_arduino
FEATURES_BLACKLIST += bootloader_nrfutil
# This test intentionally crashes the firmware and when using a board with
# stdio via CDC ACM, RIOT can't print anything after the crash.
FEATURES_BLACKLIST += highlevel_stdio
include $(RIOTBASE)/Makefile.include

View File

@ -13,12 +13,9 @@ endif
DISABLE_MODULE += auto_init auto_init_%
# boards using a preflashed bootloader require auto_init to
# automatically initialize stdio over USB. Without this, the bootloader
# management feature cannot be used (auto reset and auto reboot in bootloader
# mode)
FEATURES_BLACKLIST += bootloader_arduino
FEATURES_BLACKLIST += bootloader_nrfutil
# boards using stdio via CDC ACM require auto_init to automatically
# initialize stdio over USB.
FEATURES_BLACKLIST += highlevel_stdio
# Pull in `Makefile.include`s from the test suites:
-include $(UNIT_TESTS:%=$(RIOTBASE)/tests/unittests/%/Makefile.include)