forked from RIOT-OS/RIOT
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request RIOT-OS#10268 from SemjonKerner/add_nrf154
cpu/nrf52/radio: initial support for nrf52's ieee802.15.4 radio
- Loading branch information
Showing
16 changed files
with
660 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
include $(RIOTCPU)/nrf52/Makefile.dep | ||
|
||
ifneq (,$(filter skald,$(USEMODULE))) | ||
USEMODULE += nrfble | ||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,7 @@ | ||
include $(RIOTBOARD)/common/nrf52xxxdk/Makefile.dep | ||
|
||
ifneq (,$(filter gnrc_netdev_default netdev_default,$(USEMODULE))) | ||
ifeq (,$(filter nrfmin,$(USEMODULE))) | ||
USEMODULE += nrf802154 | ||
endif | ||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,5 @@ | ||
include $(RIOTBOARD)/common/nrf52xxxdk/Makefile.features | ||
|
||
# Various other features (if any) | ||
FEATURES_PROVIDED += radio_nrf802154 | ||
FEATURES_PROVIDED += periph_pwm |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
ifneq (,$(filter nrf802154,$(USEMODULE))) | ||
FEATURES_REQUIRED += periph_timer | ||
FEATURES_REQUIRED += radio_nrf802154 | ||
USEMODULE += luid | ||
USEMODULE += netdev_ieee802154 | ||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
/* | ||
* Copyright (C) 2019 Freie Universität Berlin | ||
* | ||
* 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. | ||
*/ | ||
|
||
/** | ||
* @defgroup drivers_nrf52_802154 IEEE802.15.4 Driver for nRF52840 SoCs | ||
* @ingroup drivers_netdev | ||
* @brief Driver for using the nRF52's radio in IEEE802.15.4 mode | ||
* | ||
* ## Implementation state ## | ||
* Netdev events supported: | ||
* | ||
* - NETDEV_EVENT_RX_COMPLETE | ||
* - NETDEV_EVENT_TX_COMPLETE | ||
* | ||
* Transmission options not yet impemented: | ||
* - Send acknowledgement for packages | ||
* - Request acknowledgement | ||
* - Retransmit unacked packages | ||
* - Carrier Sense Multiple Access (CSMA) and Implementation of Clear Channel | ||
* Assessment Control (CCACTRL) | ||
* | ||
* @{ | ||
* | ||
* @file | ||
* @brief Driver interface for using the nRF52 in IEEE802.15.4 mode | ||
* | ||
* @author Hauke Petersen <[email protected]> | ||
* @author Semjon Kerner <[email protected]> | ||
*/ | ||
|
||
#ifndef NRF802154_H | ||
#define NRF802154_H | ||
|
||
#include "net/netdev/ieee802154.h" | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* @brief Export the netdev device descriptor | ||
*/ | ||
extern netdev_ieee802154_t nrf802154_dev; | ||
|
||
/** | ||
* @brief IEEE 802.15.4 radio timer configuration | ||
* | ||
* this radio relies on a dedicated hardware timer to maintain IFS | ||
* the default timer may be overwritten in the board configuration | ||
*/ | ||
#ifndef NRF802154_TIMER | ||
#define NRF802154_TIMER TIMER_DEV(1) | ||
#endif | ||
|
||
#endif /* NRF802154_H */ | ||
/** @} */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
MODULE = nrf802154 | ||
|
||
include $(RIOTBASE)/Makefile.base |
Oops, something went wrong.