diff options
author | Miquel Raynal <miquel.raynal@bootlin.com> | 2022-04-07 12:08:59 +0200 |
---|---|---|
committer | Stefan Schmidt <stefan@datenfreihafen.org> | 2022-04-25 20:52:22 +0200 |
commit | 2b1c9dbf047b57f1df988d90046fc3394926cc0b (patch) | |
tree | 4dabe8eea11aa834614bb037a4b48af0d87eab69 /drivers/net/ieee802154/at86rf230.c | |
parent | net: mac802154: Create an error helper for asynchronous offloading errors (diff) | |
download | linux-2b1c9dbf047b57f1df988d90046fc3394926cc0b.tar.xz linux-2b1c9dbf047b57f1df988d90046fc3394926cc0b.zip |
net: ieee802154: at86rf230: Call _xmit_hw_error() when failing to offload frames
If we end up at this location, it means that there was likely a hardware
issue (either a bus error when asynchronously offloading the packet to
the transceiver, or the transceiver took too long for some state
change). In this case it was decided to return IEEE802154_SYSTEM_ERROR
through the ieee802154_xmit_hw_error() helper dedicated to non
IEEE802.15.4 specific errors.
Let's use this helper instead of (almost) open-coding it.
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Acked-by: Alexander Aring <aahringo@redhat.com>
Link: https://lore.kernel.org/r/20220407100903.1695973-7-miquel.raynal@bootlin.com
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Diffstat (limited to 'drivers/net/ieee802154/at86rf230.c')
-rw-r--r-- | drivers/net/ieee802154/at86rf230.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/ieee802154/at86rf230.c b/drivers/net/ieee802154/at86rf230.c index 563031ce76f0..0536ccd55e70 100644 --- a/drivers/net/ieee802154/at86rf230.c +++ b/drivers/net/ieee802154/at86rf230.c @@ -346,8 +346,7 @@ at86rf230_async_error_recover_complete(void *context) if (lp->was_tx) { lp->was_tx = 0; - dev_kfree_skb_any(lp->tx_skb); - ieee802154_wake_queue(lp->hw); + ieee802154_xmit_hw_error(lp->hw, lp->tx_skb); } } |