diff --git a/boards/acd52832/Kconfig b/boards/acd52832/Kconfig index 40aa6b809c..b68675992c 100644 --- a/boards/acd52832/Kconfig +++ b/boards/acd52832/Kconfig @@ -16,4 +16,6 @@ config BOARD_ACD52832 select HAS_PERIPH_SPI select HAS_PERIPH_UART -source "$(RIOTBOARD)/common/nrf52/Kconfig" + select HAVE_SAUL_GPIO + +source "$(RIOTBOARD)/common/nrf52xxxdk/Kconfig" diff --git a/boards/adafruit-clue/Kconfig b/boards/adafruit-clue/Kconfig index a92ae326da..5ea737ffc8 100644 --- a/boards/adafruit-clue/Kconfig +++ b/boards/adafruit-clue/Kconfig @@ -18,4 +18,11 @@ config BOARD_ADAFRUIT_CLUE select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO + select HAVE_APDS9960 + select HAVE_BMP280_I2C + select HAVE_ILI9341 + select HAVE_LIS3MDL + select HAVE_SAUL_GPIO + select HAVE_SHT3X + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/adafruit-clue/Makefile.features b/boards/adafruit-clue/Makefile.features index 1f4969f6d9..912b45773c 100644 --- a/boards/adafruit-clue/Makefile.features +++ b/boards/adafruit-clue/Makefile.features @@ -9,4 +9,10 @@ FEATURES_PROVIDED += periph_usbdev # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/adafruit-itsybitsy-nrf52/Kconfig b/boards/adafruit-itsybitsy-nrf52/Kconfig index 24655e4205..15fbaf6a0e 100644 --- a/boards/adafruit-itsybitsy-nrf52/Kconfig +++ b/boards/adafruit-itsybitsy-nrf52/Kconfig @@ -18,4 +18,6 @@ config BOARD_ADAFRUIT_ITSYBITSY_NRF52 select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/adafruit-itsybitsy-nrf52/Makefile.features b/boards/adafruit-itsybitsy-nrf52/Makefile.features index 1f4969f6d9..912b45773c 100644 --- a/boards/adafruit-itsybitsy-nrf52/Makefile.features +++ b/boards/adafruit-itsybitsy-nrf52/Makefile.features @@ -9,4 +9,10 @@ FEATURES_PROVIDED += periph_usbdev # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/arduino-nano-33-ble/Kconfig b/boards/arduino-nano-33-ble/Kconfig index 0c943d1d7f..745540b6c3 100644 --- a/boards/arduino-nano-33-ble/Kconfig +++ b/boards/arduino-nano-33-ble/Kconfig @@ -18,4 +18,6 @@ config BOARD_ARDUINO_NANO_33_BLE select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/arduino-nano-33-ble/Makefile.features b/boards/arduino-nano-33-ble/Makefile.features index 1f4969f6d9..912b45773c 100644 --- a/boards/arduino-nano-33-ble/Makefile.features +++ b/boards/arduino-nano-33-ble/Makefile.features @@ -9,4 +9,10 @@ FEATURES_PROVIDED += periph_usbdev # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/common/e104-bt50xxa-tb/Kconfig b/boards/common/e104-bt50xxa-tb/Kconfig index 1e6a27d1da..75d3d6060f 100644 --- a/boards/common/e104-bt50xxa-tb/Kconfig +++ b/boards/common/e104-bt50xxa-tb/Kconfig @@ -11,4 +11,28 @@ config BOARD_COMMON_E104_BT50XXA_TB select HAS_PERIPH_SPI select HAS_PERIPH_UART + select HAVE_SAUL_GPIO + select MODULE_BOARDS_COMMON_E104_BT50XXA_TB if TEST_KCONFIG + +config MODULE_BOARDS_COMMON_E104_BT50XXA_TB + bool + depends on TEST_KCONFIG + help + common code of e104-bt50xxa-tb boards + +config MODULE_BOARD_SOFTWARE_RESET + bool "Enable softare reset button" + default y + depends on HAS_PERIPH_GPIO + depends on HAS_PERIPH_GPIO_IRQ + depends on HAS_PERIPH_PM + depends on TEST_KCONFIG + select MODULE_PERIPH_GPIO + select MODULE_PERIPH_GPIO_IRQ + select MODULE_PERIPH_PM + +choice NRF5X_RADIO_BACKEND + default MODULE_NRFMIN +endchoice + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/common/nrf52/nrf52_bootloader.config b/boards/common/nrf52/nrf52_bootloader.config new file mode 100644 index 0000000000..a3ee03b3ef --- /dev/null +++ b/boards/common/nrf52/nrf52_bootloader.config @@ -0,0 +1,4 @@ +CONFIG_MODULE_USBUS=y +CONFIG_MODULE_USBUS_CDC_ACM=y +CONFIG_MODULE_STDIO_CDC_ACM=y +CONFIG_MODULE_USB_BOARD_RESET=y diff --git a/boards/common/nrf52xxxdk/Kconfig b/boards/common/nrf52xxxdk/Kconfig index 68dc626db7..c839206247 100644 --- a/boards/common/nrf52xxxdk/Kconfig +++ b/boards/common/nrf52xxxdk/Kconfig @@ -17,6 +17,8 @@ config BOARDS_COMMON_NRF52XXXDK config MODULE_BOARDS_COMMON_NRF52XXXDK bool - default y + depends on TEST_KCONFIG + help + Common code for boards based on nrf52xxxdk. source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/common/particle-mesh/Kconfig b/boards/common/particle-mesh/Kconfig index df143f6e53..55cda8499a 100644 --- a/boards/common/particle-mesh/Kconfig +++ b/boards/common/particle-mesh/Kconfig @@ -12,8 +12,20 @@ config BOARD_COMMON_PARTICLE_MESH select HAS_PERIPH_PWM select HAS_PERIPH_SPI select HAS_PERIPH_UART + select HAS_PERIPH_UART_HW_FC select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO select HAS_VDD_LC_FILTER_REG1 + select HAVE_SAUL_GPIO + select HAVE_SAUL_PWM + + select MODULE_BOARDS_COMMON_PARTICLE_MESH if TEST_KCONFIG + +config MODULE_BOARDS_COMMON_PARTICLE_MESH + bool + depends on TEST_KCONFIG + help + Common code for particle-mesh boards + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/common/particle-mesh/Makefile.features b/boards/common/particle-mesh/Makefile.features index 45255d136a..a52459e965 100644 --- a/boards/common/particle-mesh/Makefile.features +++ b/boards/common/particle-mesh/Makefile.features @@ -10,7 +10,12 @@ FEATURES_PROVIDED += periph_usbdev FEATURES_PROVIDED += vdd_lc_filter_reg1 # Various other features (if any) - FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/dwm1001/Kconfig b/boards/dwm1001/Kconfig index fc9cc683cf..4c859616fb 100644 --- a/boards/dwm1001/Kconfig +++ b/boards/dwm1001/Kconfig @@ -16,6 +16,7 @@ config BOARD_DWM1001 select HAS_PERIPH_SPI select HAS_PERIPH_UART select HAS_VDD_LC_FILTER_REG1 - select HAVE_LIS2DH12 + + select HAVE_LIS2DH12_SPI source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/dwm1001/Makefile.dep b/boards/dwm1001/Makefile.dep index 29588efc1f..492103bea9 100644 --- a/boards/dwm1001/Makefile.dep +++ b/boards/dwm1001/Makefile.dep @@ -1,5 +1,5 @@ ifneq (,$(filter saul_default,$(USEMODULE))) - USEMODULE += lis2dh12 + USEMODULE += lis2dh12_spi endif # include common nrf52 dependencies diff --git a/boards/feather-nrf52840/Kconfig b/boards/feather-nrf52840/Kconfig index b7511ae069..e2f22a10a0 100644 --- a/boards/feather-nrf52840/Kconfig +++ b/boards/feather-nrf52840/Kconfig @@ -18,4 +18,6 @@ config BOARD_FEATHER_NRF52840 select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/feather-nrf52840/Makefile.features b/boards/feather-nrf52840/Makefile.features index 1f4969f6d9..912b45773c 100644 --- a/boards/feather-nrf52840/Makefile.features +++ b/boards/feather-nrf52840/Makefile.features @@ -9,4 +9,10 @@ FEATURES_PROVIDED += periph_usbdev # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/microbit-v2/Kconfig b/boards/microbit-v2/Kconfig index 3dd82fe79c..5b6d68fe28 100644 --- a/boards/microbit-v2/Kconfig +++ b/boards/microbit-v2/Kconfig @@ -18,5 +18,7 @@ config BOARD_MICROBIT_V2 select HAS_PERIPH_UART select HAS_VDD_LC_FILTER_REG1 + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/microbit/Kconfig" source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/nrf52832-mdk/Kconfig b/boards/nrf52832-mdk/Kconfig index b6f8b4558c..8fd7f4c228 100644 --- a/boards/nrf52832-mdk/Kconfig +++ b/boards/nrf52832-mdk/Kconfig @@ -16,4 +16,6 @@ config BOARD_NRF52832_MDK select HAS_PERIPH_UART select HAS_VDD_LC_FILTER_REG1 + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/nrf52840-mdk-dongle/Kconfig b/boards/nrf52840-mdk-dongle/Kconfig index 9f70b7ad03..e8eef0a2a5 100644 --- a/boards/nrf52840-mdk-dongle/Kconfig +++ b/boards/nrf52840-mdk-dongle/Kconfig @@ -17,4 +17,7 @@ config BOARD_NRF52840_MDK_DONGLE select HAS_PERIPH_USBDEV select HAS_HIGHLEVEL_STDIO + select HAVE_SAUL_GPIO + select HAVE_SAUL_PWM + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/nrf52840-mdk-dongle/Makefile.features b/boards/nrf52840-mdk-dongle/Makefile.features index bd678939fe..a4fe12567f 100644 --- a/boards/nrf52840-mdk-dongle/Makefile.features +++ b/boards/nrf52840-mdk-dongle/Makefile.features @@ -8,4 +8,10 @@ FEATURES_PROVIDED += periph_usbdev # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/nrf52840-mdk/Kconfig b/boards/nrf52840-mdk/Kconfig index a33f3db185..38b88d9cd4 100644 --- a/boards/nrf52840-mdk/Kconfig +++ b/boards/nrf52840-mdk/Kconfig @@ -18,4 +18,6 @@ config BOARD_NRF52840_MDK select HAS_PERIPH_USBDEV select HAS_VDD_LC_FILTER_REG1 + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/nrf52840dk/Kconfig b/boards/nrf52840dk/Kconfig index 8a0d3a5d6d..a62270c422 100644 --- a/boards/nrf52840dk/Kconfig +++ b/boards/nrf52840dk/Kconfig @@ -17,4 +17,6 @@ config BOARD_NRF52840DK select HAS_VDD_LC_FILTER_REG0 select HAVE_MTD_SPI_NOR + select MODULE_BOARDS_COMMON_NRF52XXXDK if TEST_KCONFIG + source "$(RIOTBOARD)/common/nrf52xxxdk/Kconfig" diff --git a/boards/nrf52840dongle/Kconfig b/boards/nrf52840dongle/Kconfig index 068de77552..69263b58f4 100644 --- a/boards/nrf52840dongle/Kconfig +++ b/boards/nrf52840dongle/Kconfig @@ -21,4 +21,8 @@ config BOARD_NRF52840DONGLE select HAS_VDD_LC_FILTER_REG0 select HAS_VDD_LC_FILTER_REG1 + select HAVE_SAUL_GPIO + select HAVE_SAUL_PWM + select HAVE_SAUL_NRF_VDDH + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/nrf52840dongle/Makefile.features b/boards/nrf52840dongle/Makefile.features index c50288397a..8f0f1f65a9 100644 --- a/boards/nrf52840dongle/Makefile.features +++ b/boards/nrf52840dongle/Makefile.features @@ -12,4 +12,10 @@ FEATURES_PROVIDED += vdd_lc_filter_reg1 # Various other features (if any) FEATURES_PROVIDED += highlevel_stdio +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(RIOTBOARD)/common/nrf52/nrf52_bootloader.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/nrf52dk/Kconfig b/boards/nrf52dk/Kconfig index 301b854987..5f01bd1a03 100644 --- a/boards/nrf52dk/Kconfig +++ b/boards/nrf52dk/Kconfig @@ -13,4 +13,6 @@ config BOARD_NRF52DK select BOARDS_COMMON_NRF52XXXDK select CPU_MODEL_NRF52832XXAA + select MODULE_BOARDS_COMMON_NRF52XXXDK if TEST_KCONFIG + source "$(RIOTBOARD)/common/nrf52xxxdk/Kconfig" diff --git a/boards/particle-argon/Kconfig b/boards/particle-argon/Kconfig index 57d3365862..28729ede92 100644 --- a/boards/particle-argon/Kconfig +++ b/boards/particle-argon/Kconfig @@ -11,5 +11,6 @@ config BOARD_PARTICLE_ARGON bool default y select BOARD_COMMON_PARTICLE_MESH + select MODULE_PERIPH_UART_HW_FC if TEST_KCONFIG && HAS_PERIPH_UART_HW_FC && MODULE_PERIPH_UART source "$(RIOTBOARD)/common/particle-mesh/Kconfig" diff --git a/boards/particle-boron/Kconfig b/boards/particle-boron/Kconfig index 5c11eb1a2d..842061223b 100644 --- a/boards/particle-boron/Kconfig +++ b/boards/particle-boron/Kconfig @@ -11,5 +11,6 @@ config BOARD_PARTICLE_BORON bool default y select BOARD_COMMON_PARTICLE_MESH + select MODULE_PERIPH_UART_HW_FC if TEST_KCONFIG && HAS_PERIPH_UART_HW_FC && MODULE_PERIPH_UART source "$(RIOTBOARD)/common/particle-mesh/Kconfig" diff --git a/boards/pinetime/Kconfig b/boards/pinetime/Kconfig index b1beb29de2..a9a8ed1bce 100644 --- a/boards/pinetime/Kconfig +++ b/boards/pinetime/Kconfig @@ -16,4 +16,7 @@ config BOARD_PINETIME select HAS_PERIPH_SPI select HAS_VDD_LC_FILTER_REG1 + select HAVE_ILI9341 + select HAVE_MTD_SPI_NOR + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/pinetime/Makefile.features b/boards/pinetime/Makefile.features index 53578f9b44..8eb9b26f79 100644 --- a/boards/pinetime/Makefile.features +++ b/boards/pinetime/Makefile.features @@ -6,4 +6,10 @@ FEATURES_PROVIDED += periph_spi #FEATURES_PROVIDED += periph_uart FEATURES_PROVIDED += vdd_lc_filter_reg1 +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1, $(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(BOARDDIR)/pinetime.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/pinetime/pinetime.config b/boards/pinetime/pinetime.config new file mode 100644 index 0000000000..9136c90eb6 --- /dev/null +++ b/boards/pinetime/pinetime.config @@ -0,0 +1 @@ +CONFIG_MODULE_STDIO_RTT=y diff --git a/boards/reel/Kconfig b/boards/reel/Kconfig index 66fd38cbdc..7b3717a93e 100644 --- a/boards/reel/Kconfig +++ b/boards/reel/Kconfig @@ -18,4 +18,7 @@ config BOARD_REEL select HAS_PERIPH_USBDEV select HAS_VDD_LC_FILTER_REG1 + select HAVE_MMA8X5X + select HAVE_SAUL_GPIO + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/ruuvitag/Kconfig b/boards/ruuvitag/Kconfig index 61521fe57d..afa6f452c7 100644 --- a/boards/ruuvitag/Kconfig +++ b/boards/ruuvitag/Kconfig @@ -16,4 +16,10 @@ config BOARD_RUUVITAG select HAS_PERIPH_UART select HAS_VDD_LC_FILTER_REG1 -source "$(RIOTBOARD)/common/nrf52/Kconfig" + select HAVE_SAUL_GPIO + select HAVE_BME280_SPI + select HAVE_LIS2DH12_SPI + + select MODULE_BOARDS_COMMON_NRF52XXXDK if TEST_KCONFIG + +source "$(RIOTBOARD)/common/nrf52xxxdk/Kconfig" diff --git a/boards/ruuvitag/Makefile.features b/boards/ruuvitag/Makefile.features index 8c1feef43f..fc952501e3 100644 --- a/boards/ruuvitag/Makefile.features +++ b/boards/ruuvitag/Makefile.features @@ -5,4 +5,10 @@ FEATURES_PROVIDED += periph_spi FEATURES_PROVIDED += periph_uart FEATURES_PROVIDED += vdd_lc_filter_reg1 +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1,$(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(BOARDDIR)/ruuvitag.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/ruuvitag/ruuvitag.config b/boards/ruuvitag/ruuvitag.config new file mode 100644 index 0000000000..9136c90eb6 --- /dev/null +++ b/boards/ruuvitag/ruuvitag.config @@ -0,0 +1 @@ +CONFIG_MODULE_STDIO_RTT=y diff --git a/boards/thingy52/Kconfig b/boards/thingy52/Kconfig index 54af2897df..47ffaa5e64 100644 --- a/boards/thingy52/Kconfig +++ b/boards/thingy52/Kconfig @@ -16,4 +16,8 @@ config BOARD_THINGY52 select HAS_PERIPH_UART select HAS_VDD_LC_FILTER_REG1 + select HAVE_LPS22HB + select HAVE_LIS2DH12_I2C + select HAVE_HTS221 + source "$(RIOTBOARD)/common/nrf52/Kconfig" diff --git a/boards/thingy52/Makefile.features b/boards/thingy52/Makefile.features index 3ac7472acb..eb7d17ed44 100644 --- a/boards/thingy52/Makefile.features +++ b/boards/thingy52/Makefile.features @@ -5,4 +5,10 @@ FEATURES_PROVIDED += periph_i2c FEATURES_PROVIDED += periph_uart FEATURES_PROVIDED += vdd_lc_filter_reg1 +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1, $(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(BOARDDIR)/thingy52.config +endif + include $(RIOTBOARD)/common/nrf52/Makefile.features diff --git a/boards/thingy52/thingy52.config b/boards/thingy52/thingy52.config new file mode 100644 index 0000000000..9136c90eb6 --- /dev/null +++ b/boards/thingy52/thingy52.config @@ -0,0 +1 @@ +CONFIG_MODULE_STDIO_RTT=y diff --git a/cpu/nrf52/periph/Kconfig b/cpu/nrf52/periph/Kconfig index 6905a0a163..520b0470ed 100644 --- a/cpu/nrf52/periph/Kconfig +++ b/cpu/nrf52/periph/Kconfig @@ -19,5 +19,12 @@ config MODULE_PERIPH_SPI config MODULE_SAUL_NRF_VDDH bool "Internal Voltage Sensor" depends on HAS_PERIPH_ADC + select MODULE_PERIPH_ADC endif # TEST_KCONFIG + +config HAVE_SAUL_NRF_VDDH + bool + select MODULE_SAUL_NRF_VDDH if MODULE_SAUL_DEFAULT + help + Indicates that internal voltage sensor is present. diff --git a/tests/periph_qdec/boards_modded/nrf52840dk/Kconfig b/tests/periph_qdec/boards_modded/nrf52840dk/Kconfig index ae66d3bed9..787b866418 100644 --- a/tests/periph_qdec/boards_modded/nrf52840dk/Kconfig +++ b/tests/periph_qdec/boards_modded/nrf52840dk/Kconfig @@ -18,4 +18,6 @@ config BOARD_NRF52840DK select HAS_VDD_LC_FILTER_REG0 select HAVE_MTD_SPI_NOR + select MODULE_BOARDS_COMMON_NRF52XXXDK if TEST_KCONFIG + source "$(RIOTBOARD)/common/nrf52xxxdk/Kconfig"