mirror of
https://github.com/apache/nuttx.git
synced 2026-06-06 00:14:22 +08:00
Merged in antmerlino/nuttx/sixlowpan-removeconversions (pull request #997)
ieee802154/sixlowpan: Removes unnecessary conversions that were happening due to a misunderstanding of byte ordering with EUI-64 # Conflicts: # drivers/wireless/ieee802154/xbee/xbee_netdev.c Approved-by: Gregory Nutt <gnutt@nuttx.org>
This commit is contained in:
committed by
Gregory Nutt
parent
223722d6d3
commit
fc1780d63e
@@ -206,17 +206,7 @@ int sixlowpan_meta_data(FAR struct radio_driver_s *radio,
|
||||
/* Extended destination address mode */
|
||||
|
||||
meta->destaddr.mode = IEEE802154_ADDRMODE_EXTENDED;
|
||||
|
||||
/* 802.15.4 layer expects address in Little-Endian byte order */
|
||||
|
||||
meta->destaddr.eaddr[0] = pktmeta->dest.nm_addr[7];
|
||||
meta->destaddr.eaddr[1] = pktmeta->dest.nm_addr[6];
|
||||
meta->destaddr.eaddr[2] = pktmeta->dest.nm_addr[5];
|
||||
meta->destaddr.eaddr[3] = pktmeta->dest.nm_addr[4];
|
||||
meta->destaddr.eaddr[4] = pktmeta->dest.nm_addr[3];
|
||||
meta->destaddr.eaddr[5] = pktmeta->dest.nm_addr[2];
|
||||
meta->destaddr.eaddr[6] = pktmeta->dest.nm_addr[1];
|
||||
meta->destaddr.eaddr[7] = pktmeta->dest.nm_addr[0];
|
||||
sixlowpan_eaddrcopy(&meta->destaddr.eaddr, pktmeta->dest.nm_addr);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -703,20 +703,8 @@ int sixlowpan_extract_srcaddr(FAR struct radio_driver_s *radio,
|
||||
else
|
||||
{
|
||||
srcaddr->nv_addrlen = NET_6LOWPAN_EADDRSIZE;
|
||||
|
||||
/* MAC802154 gives us Extended Address in Little Endinan Order, but
|
||||
* we need it in Network Order.
|
||||
*/
|
||||
|
||||
srcaddr->nv_addr[0] = ind->src.eaddr[7];
|
||||
srcaddr->nv_addr[1] = ind->src.eaddr[6];
|
||||
srcaddr->nv_addr[2] = ind->src.eaddr[5];
|
||||
srcaddr->nv_addr[3] = ind->src.eaddr[4];
|
||||
srcaddr->nv_addr[4] = ind->src.eaddr[3];
|
||||
srcaddr->nv_addr[5] = ind->src.eaddr[2];
|
||||
srcaddr->nv_addr[6] = ind->src.eaddr[1];
|
||||
srcaddr->nv_addr[7] = ind->src.eaddr[0];
|
||||
}
|
||||
memcpy(srcaddr->nv_addr, ind->src.eaddr, NET_6LOWPAN_EADDRSIZE);
|
||||
}
|
||||
|
||||
return OK;
|
||||
}
|
||||
@@ -788,19 +776,7 @@ int sixlowpan_extract_destaddr(FAR struct radio_driver_s *radio,
|
||||
else
|
||||
{
|
||||
destaddr->nv_addrlen = NET_6LOWPAN_EADDRSIZE;
|
||||
|
||||
/* MAC802154 gives us Extended Address in Little Endinan Order, but
|
||||
* we need it in Network Order.
|
||||
*/
|
||||
|
||||
destaddr->nv_addr[0] = ind->dest.eaddr[7];
|
||||
destaddr->nv_addr[1] = ind->dest.eaddr[6];
|
||||
destaddr->nv_addr[2] = ind->dest.eaddr[5];
|
||||
destaddr->nv_addr[3] = ind->dest.eaddr[4];
|
||||
destaddr->nv_addr[4] = ind->dest.eaddr[3];
|
||||
destaddr->nv_addr[5] = ind->dest.eaddr[2];
|
||||
destaddr->nv_addr[6] = ind->dest.eaddr[1];
|
||||
destaddr->nv_addr[7] = ind->dest.eaddr[0];
|
||||
memcpy(destaddr->nv_addr, ind->dest.eaddr, NET_6LOWPAN_EADDRSIZE);
|
||||
}
|
||||
|
||||
return OK;
|
||||
|
||||
Reference in New Issue
Block a user