From f0790ebca19a6e3913e3e5e2e8e3b971074b158e Mon Sep 17 00:00:00 2001 From: MrKevinWeiss Date: Fri, 3 Dec 2021 12:16:32 +0100 Subject: [PATCH 1/4] sys/kconfig: Update todo --- sys/Kconfig.stdio | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/Kconfig.stdio b/sys/Kconfig.stdio index db9577e413..aa2610f29b 100644 --- a/sys/Kconfig.stdio +++ b/sys/Kconfig.stdio @@ -13,7 +13,7 @@ choice STDIO_IMPLEMENTATION default MODULE_STDIO_NATIVE if CPU_ARCH_NATIVE default MODULE_STDIO_UART -# TODO: Add MODULE_STDIO_CDC_ACM, MODULE_STDIO_RTT, and MODULE_STDIO_ETHOS +# TODO: Add MODULE_STDIO_RTT, and MODULE_STDIO_ETHOS config MODULE_SLIPDEV_STDIO bool "SLIP network device" From 05dd46936be4b39f54b04fa0ae5e91bab9e8e97e Mon Sep 17 00:00:00 2001 From: MrKevinWeiss Date: Mon, 6 Dec 2021 09:04:53 +0100 Subject: [PATCH 2/4] sys/usb_board_reset: Model kconfig --- sys/Kconfig | 1 + sys/usb_board_reset/Kconfig | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 sys/usb_board_reset/Kconfig diff --git a/sys/Kconfig b/sys/Kconfig index 4548ca4a56..f132f813b1 100644 --- a/sys/Kconfig +++ b/sys/Kconfig @@ -79,6 +79,7 @@ rsource "timex/Kconfig" rsource "tsrb/Kconfig" rsource "uri_parser/Kconfig" rsource "usb/Kconfig" +rsource "usb_board_reset/Kconfig" rsource "vfs/Kconfig" rsource "xtimer/Kconfig" rsource "ztimer/Kconfig" diff --git a/sys/usb_board_reset/Kconfig b/sys/usb_board_reset/Kconfig new file mode 100644 index 0000000000..9962368c0e --- /dev/null +++ b/sys/usb_board_reset/Kconfig @@ -0,0 +1,11 @@ +# Copyright (c) 2021 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 MODULE_USB_BOARD_RESET + bool "Trigger a board reset via USB CDC ACM" + depends on TEST_KCONFIG + depends on MODULE_USBUS_CDC_ACM From b6e7ab3443c521d24214e05be8453d0664804711 Mon Sep 17 00:00:00 2001 From: MrKevinWeiss Date: Mon, 6 Dec 2021 09:06:12 +0100 Subject: [PATCH 3/4] boards/adafruit-itsybitsy-m4: Model kconfig --- boards/adafruit-itsybitsy-m4/Kconfig | 4 ++++ boards/adafruit-itsybitsy-m4/Makefile.features | 6 ++++++ .../adafruit-itsybitsy-m4.config | 3 +++ boards/common/samdx1-arduino-bootloader/Kconfig | 12 ++++++++++++ 4 files changed, 25 insertions(+) create mode 100644 boards/adafruit-itsybitsy-m4/adafruit-itsybitsy-m4.config create mode 100644 boards/common/samdx1-arduino-bootloader/Kconfig diff --git a/boards/adafruit-itsybitsy-m4/Kconfig b/boards/adafruit-itsybitsy-m4/Kconfig index 1a1ff60fb4..828b0b0a08 100644 --- a/boards/adafruit-itsybitsy-m4/Kconfig +++ b/boards/adafruit-itsybitsy-m4/Kconfig @@ -22,7 +22,11 @@ config BOARD_ADAFRUIT_ITSYBITSY_M4 select HAS_PERIPH_TIMER select HAS_PERIPH_UART select HAS_PERIPH_USBDEV + select HAVE_SAUL_GPIO + select MODULE_USB_BOARD_RESET if MODULE_STDIO_CDC_ACM select HAVE_MTD_SPI_NOR # This specific board requires SPI_ON_QSPI for the MTD_SPI_NOR select MODULE_PERIPH_SPI_ON_QSPI if MODULE_MTD_SPI_NOR + +source "$(RIOTBOARD)/common/samdx1-arduino-bootloader/Kconfig" diff --git a/boards/adafruit-itsybitsy-m4/Makefile.features b/boards/adafruit-itsybitsy-m4/Makefile.features index 9f48a1e4c3..c0d3578538 100644 --- a/boards/adafruit-itsybitsy-m4/Makefile.features +++ b/boards/adafruit-itsybitsy-m4/Makefile.features @@ -13,3 +13,9 @@ FEATURES_PROVIDED += periph_spi FEATURES_PROVIDED += periph_timer FEATURES_PROVIDED += periph_uart FEATURES_PROVIDED += periph_usbdev + +# This configuration enables modules that are only available when using Kconfig +# module modelling +ifeq (1, $(TEST_KCONFIG)) + KCONFIG_ADD_CONFIG += $(BOARDDIR)/adafruit-itsybitsy-m4.config +endif diff --git a/boards/adafruit-itsybitsy-m4/adafruit-itsybitsy-m4.config b/boards/adafruit-itsybitsy-m4/adafruit-itsybitsy-m4.config new file mode 100644 index 0000000000..7699f35a5c --- /dev/null +++ b/boards/adafruit-itsybitsy-m4/adafruit-itsybitsy-m4.config @@ -0,0 +1,3 @@ +CONFIG_MODULE_USBUS=y +CONFIG_MODULE_USBUS_CDC_ACM=y +CONFIG_MODULE_STDIO_CDC_ACM=y diff --git a/boards/common/samdx1-arduino-bootloader/Kconfig b/boards/common/samdx1-arduino-bootloader/Kconfig new file mode 100644 index 0000000000..15eee855cf --- /dev/null +++ b/boards/common/samdx1-arduino-bootloader/Kconfig @@ -0,0 +1,12 @@ +# Copyright (c) 2021 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 MODULE_BOARDS_COMMON_SAMDX1-ARDUINO-BOOTLOADER + bool + default y if MODULE_STDIO_CDC_ACM + depends on TEST_KCONFIG + help + Common code of samdx1 boards with an arduino bootloader From d18404354007e83ad069e3094c223ae4c4e40271 Mon Sep 17 00:00:00 2001 From: MrKevinWeiss Date: Mon, 6 Dec 2021 09:06:34 +0100 Subject: [PATCH 4/4] .murdock: Add adafruit-itsybitsy-m4 to kconfig test --- .murdock | 1 + 1 file changed, 1 insertion(+) diff --git a/.murdock b/.murdock index 9c7b455c88..f985e303e5 100755 --- a/.murdock +++ b/.murdock @@ -8,6 +8,7 @@ : ${TEST_BOARDS_LLVM_COMPILE:=""} : ${TEST_KCONFIG_BOARDS_AVAILABLE:=" +adafruit-itsybitsy-m4 arduino-due arduino-leonardo arduino-mega2560