All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v5 0/5] can: support CAN XL
@ 2022-07-19 11:27 Oliver Hartkopp
  2022-07-19 11:27 ` [RFC PATCH v5 1/5] can: canxl: introduce CAN XL data structure Oliver Hartkopp
                   ` (4 more replies)
  0 siblings, 5 replies; 29+ messages in thread
From: Oliver Hartkopp @ 2022-07-19 11:27 UTC (permalink / raw)
  To: linux-can; +Cc: Oliver Hartkopp

The CAN with eXtended data Length (CAN XL) is a new CAN protocol with a
10Mbit/s data transfer with a new physical layer transceiver (for this
data section). CAN XL allows up to 2048 byte of payload and shares the
arbitration principle (11 bit priority) known from Classical CAN and
CAN FD. RTR and 29 bit identifiers are not implemented in CAN XL.

A short introdution to CAN XL can be found here:
https://www.bosch-semiconductors.com/media/ip_modules/pdf_2/can_xl_1/canxl_intro_20210225.pdf

V2: Major rework after discussion and feedback on Linux-CAN ML

- rework of struct canxl_frame
- CANXL_XLF flag is now the switch between CAN XL and CAN/CANFD
- variable length in r/w operations for CAN XL frames
- write CAN XL frame to raw socket enforces size <-> canxl_frame.len sync

V3: Fix length for CAN XL frames inside the sk_buff

- extend the CAN_RAW sockopt to handle fixed/truncated read/write operations

V4: Fix patch 5 (can: raw: add CAN XL support)

- fix return value (move 'err = -EINVAL' in raw_sendmsg())
- add CAN XL frame handling in can_rcv()
- change comment for CAN_RAW_XL_[RT]X_DYN definition (allow -> enable)

V5: Remove CAN_RAW_XL_[RT]X_DYN definition again

- CAN_RAW_XL_[RT]X_DYN (truncated data) feature is now enabled by default
- use CANXL_MIN_DLEN instead of '1' in canxl_frame definition
- add missing 'err = -EINVAL' initialization in raw_sendmsg())

Oliver Hartkopp (5):
  can: canxl: introduce CAN XL data structure
  can: canxl: introduce ETH_P_CANXL ethernet protocol handling
  can: dev: add CAN XL support
  can: vcan: add CAN XL support
  can: raw: add CAN XL support

 drivers/net/can/dev/rx-offload.c |  2 +-
 drivers/net/can/dev/skb.c        | 49 ++++++++++++++----
 drivers/net/can/vcan.c           | 11 ++--
 include/linux/can/skb.h          | 44 +++++++++++++++-
 include/uapi/linux/can.h         | 49 ++++++++++++++++++
 include/uapi/linux/can/raw.h     |  1 +
 include/uapi/linux/if_ether.h    |  1 +
 net/can/af_can.c                 | 32 ++++++++++--
 net/can/raw.c                    | 89 +++++++++++++++++++++++++++-----
 9 files changed, 242 insertions(+), 36 deletions(-)

-- 
2.30.2


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2022-07-23 10:33 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-19 11:27 [RFC PATCH v5 0/5] can: support CAN XL Oliver Hartkopp
2022-07-19 11:27 ` [RFC PATCH v5 1/5] can: canxl: introduce CAN XL data structure Oliver Hartkopp
2022-07-19 11:27 ` [RFC PATCH v5 2/5] can: canxl: introduce ETH_P_CANXL ethernet protocol handling Oliver Hartkopp
2022-07-19 11:27 ` [RFC PATCH v5 3/5] can: dev: add CAN XL support Oliver Hartkopp
2022-07-19 14:11   ` Vincent Mailhol
2022-07-19 14:38     ` Oliver Hartkopp
2022-07-19 15:16       ` Vincent Mailhol
2022-07-20 16:43         ` Oliver Hartkopp
2022-07-21  2:37           ` Vincent Mailhol
2022-07-21  3:13             ` Vincent Mailhol
2022-07-21 20:26               ` Oliver Hartkopp
2022-07-22  5:40                 ` Vincent Mailhol
2022-07-21  7:36             ` Oliver Hartkopp
2022-07-21  7:53               ` Marc Kleine-Budde
2022-07-21  8:14                 ` Vincent Mailhol
2022-07-21 19:09                   ` Oliver Hartkopp
2022-07-22  3:20                     ` Vincent Mailhol
2022-07-22  7:27                       ` Marc Kleine-Budde
2022-07-22  8:33                         ` Vincent Mailhol
2022-07-22  9:58                           ` Marc Kleine-Budde
2022-07-22 10:54                             ` Vincent Mailhol
2022-07-22 15:30                               ` Oliver Hartkopp
2022-07-22 16:32                                 ` Vincent Mailhol
2022-07-22 18:52                                   ` Oliver Hartkopp
2022-07-23  2:39                                     ` Vincent Mailhol
2022-07-23 10:33                                       ` Oliver Hartkopp
2022-07-21  8:28               ` Vincent Mailhol
2022-07-19 11:27 ` [RFC PATCH v5 4/5] can: vcan: " Oliver Hartkopp
2022-07-19 11:27 ` [RFC PATCH v5 5/5] can: raw: " Oliver Hartkopp

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.