Commit 3f9c2621 authored by Vincent Mailhol's avatar Vincent Mailhol Committed by Marc Kleine-Budde
Browse files

can: error: add definitions for the different CAN error thresholds

Currently, drivers are using magic numbers to derive the CAN error
states from the error counter. Add three macro declarations to
remediate this.

For reference, the error-active, error-passive and bus-off are defined
in ISO 11898, section 12.1.4.2 "Error counting". Although ISO 11898
does not define error-warning state, this extra value is also commonly
used and is thus also added.

Link: https://lore.kernel.org/all/20220719143550.3681-13-mailhol.vincent@wanadoo.fr


Signed-off-by: default avatarVincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 3e5c291c
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -127,4 +127,17 @@
/* TX error counter / data[6] */
/* RX error counter / data[7] */

/* CAN state thresholds
 *
 * Error counter	Error state
 * -----------------------------------
 * 0 -  95		Error-active
 * 96 - 127		Error-warning
 * 128 - 255		Error-passive
 * 256 and greater	Bus-off
 */
#define CAN_ERROR_WARNING_THRESHOLD 96
#define CAN_ERROR_PASSIVE_THRESHOLD 128
#define CAN_BUS_OFF_THRESHOLD 256

#endif /* _UAPI_CAN_ERROR_H */