linux/drivers/net/can/m_can
Torin Cooper-Bennun e98d9ee64e can: m_can: m_can_rx_peripheral(): fix RX being blocked by errors
For M_CAN peripherals, m_can_rx_handler() was called with quota = 1,
which caused any error handling to block RX from taking place until
the next time the IRQ handler is called. This had been observed to
cause RX to be blocked indefinitely in some cases.

This is fixed by calling m_can_rx_handler with a sensibly high quota.

Fixes: f524f829b7 ("can: m_can: Create a m_can platform framework")
Link: https://lore.kernel.org/r/20210303144350.4093750-1-torin@maxiluxsystems.com
Suggested-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Torin Cooper-Bennun <torin@maxiluxsystems.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2021-03-16 08:41:27 +01:00
..
Kconfig can: m_can: add PCI glue driver for Intel Elkhart Lake 2020-12-10 10:40:10 +01:00
Makefile can: tcan4x5x: move regmap code into seperate file 2021-01-06 15:15:37 +01:00
m_can.c can: m_can: m_can_rx_peripheral(): fix RX being blocked by errors 2021-03-16 08:41:27 +01:00
m_can.h can: m_can: let m_can_class_allocate_dev() allocate driver specific private data 2020-12-14 14:24:14 +01:00
m_can_pci.c can: m_can: use struct m_can_classdev as drvdata 2020-12-14 14:24:17 +01:00
m_can_platform.c can: m_can: use struct m_can_classdev as drvdata 2020-12-14 14:24:17 +01:00
tcan4x5x-core.c can: tcan4x5x: tcan4x5x_init(): fix initialization - clear MRAM before entering Normal Mode 2021-03-01 11:45:15 +01:00
tcan4x5x-regmap.c can: tcan4x5x: add support for half-duplex controllers 2021-01-06 15:15:41 +01:00
tcan4x5x.h can: tcan4x5x: remove __packed attribute from struct tcan4x5x_map_buf 2021-01-14 08:43:44 +01:00