mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-01-18 12:52:44 +01:00
Merge pull request #10274 from gebart/gnrc/netif-rawmode-rxinfo
gnrc_netif_ieee802154: Provide LQI, RSSI in raw mode via netif_hdr
This commit is contained in:
commit
d07ac86ea1
@ -96,7 +96,23 @@ static gnrc_pktsnip_t *_recv(gnrc_netif_t *netif)
|
||||
gnrc_pktbuf_release(pkt);
|
||||
return NULL;
|
||||
}
|
||||
if (!(netif->flags & GNRC_NETIF_FLAGS_RAWMODE)) {
|
||||
if (netif->flags & GNRC_NETIF_FLAGS_RAWMODE) {
|
||||
/* Raw mode, skip packet processing, but provide rx_info via
|
||||
* GNRC_NETTYPE_NETIF */
|
||||
gnrc_pktsnip_t *netif_snip = gnrc_netif_hdr_build(NULL, 0, NULL, 0);
|
||||
if (netif_snip == NULL) {
|
||||
DEBUG("_recv_ieee802154: no space left in packet buffer\n");
|
||||
gnrc_pktbuf_release(pkt);
|
||||
return NULL;
|
||||
}
|
||||
gnrc_netif_hdr_t *hdr = netif_snip->data;
|
||||
hdr->lqi = rx_info.lqi;
|
||||
hdr->rssi = rx_info.rssi;
|
||||
hdr->if_pid = thread_getpid();
|
||||
LL_APPEND(pkt, netif_snip);
|
||||
}
|
||||
else {
|
||||
/* Normal mode, try to parse the frame according to IEEE 802.15.4 */
|
||||
gnrc_pktsnip_t *ieee802154_hdr, *netif_hdr;
|
||||
gnrc_netif_hdr_t *hdr;
|
||||
#if ENABLE_DEBUG
|
||||
|
Loading…
Reference in New Issue
Block a user