ieee802154: centralize default values

pr/spi.typo
Martine Lenders 7 years ago committed by Martine Lenders
parent 46bfeae81e
commit 20e1fce5b7

@ -24,6 +24,7 @@
#include <stdbool.h>
#include "net/ieee802154.h"
#include "net/netdev2.h"
#include "net/netdev2/ieee802154.h"
@ -45,25 +46,18 @@ extern "C" {
#define IEEE802154_MIN_FREQ (2405) /**< Min. frequency (2405 MHz) */
#define IEEE802154_MAX_FREQ (2480) /**< Max. frequency (2480 MHz) */
#define IEEE802154_MIN_CHANNEL (11) /**< Min. channel (2405 MHz) */
#define IEEE802154_MAX_CHANNEL (26) /**< Max. channel (2480 MHz) */
#define IEEE802154_CHANNEL_SPACING (5) /**< Channel spacing in MHz */
#define IEEE802154_CHAN2FREQ(chan) ( IEEE802154_MIN_FREQ + ((chan) - IEEE802154_MIN_CHANNEL) * IEEE802154_CHANNEL_SPACING )
#define IEEE802154_FREQ2CHAN(freq) ( IEEE802154_MIN_CHANNEL + ((freq) - IEEE802154_MIN_FREQ) / IEEE802154_CHANNEL_SPACING )
#define IEEE802154_CHAN2FREQ(chan) ( IEEE802154_MIN_FREQ + ((chan) - IEEE802154_CHANNEL_MIN) * IEEE802154_CHANNEL_SPACING )
#define IEEE802154_FREQ2CHAN(freq) ( IEEE802154_CHANNEL_MIN + ((freq) - IEEE802154_MIN_FREQ) / IEEE802154_CHANNEL_SPACING )
/* /TODO */
#define CC2538_MIN_FREQ (2394)
#define CC2538_MAX_FREQ (2507)
#define CC2538_RF_POWER_DEFAULT (3) /**< Default output power in dBm */
#ifdef DEFAULT_CHANNEL
#define CC2538_RF_CHANNEL_DEFAULT (DEFAULT_CHANNEL)
#endif
#ifndef CC2538_RF_CHANNEL_DEFAULT
#define CC2538_RF_CHANNEL_DEFAULT (26U)
#endif
#define CC2538_RF_PANID_DEFAULT (0x0023)
#define CC2538_RF_POWER_DEFAULT (IEEE802154_DEFAULT_TXPOWER) /**< Default output power in dBm */
#define CC2538_RF_CHANNEL_DEFAULT (IEEE802154_DEFAULT_CHANNEL)
#define CC2538_RF_PANID_DEFAULT (IEEE802154_DEFAULT_PANID)
#define OUTPUT_POWER_MIN (-24) /**< Min output power in dBm */
#define OUTPUT_POWER_MAX (7) /**< Max output power in dBm */

@ -169,15 +169,15 @@ void cc2538_set_chan(unsigned int chan)
{
DEBUG("%s(%u): Setting channel to ", __FUNCTION__, chan);
if (chan < IEEE802154_MIN_CHANNEL) {
chan = IEEE802154_MIN_CHANNEL;
if (chan < IEEE802154_CHANNEL_MIN) {
chan = IEEE802154_CHANNEL_MIN;
}
else if (chan > IEEE802154_MAX_CHANNEL) {
chan = IEEE802154_MAX_CHANNEL;
else if (chan > IEEE802154_CHANNEL_MAX) {
chan = IEEE802154_CHANNEL_MAX;
}
DEBUG("%i (range %i-%i)\n", chan, IEEE802154_MIN_CHANNEL,
IEEE802154_MAX_CHANNEL);
DEBUG("%i (range %i-%i)\n", chan, IEEE802154_CHANNEL_MIN,
IEEE802154_CHANNEL_MAX);
cc2538_set_freq(IEEE802154_CHAN2FREQ(chan));
}

@ -187,8 +187,8 @@ static int _set(netdev2_t *netdev, netopt_t opt, void *value, size_t value_len)
}
else {
uint8_t chan = ((uint8_t *)value)[0];
if (chan < IEEE802154_MIN_CHANNEL ||
chan > IEEE802154_MAX_CHANNEL) {
if (chan < IEEE802154_CHANNEL_MIN ||
chan > IEEE802154_CHANNEL_MAX) {
res = -EINVAL;
}
else {

@ -45,7 +45,7 @@ extern "C" {
/**
* @brief Maximum possible packet size in byte
*/
#define AT86RF2XX_MAX_PKT_LENGTH (127)
#define AT86RF2XX_MAX_PKT_LENGTH (IEEE802154_FRAME_LEN_MAX)
/**
* @brief Default addresses used if the CPUID module is not present
@ -61,23 +61,13 @@ extern "C" {
*/
#ifdef MODULE_AT86RF212B
/* the AT86RF212B has a sub-1GHz radio */
#define AT86RF2XX_MIN_CHANNEL (0)
#define AT86RF2XX_MAX_CHANNEL (10)
#ifdef DEFAULT_CHANNEL
#define AT86RF2XX_DEFAULT_CHANNEL (DEFAULT_CHANNEL)
#endif
#ifndef AT86RF2XX_DEFAULT_CHANNEL
#define AT86RF2XX_DEFAULT_CHANNEL (5)
#endif
#define AT86RF2XX_MIN_CHANNEL (IEEE802154_CHANNEL_MIN_SUBGHZ)
#define AT86RF2XX_MAX_CHANNEL (IEEE802154_CHANNEL_MAX_SUBGHZ)
#define AT86RF2XX_DEFAULT_CHANNEL (IEEE802154_DEFAULT_SUBGHZ_CHANNEL)
#else
#define AT86RF2XX_MIN_CHANNEL (11U)
#define AT86RF2XX_MAX_CHANNEL (26U)
#ifdef DEFAULT_CHANNEL
#define AT86RF2XX_DEFAULT_CHANNEL (DEFAULT_CHANNEL)
#endif
#ifndef AT86RF2XX_DEFAULT_CHANNEL
#define AT86RF2XX_DEFAULT_CHANNEL (26U)
#endif
#define AT86RF2XX_MIN_CHANNEL (IEEE802154_CHANNEL_MIN)
#define AT86RF2XX_MAX_CHANNEL (IEEE802154_CHANNEL_MAX)
#define AT86RF2XX_DEFAULT_CHANNEL (IEEE802154_DEFAULT_CHANNEL)
#endif
/** @} */
@ -86,12 +76,12 @@ extern "C" {
*
* @todo Read some global network stack specific configuration value
*/
#define AT86RF2XX_DEFAULT_PANID (0x0023)
#define AT86RF2XX_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @brief Default TX power (0dBm)
*/
#define AT86RF2XX_DEFAULT_TXPOWER (0U)
#define AT86RF2XX_DEFAULT_TXPOWER (IEEE802154_DEFAULT_TXPOWER)
/**
* @brief Base (minimal) RSSI value in dBm

@ -36,7 +36,7 @@ extern "C" {
/**
* @brief Maximum possible packet size in byte
*/
#define CC2420_PKT_MAXLEN (127U)
#define CC2420_PKT_MAXLEN (IEEE802154_FRAME_LEN_MAX)
/**
* @brief Default addresses used if the CPUID module is not present
@ -49,20 +49,15 @@ extern "C" {
/**
* @brief PAN ID configuration
*/
#define CC2420_PANID_DEFAULT (0x0023)
#define CC2420_PANID_DEFAULT (IEEE802154_DEFAULT_PANID)
/**
* @brief Channel configuration
* @{
*/
#define CC2420_CHAN_MIN (11U)
#define CC2420_CHAN_MAX (26U)
#ifdef DEFAULT_CHANNEL
#define CC2420_CHAN_DEFAULT (DEFAULT_CHANNEL)
#endif
#ifndef CC2420_CHAN_DEFAULT
#define CC2420_CHAN_DEFAULT (26U)
#endif
#define CC2420_CHAN_MIN (IEEE802154_CHANNEL_MIN)
#define CC2420_CHAN_MAX (IEEE802154_CHANNEL_MAX)
#define CC2420_CHAN_DEFAULT (IEEE802154_DEFAULT_CHANNEL)
/** @} */
/**
@ -71,7 +66,7 @@ extern "C" {
*/
#define CC2420_TXPOWER_MIN (-25)
#define CC2420_TXPOWER_MAX (0)
#define CC2420_TXPOWER_DEFAULT (0)
#define CC2420_TXPOWER_DEFAULT (IEEE802154_DEFAULT_TXPOWER)
/** @} */
/**

@ -28,6 +28,7 @@
#include "periph/spi.h"
#include "periph/gpio.h"
#include "net/gnrc/netdev.h"
#include "net/ieee802154.h"
#ifdef __cplusplus
extern "C" {
@ -36,7 +37,7 @@ extern "C" {
/**
* @brief Maximum packet length
*/
#define KW2XRF_MAX_PKT_LENGTH (127U)
#define KW2XRF_MAX_PKT_LENGTH (IEEE802154_FRAME_LEN_MAX)
/**
* @brief Default protocol for data that is coming in
@ -60,7 +61,7 @@ extern "C" {
/**
* @brief Default PAN ID used after initialization
*/
#define KW2XRF_DEFAULT_PANID (0x0023)
#define KW2XRF_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @brief Default channel used after initialization
@ -69,13 +70,13 @@ extern "C" {
#define KW2XRF_DEFAULT_CHANNEL (DEFAULT_CHANNEL)
#endif
#ifndef KW2XRF_DEFAULT_CHANNEL
#define KW2XRF_DEFAULT_CHANNEL (26U)
#define KW2XRF_DEFAULT_CHANNEL (IEEE802154_DEFAULT_CHANNEL)
#endif
/**
* @brief Default TX_POWER in dbm used after initialization
*/
#define KW2XRF_DEFAULT_TX_POWER (0)
#define KW2XRF_DEFAULT_TX_POWER (IEEE802154_DEFAULT_TXPOWER)
/**
* @brief Maximum output power of the kw2x device in dBm

@ -67,17 +67,12 @@ extern "C" {
/**
* @brief Default PAN ID used after initialization
*/
#define XBEE_DEFAULT_PANID (0x0023)
#define XBEE_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @brief Default channel used after initialization
*/
#ifdef DEFAULT_CHANNEL
#define XBEE_DEFAULT_CHANNEL (DEFAULT_CHANNEL)
#endif
#ifndef XBEE_DEFAULT_CHANNEL
#define XBEE_DEFAULT_CHANNEL (23U)
#endif
#define XBEE_DEFAULT_CHANNEL (IEEE802154_DEFAULT_CHANNEL)
/**
* @name Address flags

@ -82,9 +82,9 @@ extern "C" {
* @brief Channel configuration
* @{
*/
#define GNRC_ZEP_MIN_CHANNEL (11U)
#define GNRC_ZEP_MAX_CHANNEL (26U)
#define GNRC_ZEP_DEFAULT_CHANNEL (26U)
#define GNRC_ZEP_MIN_CHANNEL (IEEE802154_CHANNEL_MIN)
#define GNRC_ZEP_MAX_CHANNEL (IEEE802154_CHANNEL_MAX)
#define GNRC_ZEP_DEFAULT_CHANNEL (IEEE802154_DEFAULT_CHANNEL)
/**
* @}
*/
@ -94,7 +94,7 @@ extern "C" {
*
* @todo Read some global network stack specific configuration value
*/
#define GNRC_ZEP_DEFAULT_PANID (0x0023)
#define GNRC_ZEP_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @brief Option flags for the ZEP device

@ -77,6 +77,21 @@ extern "C" {
#define IEEE802154_FCF_SRC_ADDR_LONG (0xc0) /**< source address length is 8 */
/** @} */
/**
* @brief Channel ranges
* @{
*/
/**
* @brief Minimum channel for sub-GHz band
*/
#define IEEE802154_CHANNEL_MIN_SUBGHZ (0U)
#define IEEE802154_CHANNEL_MAX_SUBGHZ (10U) /**< Maximum channel for sub-GHz band */
#define IEEE802154_CHANNEL_MIN (11U) /**< Minimum channel for 2.4 GHz band */
#define IEEE802154_CHANNEL_MAX (26U) /**< Maximum channel for 2.4 GHz band */
/** @} */
#define IEEE802154_FRAME_LEN_MAX (127U) /**< maximum frame length */
/**
* @brief Special address defintions
* @{
@ -97,6 +112,28 @@ extern "C" {
extern const uint8_t ieee802154_addr_bcast[IEEE802154_ADDR_BCAST_LEN];
/** @} */
/**
* @{
* @name Default values
* @brief Default values for devices to choose
*/
#ifndef IEEE802154_DEFAULT_SUBGHZ_CHANNEL
#define IEEE802154_DEFAULT_SUBGHZ_CHANNEL (5U)
#endif
#ifndef IEEE802154_DEFAULT_CHANNEL
#define IEEE802154_DEFAULT_CHANNEL (26U)
#endif
#ifndef IEEE802154_DEFAULT_PANID
#define IEEE802154_DEFAULT_PANID (0x0023U)
#endif
#ifndef IEEE802154_DEFAULT_TXPOWER
#define IEEE802154_DEFAULT_TXPOWER (0) /* in dBm */
#endif
/** @} */
/**
* @brief Initializes an IEEE 802.15.4 MAC frame header in @p buf.
*

Loading…
Cancel
Save