diff options
author | Markus Schneider-Pargmann <msp@baylibre.com> | 2024-08-05 20:30:45 +0200 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2024-08-06 09:25:30 +0200 |
commit | a572fea86c9b06cd3e6e89d79d565b52cb7e7cff (patch) | |
tree | 32dbbf96c7340a2cf9aec608121e2f43d7c9d765 /drivers/net/can | |
parent | 4d5159bfafa8d1a205d8213b7434e0402588b9ed (diff) | |
download | lwn-a572fea86c9b06cd3e6e89d79d565b52cb7e7cff.tar.gz lwn-a572fea86c9b06cd3e6e89d79d565b52cb7e7cff.zip |
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: 07f25091ca02 ("can: m_can: Implement receive coalescing")
Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
Link: https://lore.kernel.org/all/20240805183047.305630-6-msp@baylibre.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can')
-rw-r--r-- | drivers/net/can/m_can/m_can.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/net/can/m_can/m_can.c b/drivers/net/can/m_can/m_can.c index 5228304779f1..68bd4a00ecca 100644 --- a/drivers/net/can/m_can/m_can.c +++ b/drivers/net/can/m_can/m_can.c @@ -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"); |