can: mcp251xfd: mcp251xfd_stop(): add missing hrtimer_cancel()
In commit169d00a256
("can: mcp251xfd: add TX IRQ coalescing support") software based TX coalescing was added to the driver. The key idea is to keep the TX complete IRQ disabled for some time after processing it and re-enable later by a hrtimer. When bringing the interface down, this timer has to be stopped. Add the missing hrtimer_cancel() of the tx_irq_time hrtimer to mcp251xfd_stop(). Link: https://lore.kernel.org/all/20220620143942.891811-1-mkl@pengutronix.de Fixes:169d00a256
("can: mcp251xfd: add TX IRQ coalescing support") Cc: stable@vger.kernel.org # v5.18 Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
Родитель
e3d4ee7d5f
Коммит
d5a972f561
|
@ -1650,6 +1650,7 @@ static int mcp251xfd_stop(struct net_device *ndev)
|
|||
netif_stop_queue(ndev);
|
||||
set_bit(MCP251XFD_FLAGS_DOWN, priv->flags);
|
||||
hrtimer_cancel(&priv->rx_irq_timer);
|
||||
hrtimer_cancel(&priv->tx_irq_timer);
|
||||
mcp251xfd_chip_interrupts_disable(priv);
|
||||
free_irq(ndev->irq, priv);
|
||||
can_rx_offload_disable(&priv->offload);
|
||||
|
|
Загрузка…
Ссылка в новой задаче