From 20329ff1d42acebfe674a6f2c03a3e1c0c7ed7eb Mon Sep 17 00:00:00 2001 From: Jose Alamos Date: Mon, 23 Nov 2020 12:58:38 +0100 Subject: [PATCH 1/2] netdev: add legacy pseudomodule --- examples/gnrc_networking/Makefile | 3 +++ makefiles/pseudomodules.inc.mk | 1 + 2 files changed, 4 insertions(+) diff --git a/examples/gnrc_networking/Makefile b/examples/gnrc_networking/Makefile index 610d0bc501..e96762ea47 100644 --- a/examples/gnrc_networking/Makefile +++ b/examples/gnrc_networking/Makefile @@ -31,6 +31,9 @@ USEMODULE += netstats_l2 USEMODULE += netstats_ipv6 USEMODULE += netstats_rpl +# Uncomment this to enable legacy support of netdev for IEEE 802.15.4 radios. +# USEMODULE += netdev_ieee802154_legacy + # Comment this out to disable code in RIOT that does safety checking # which is not needed in a production environment but helps in the # development process: diff --git a/makefiles/pseudomodules.inc.mk b/makefiles/pseudomodules.inc.mk index 41295be5f5..7ac0d4c7ef 100644 --- a/makefiles/pseudomodules.inc.mk +++ b/makefiles/pseudomodules.inc.mk @@ -133,6 +133,7 @@ PSEUDOMODULES += ztimer% # ztimer's main module is called "ztimer_core" NO_PSEUDOMODULES += ztimer_core NO_PSEUDOMODULES += netdev_ieee802154_submac +NO_PSEUDOMODULES += netdev_ieee802154_legacy # print ascii representation in function od_hex_dump() PSEUDOMODULES += od_string From 264d0e3354593bb3bb29f368480b12843dbfb035 Mon Sep 17 00:00:00 2001 From: Benjamin Valentin Date: Thu, 1 Oct 2020 17:27:38 +0200 Subject: [PATCH 2/2] cpu/nrf52: nrf802154: default to netdev_ieee802154_submac The basic nrf802154 driver lacks ACK handling and retransmissions, which degrades it's usefulness. The 802.15.4 Sub-MAC fixes all those issues. Enable it by default for this driver to make it better behaved. --- cpu/nrf52/Makefile.dep | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cpu/nrf52/Makefile.dep b/cpu/nrf52/Makefile.dep index 947ec7407a..e84d04c63e 100644 --- a/cpu/nrf52/Makefile.dep +++ b/cpu/nrf52/Makefile.dep @@ -5,6 +5,9 @@ ifneq (,$(filter nrf802154,$(USEMODULE))) FEATURES_REQUIRED += radio_nrf802154 USEMODULE += luid USEMODULE += netdev_ieee802154 + ifeq (,$(filter netdev_ieee802154_legacy,$(USEMODULE))) + USEMODULE += netdev_ieee802154_submac + endif endif # The nrf52832 requires gpio IRQ with SPI to work around errata 58