diff --git a/net/sixlowpan/sixlowpan_framelist.c b/net/sixlowpan/sixlowpan_framelist.c index bf57aa50278..db420cbdd39 100644 --- a/net/sixlowpan/sixlowpan_framelist.c +++ b/net/sixlowpan/sixlowpan_framelist.c @@ -550,7 +550,7 @@ int sixlowpan_queue_frames(FAR struct ieee802154_driver_s *ieee, /* And submit the frame to the MAC */ - ninfo("Submitting framelist\n"); + ninfo("Submitting frame\n"); ret = sixlowpan_frame_submit(ieee, &meta, iob); if (ret < 0) { diff --git a/wireless/ieee802154/mac802154.c b/wireless/ieee802154/mac802154.c index cfc59700dad..70e44b68f5c 100644 --- a/wireless/ieee802154/mac802154.c +++ b/wireless/ieee802154/mac802154.c @@ -130,6 +130,7 @@ static void mac802154_resetqueues(FAR struct ieee802154_privmac_s *priv) { sq_addlast((FAR sq_entry_t *)&priv->txdesc_pool[i], &priv->txdesc_queue); } + sem_init(&priv->txdesc_sem, 0, CONFIG_MAC802154_NTXDESC); /* Initialize the notifcation allocation pool */ diff --git a/wireless/ieee802154/mac802154_data.c b/wireless/ieee802154/mac802154_data.c index 12a664e5e4b..6223cd6a033 100644 --- a/wireless/ieee802154/mac802154_data.c +++ b/wireless/ieee802154/mac802154_data.c @@ -340,7 +340,10 @@ int mac802154_req_data(MACHANDLE mac, return OK; errout_with_txdesc: - /* REVISIT: Free TX descriptor, but preserve the IOB. */ + /* Free TX the descriptor, but preserve the IOB. */ + + txdesc->frame = NULL; + mac802154_txdesc_free(priv, txdesc); errout_with_sem: mac802154_givesem(&priv->exclsem);