can: mcp251xfd: mcp251xfd_start_xmit(): use mcp251xfd_get_tx_free() to check TX is...
authorMarc Kleine-Budde <mkl@pengutronix.de>
Sun, 20 Dec 2020 13:02:29 +0000 (14:02 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 27 Jan 2021 09:01:46 +0000 (10:01 +0100)
This patch replaces an open coded check if the TX ring is full by a check if
mcp251xfd_get_tx_free() returns 0.

Link: https://lore.kernel.org/r/20210114153448.1506901-2-mkl@pengutronix.de
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c

index 897c9310266a4d5edeacfc20976bcefa2e90e102..1dbb87c280496a3f28709ef5b2cd35b8716d7a1b 100644 (file)
@@ -2436,7 +2436,7 @@ static netdev_tx_t mcp251xfd_start_xmit(struct sk_buff *skb,
        /* Stop queue if we occupy the complete TX FIFO */
        tx_head = mcp251xfd_get_tx_head(tx_ring);
        tx_ring->head++;
-       if (tx_ring->head - tx_ring->tail >= tx_ring->obj_num)
+       if (mcp251xfd_get_tx_free(tx_ring) == 0)
                netif_stop_queue(ndev);
 
        can_put_echo_skb(skb, ndev, tx_head, 0);