diff options
author | Miquel Raynal <miquel.raynal@bootlin.com> | 2022-04-07 13:08:59 +0300 |
---|---|---|
committer | Stefan Schmidt <stefan@datenfreihafen.org> | 2022-04-25 21:52:22 +0300 |
commit | 2b1c9dbf047b57f1df988d90046fc3394926cc0b (patch) | |
tree | 4dabe8eea11aa834614bb037a4b48af0d87eab69 /drivers/net/ieee802154/at86rf230.c | |
parent | 5a1b57c0dde9b93ba8261fa1c81f9aae2bac284a (diff) | |
download | linux-2b1c9dbf047b57f1df988d90046fc3394926cc0b.tar.xz |
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); } } |