Commit a572fea8 authored by Markus Schneider-Pargmann's avatar Markus Schneider-Pargmann Committed by Marc Kleine-Budde
Browse files

can: m_can: disable_all_interrupts, not clear active_interrupts



active_interrupts is a cache for the enabled interrupts and not the
global masking of interrupts. Do not clear this variable otherwise we
may loose the state of the interrupts.

Fixes: 07f25091 ("can: m_can: Implement receive coalescing")
Signed-off-by: default avatarMarkus Schneider-Pargmann <msp@baylibre.com>
Link: https://lore.kernel.org/all/20240805183047.305630-6-msp@baylibre.com


Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 4d5159bf
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -483,7 +483,6 @@ static inline void m_can_disable_all_interrupts(struct m_can_classdev *cdev)
{
	m_can_coalescing_disable(cdev);
	m_can_write(cdev, M_CAN_ILE, 0x0);
	cdev->active_interrupts = 0x0;

	if (!cdev->net->irq) {
		dev_dbg(cdev->dev, "Stop hrtimer\n");