WSL2-Linux-Kernel/drivers/net/can
Ira W. Snyder 30df5888e4 can: janz-ican3: avoid firmware lockup caused by infinite bus error quota
If the bus error quota is set to infinite and the host CPU cannot keep
up, the Janz VMOD-ICAN3 firmware will stop responding to control
messages until the controller is reset.

The firmware will automatically stop sending bus error messages when the
quota is reached, and will only resume sending bus error messages when
the quota is re-set to a positive value.

This limitation is worked around by setting the bus error quota to one
message, and then re-setting the quota to one message every time a bus
error message is received. By doing this, the firmware never stops
responding to control messages. The CAN bus can be reset without a
hard-reset of the controller card.

Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2012-07-20 17:49:05 +02:00
..
c_can can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
cc770 can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
mscan can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
sja1000 can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
softing can: softing: softing_main: ensure a consistent return value in error case 2012-07-17 09:35:59 +02:00
usb can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
Kconfig can: Kconfig: add more information about Intel EG20T PCH CAN controller 2012-02-03 01:21:26 +01:00
Makefile can: cc770: add driver core for the Bosch CC770 and Intel AN82527 2011-12-01 13:09:31 -05:00
at91_can.c can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
bfin_can.c can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
dev.c can: dev: fix sparse warning for can_restart 2012-07-02 11:07:25 +02:00
flexcan.c can: flexcan: add 2nd clock to support imx53 and newer 2012-07-20 12:31:05 +02:00
janz-ican3.c can: janz-ican3: avoid firmware lockup caused by infinite bus error quota 2012-07-20 17:49:05 +02:00
mcp251x.c can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
pch_can.c can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
slcan.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ti_hecc.c can: mark bittiming_const pointer in struct can_priv as const 2012-07-20 12:31:05 +02:00
vcan.c vcan: add CAN FD support 2012-06-19 21:40:20 +02:00