Files
linux-net/include/uapi/linux
Oliver Hartkopp 626332696d can: raw: add CAN XL support
Enable CAN_RAW sockets to read and write CAN XL frames analogue to the
CAN FD extension (new CAN_RAW_XL_FRAMES sockopt).

A CAN XL network interface is capable to handle Classical CAN, CAN FD and
CAN XL frames. When CAN_RAW_XL_FRAMES is enabled, the CAN_RAW socket checks
whether the addressed CAN network interface is capable to handle the
provided CAN frame.

In opposite to the fixed number of bytes for
- CAN frames (CAN_MTU = sizeof(struct can_frame))
- CAN FD frames (CANFD_MTU = sizeof(struct can_frame))
the number of bytes when reading/writing CAN XL frames depends on the
number of data bytes. For efficiency reasons the length of the struct
canxl_frame is truncated to the needed size for read/write operations.
This leads to a calculated size of CANXL_HDR_SIZE + canxl_frame::len which
is enforced on write() operations and guaranteed on read() operations.

NB: Valid length values are 1 .. 2048 (CANXL_MIN_DLEN .. CANXL_MAX_DLEN).

Acked-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Link: https://lore.kernel.org/all/20220912170725.120748-8-socketcan@hartkopp.net
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2022-09-15 09:08:09 +02:00
..
2022-09-15 09:08:09 +02:00
2022-02-21 19:33:05 +00:00
2021-01-25 18:44:44 +01:00
2022-04-19 13:13:47 +01:00
2021-11-01 13:36:08 +00:00
2022-08-11 10:31:19 -07:00
2022-06-03 20:09:27 +08:00
2020-08-12 10:58:00 -07:00
2022-06-07 10:20:42 -07:00
2021-11-26 16:48:59 +01:00
2022-04-04 08:55:23 +02:00
2021-10-07 13:51:11 +02:00
2022-08-10 13:49:50 +01:00
2021-02-08 13:01:24 +01:00
2022-03-11 08:28:05 -08:00
2021-11-15 07:53:10 -08:00
2021-06-03 15:31:34 -07:00
2022-06-03 20:09:27 +08:00
2021-03-10 09:34:06 +01:00
2020-08-18 15:44:44 +02:00
2021-10-14 23:06:28 +02:00
2021-07-06 10:37:46 -05:00
2021-01-07 16:17:32 +01:00
2022-08-11 04:31:15 -04:00
2022-07-17 10:58:06 +01:00
2021-06-12 13:16:45 -07:00