Merge pull request #10384 from bergzand/pr/netdev/ref_nid

netdev_ieee802154/radios: refactor PAN ID reset to generic ieee802154 reset
This commit is contained in:
Sebastian Meiling 2018-11-28 12:15:45 +01:00 committed by GitHub
commit 4eaf1d8135
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 6 additions and 37 deletions

View File

@ -57,7 +57,6 @@ extern "C" {
#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 */

View File

@ -88,7 +88,6 @@ void cc2538_init(void)
cc2538_set_tx_power(CC2538_RF_POWER_DEFAULT);
cc2538_set_chan(CC2538_RF_CHANNEL_DEFAULT);
cc2538_set_pan(CC2538_RF_PANID_DEFAULT);
cc2538_set_addr_long(cc2538_get_eui64_primary());
/* Select the observable signals (maximum of three) */

View File

@ -381,7 +381,6 @@ static int _init(netdev_t *netdev)
cc2538_rf_t *dev = (cc2538_rf_t *) netdev;
_dev = netdev;
uint16_t pan = cc2538_get_pan();
uint16_t chan = cc2538_get_chan();
uint16_t addr_short = cc2538_get_addr_short();
uint64_t addr_long = cc2538_get_addr_long();
@ -389,8 +388,6 @@ static int _init(netdev_t *netdev)
netdev_ieee802154_reset(&dev->netdev);
/* Initialise netdev_ieee802154_t struct */
netdev_ieee802154_set(&dev->netdev, NETOPT_NID,
&pan, sizeof(pan));
netdev_ieee802154_set(&dev->netdev, NETOPT_CHANNEL,
&chan, sizeof(chan));
netdev_ieee802154_set(&dev->netdev, NETOPT_ADDRESS,

View File

@ -297,7 +297,6 @@ static int _init(netdev_t *netdev)
assert(dev != NULL);
dev->netdev.chan = IEEE802154_DEFAULT_CHANNEL;
dev->netdev.pan = IEEE802154_DEFAULT_PANID;
return 0;
}

View File

@ -73,8 +73,6 @@ void at86rf2xx_reset(at86rf2xx_t *dev)
at86rf2xx_set_addr_long(dev, ntohll(addr_long.uint64.u64));
at86rf2xx_set_addr_short(dev, ntohs(addr_long.uint16[0].u16));
/* set default PAN id */
at86rf2xx_set_pan(dev, AT86RF2XX_DEFAULT_PANID);
/* set default channel */
at86rf2xx_set_chan(dev, AT86RF2XX_DEFAULT_CHANNEL);
/* set default TX power */

View File

@ -222,7 +222,6 @@ void at86rf2xx_set_pan(at86rf2xx_t *dev, uint16_t pan)
{
le_uint16_t le_pan = byteorder_btols(byteorder_htons(pan));
dev->netdev.pan = pan;
DEBUG("pan0: %u, pan1: %u\n", le_pan.u8[0], le_pan.u8[1]);
at86rf2xx_reg_write(dev, AT86RF2XX_REG__PAN_ID_0, le_pan.u8[0]);
at86rf2xx_reg_write(dev, AT86RF2XX_REG__PAN_ID_1, le_pan.u8[1]);

View File

@ -58,7 +58,6 @@ int cc2420_init(cc2420_t *dev)
addr[0] |= 0x02;
cc2420_set_addr_short(dev, &addr[6]);
cc2420_set_addr_long(dev, addr);
cc2420_set_pan(dev, CC2420_PANID_DEFAULT);
cc2420_set_chan(dev, CC2420_CHAN_DEFAULT);
cc2420_set_txpower(dev, CC2420_TXPOWER_DEFAULT);

View File

@ -114,7 +114,6 @@ uint16_t cc2420_get_pan(cc2420_t *dev)
void cc2420_set_pan(cc2420_t *dev, uint16_t pan)
{
dev->netdev.pan = pan;
cc2420_ram_write(dev, CC2420_RAM_PANID, (uint8_t *)&pan, 2);
}

View File

@ -67,13 +67,6 @@ extern "C" {
#endif
/** @} */
/**
* @brief Default PAN ID
*
* @todo Read some global network stack specific configuration value
*/
#define AT86RF2XX_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @brief Default TX power (0dBm)
*/

View File

@ -38,11 +38,6 @@ extern "C" {
*/
#define CC2420_PKT_MAXLEN (IEEE802154_FRAME_LEN_MAX)
/**
* @brief PAN ID configuration
*/
#define CC2420_PANID_DEFAULT (IEEE802154_DEFAULT_PANID)
/**
* @name Channel configuration
* @{

View File

@ -42,11 +42,6 @@ extern "C" {
*/
#define KW2XRF_MAX_PKT_LENGTH (IEEE802154_FRAME_LEN_MAX)
/**
* @brief Default PAN ID used after initialization
*/
#define KW2XRF_DEFAULT_PANID (IEEE802154_DEFAULT_PANID)
/**
* @name Default channel used after initialization
*

View File

@ -97,7 +97,6 @@ void kw2xrf_reset_phy(kw2xrf_t *dev)
kw2xrf_set_channel(dev, KW2XRF_DEFAULT_CHANNEL);
kw2xrf_set_pan(dev, KW2XRF_DEFAULT_PANID);
kw2xrf_set_address(dev);
kw2xrf_set_cca_mode(dev, 1);
@ -115,6 +114,6 @@ void kw2xrf_reset_phy(kw2xrf_t *dev)
kw2xrf_enable_irq_b(dev);
DEBUG("[kw2xrf] init phy and (re)set to channel %d and pan %d.\n",
KW2XRF_DEFAULT_CHANNEL, KW2XRF_DEFAULT_PANID);
DEBUG("[kw2xrf] init phy and (re)set to channel %d.\n",
KW2XRF_DEFAULT_CHANNEL);
}

View File

@ -255,14 +255,11 @@ void kw2xrf_set_sequence(kw2xrf_t *dev, kw2xrf_physeq_t seq)
void kw2xrf_set_pan(kw2xrf_t *dev, uint16_t pan)
{
dev->netdev.pan = pan;
uint8_t val_ar[2];
val_ar[1] = (pan >> 8);
val_ar[0] = (uint8_t)pan;
kw2xrf_write_iregs(dev, MKW2XDMI_MACPANID0_LSB, val_ar, 2);
LOG_DEBUG("[kw2xrf] set pan to: 0x%x\n", pan);
dev->netdev.pan = pan;
}
void kw2xrf_set_addr_short(kw2xrf_t *dev, uint16_t addr)

View File

@ -56,8 +56,6 @@ void mrf24j40_reset(mrf24j40_t *dev)
mrf24j40_set_addr_long(dev, ntohll(addr_long.uint64.u64));
mrf24j40_set_addr_short(dev, ntohs(addr_long.uint16[0].u16));
/* set default PAN id */
mrf24j40_set_pan(dev, IEEE802154_DEFAULT_PANID);
mrf24j40_set_chan(dev, IEEE802154_DEFAULT_CHANNEL);
/* configure Immediate Sleep and Wake-Up mode */

View File

@ -252,7 +252,6 @@ void mrf24j40_set_pan(mrf24j40_t *dev, uint16_t pan)
{
le_uint16_t le_pan = byteorder_btols(byteorder_htons(pan));
dev->netdev.pan = pan;
DEBUG("pan0: %u, pan1: %u\n", le_pan.u8[0], le_pan.u8[1]);
mrf24j40_reg_write_short(dev, MRF24J40_REG_PANIDL, le_pan.u8[0]);
mrf24j40_reg_write_short(dev, MRF24J40_REG_PANIDH, le_pan.u8[1]);

View File

@ -63,6 +63,10 @@ void netdev_ieee802154_reset(netdev_ieee802154_t *dev)
#elif MODULE_GNRC
dev->proto = GNRC_NETTYPE_UNDEF;
#endif
/* Initialize PAN ID and call netdev::set to propagate it */
dev->pan = IEEE802154_DEFAULT_PANID;
dev->netdev.driver->set(&dev->netdev, NETOPT_NID, &dev->pan, sizeof(dev->pan));
}
int netdev_ieee802154_get(netdev_ieee802154_t *dev, netopt_t opt, void *value,