ieee802154: Supports multiple incoming superframe events
This commit is contained in:
parent
06b99588c0
commit
032deb5f49
|
@ -1515,15 +1515,27 @@ static void mac802154_sfevent(FAR const struct ieee802154_radiocb_s *radiocb,
|
||||||
|
|
||||||
mac802154_takesem(&priv->exclsem, false);
|
mac802154_takesem(&priv->exclsem, false);
|
||||||
|
|
||||||
/* Check if there is any reason to update the beacon */
|
switch (sfevent)
|
||||||
|
|
||||||
if (priv->beaconupdate)
|
|
||||||
{
|
{
|
||||||
mac802154_updatebeacon(priv);
|
case IEEE802154_SFEVENT_ENDOFACTIVE:
|
||||||
|
{
|
||||||
|
wlinfo("End of superframe\n");
|
||||||
|
|
||||||
priv->radio->beaconupdate(priv->radio, &priv->beaconframe[priv->bf_ind]);
|
/* Check if there is any reason to update the beacon */
|
||||||
|
|
||||||
|
if (priv->beaconupdate)
|
||||||
|
{
|
||||||
|
mac802154_updatebeacon(priv);
|
||||||
|
|
||||||
|
priv->radio->beaconupdate(priv->radio, &priv->beaconframe[priv->bf_ind]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
mac802154_givesem(&priv->exclsem);
|
mac802154_givesem(&priv->exclsem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue