Thread (17 messages) flat view 17 messages, 1 author, 2017-01-18
STALE3527d

[PATCH v3 00/16] can: rx-offload and flexcan

From: Marc Kleine-Budde <mkl@pengutronix.de>
Date: 2017-01-18 15:04:18

Hello,

this patch takes up the idea to read the CAN frames in IRQ context and send
them later in NAPI. The first two patches add each an offloading scheme.

The first one is for hardware FIFO based cores, like the flexcan in FIFO mode.
The second one requires mailboxes with timestamps. The mailboxes are read and
sorted by timestamp in IRQ context, sending is done later in NAPI aswell.

The remaining patches modify the flexcan driver to make use of it. imx6 and
vf610 SoCs can make use of the 64 mailbox software FIFO, while older SoCs still
use flexcan's 6 mailbox deep hardware FIFO.

Testing on any flexcan core is highly appreciated.

regards,
Marc

changes since v2:
- rx-offload: get rid of pre and post read handler in the NAPI poll loop, that
  were reviously used for CAN error frames and state change handling.
- rx-offload: add can_rx_offload_irq_queue_err_skb() that can be used from IRQ
  to queue error frames
- flexcan: move the CAN error frames and state change handling directly into
  the driver's IRQ routine

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help