diff options
author | Marc Kleine-Budde <mkl@pengutronix.de> | 2023-04-23 14:47:40 +0300 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2023-10-05 22:45:18 +0300 |
commit | 18c98714748364354701c18e93b60f6550171014 (patch) | |
tree | 1616942b604fbdac2850071d9bbb1c7fae96cf91 /drivers/net/can | |
parent | e26ccc4658c10fc949e475238f94a20b19e96b56 (diff) | |
download | linux-18c98714748364354701c18e93b60f6550171014.tar.xz |
can: at91_can: at91_irq_tx(): remove one level of indention
Improve code readability by removing one level of indention.
If a mailbox is not ready, continue the loop early.
Link: https://lore.kernel.org/all/20231005-at91_can-rx_offload-v2-3-9987d53600e0@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can')
-rw-r--r-- | drivers/net/can/at91_can.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/net/can/at91_can.c b/drivers/net/can/at91_can.c index 367ccf109652..966980d4b5dd 100644 --- a/drivers/net/can/at91_can.c +++ b/drivers/net/can/at91_can.c @@ -844,15 +844,14 @@ static void at91_irq_tx(struct net_device *dev, u32 reg_sr) * parked in the echo queue. */ reg_msr = at91_read(priv, AT91_MSR(mb)); - if (likely(reg_msr & AT91_MSR_MRDY && - ~reg_msr & AT91_MSR_MABT)) { - /* _NOTE_: subtract AT91_MB_TX_FIRST offset from mb! */ - dev->stats.tx_bytes += - can_get_echo_skb(dev, - mb - get_mb_tx_first(priv), - NULL); - dev->stats.tx_packets++; - } + if (unlikely(!(reg_msr & AT91_MSR_MRDY && + ~reg_msr & AT91_MSR_MABT))) + continue; + + /* _NOTE_: subtract AT91_MB_TX_FIRST offset from mb! */ + dev->stats.tx_bytes += + can_get_echo_skb(dev, mb - get_mb_tx_first(priv), NULL); + dev->stats.tx_packets++; } /* restart queue if we don't have a wrap around but restart if |