Hello Jakub, hello David, this is a pull request of 15 patches for net/master. The 1st patch is by Oliver Hartkopp, targets the BCM CAN protocol and converts a costly synchronize_rcu() to call_rcu() to fix a performance regression. Srinivas Neeli's patch for the xilinx_can driver drops the brp limit down to 1, as only the pre-production silicon have an issue with a brp of 1. The next patch is by Duy Nguyen and fixes the data transmission on R-Car V3U SoCs in the rcar_canfd driver. Rhett Aultman's patch fixes a DMA memory leak in the gs_usb driver. Liang He's patch removes an extra of_node_get() in the grcan driver. The next 2 patches are by me, target the m_can driver and fix the timestamp handling used for peripheral devices like the tcan4x5x. Jimmy Assarsson contributes 3 patches for the kvaser_usb driver and fixes CAN clock and bit timing related issues. The remaining 5 patches target the mcp251xfd driver. Thomas Kopp contributes 2 patches to improve the workaround for broken CRC when reading the TBC register. 3 patches by me add a missing hrtimer_cancel() during the ndo_stop() callback, and fix the reading of the Device ID register. regards, Marc --- The following changes since commit 280e3a857d96f9ca8e24632788e1e7a0fec4e9f7: Merge git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf (2022-07-03 12:29:18 +0100) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can.git tags/linux-can-fixes-for-5.19-20220704 for you to fetch changes up to 1c0e78a287e3493e22bde8553d02f3b89177eaf7: can: mcp251xfd: mcp251xfd_register_get_dev_id(): fix endianness conversion (2022-07-04 12:51:43 +0200) ---------------------------------------------------------------- linux-can-fixes-for-5.19-20220704 ---------------------------------------------------------------- Duy Nguyen (1): can: rcar_canfd: Fix data transmission failed on R-Car V3U Jimmy Assarsson (3): can: kvaser_usb: replace run-time checks with struct kvaser_usb_driver_info can: kvaser_usb: kvaser_usb_leaf: fix CAN clock frequency regression can: kvaser_usb: kvaser_usb_leaf: fix bittiming limits Liang He (1): can: grcan: grcan_probe(): remove extra of_node_get() Marc Kleine-Budde (5): can: m_can: m_can_chip_config(): actually enable internal timestamping can: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits can: mcp251xfd: mcp251xfd_stop(): add missing hrtimer_cancel() can: mcp251xfd: mcp251xfd_register_get_dev_id(): use correct length to read dev_id can: mcp251xfd: mcp251xfd_register_get_dev_id(): fix endianness conversion Oliver Hartkopp (1): can: bcm: use call_rcu() instead of costly synchronize_rcu() Rhett Aultman (1): can: gs_usb: gs_usb_open/close(): fix memory leak Srinivas Neeli (1): Revert "can: xilinx_can: Limit CANFD brp to 2" Thomas Kopp (2): can: mcp251xfd: mcp251xfd_regmap_crc_read(): improve workaround handling for mcp2517fd can: mcp251xfd: mcp251xfd_regmap_crc_read(): update workaround broken CRC on TBC register drivers/net/can/grcan.c | 1 - drivers/net/can/m_can/m_can.c | 8 +- drivers/net/can/rcar/rcar_canfd.c | 5 +- drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c | 6 +- drivers/net/can/spi/mcp251xfd/mcp251xfd-regmap.c | 22 +- drivers/net/can/usb/gs_usb.c | 23 +- drivers/net/can/usb/kvaser_usb/kvaser_usb.h | 25 +- drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c | 285 ++++++++++++---------- drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 4 +- drivers/net/can/usb/kvaser_usb/kvaser_usb_leaf.c | 119 +++++---- drivers/net/can/xilinx_can.c | 4 +- net/can/bcm.c | 18 +- 12 files changed, 304 insertions(+), 216 deletions(-)