linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/18] can: m_can: Optimizations for m_can/tcan part 2
@ 2023-01-25 19:50 Markus Schneider-Pargmann
  2023-01-25 19:50 ` [PATCH v2 01/18] can: tcan4x5x: Remove reserved register 0x814 from writable table Markus Schneider-Pargmann
                   ` (17 more replies)
  0 siblings, 18 replies; 26+ messages in thread
From: Markus Schneider-Pargmann @ 2023-01-25 19:50 UTC (permalink / raw)
  To: Marc Kleine-Budde, Chandrasekar Ramakrishnan, Wolfgang Grandegger
  Cc: Vincent MAILHOL, linux-can, netdev, linux-kernel,
	Markus Schneider-Pargmann

Hi Marc and everyone,

second version part 2, I fixed the bug I noticed for integrated m_can
devices. The accounting was wrong or missing for these. I don't have the
integrated hardware myself so any testing is appreciated (I only have
the tcan device to test the mcan driver). Also v2 rebases on top of
v6.2-rc5.

The series implements many small and bigger throughput improvements and
adds rx/tx coalescing at the end.

Best,
Markus

Changes in v2:
- Rebased on v6.2-rc5
- Fixed missing/broken accounting for non peripheral m_can devices.

part 1:
v1 - https://lore.kernel.org/lkml/20221116205308.2996556-1-msp@baylibre.com
v2 - https://lore.kernel.org/lkml/20221206115728.1056014-1-msp@baylibre.com

part 2:
v1 - https://lore.kernel.org/lkml/20221221152537.751564-1-msp@baylibre.com

Markus Schneider-Pargmann (18):
  can: tcan4x5x: Remove reserved register 0x814 from writable table
  can: tcan4x5x: Check size of mram configuration
  can: m_can: Remove repeated check for is_peripheral
  can: m_can: Always acknowledge all interrupts
  can: m_can: Remove double interrupt enable
  can: m_can: Disable unused interrupts
  can: m_can: Keep interrupts enabled during peripheral read
  can: m_can: Write transmit header and data in one transaction
  can: m_can: Implement receive coalescing
  can: m_can: Implement transmit coalescing
  can: m_can: Add rx coalescing ethtool support
  can: m_can: Add tx coalescing ethtool support
  can: m_can: Cache tx putidx
  can: m_can: Use the workqueue as queue
  can: m_can: Introduce a tx_fifo_in_flight counter
  can: m_can: Use tx_fifo_in_flight for netif_queue control
  can: m_can: Implement BQL
  can: m_can: Implement transmit submission coalescing

 drivers/net/can/m_can/m_can.c           | 514 ++++++++++++++++++------
 drivers/net/can/m_can/m_can.h           |  36 +-
 drivers/net/can/m_can/tcan4x5x-core.c   |   5 +
 drivers/net/can/m_can/tcan4x5x-regmap.c |   1 -
 4 files changed, 432 insertions(+), 124 deletions(-)

-- 
2.39.0


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

end of thread, other threads:[~2023-02-20  5:31 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-25 19:50 [PATCH v2 00/18] can: m_can: Optimizations for m_can/tcan part 2 Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 01/18] can: tcan4x5x: Remove reserved register 0x814 from writable table Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 02/18] can: tcan4x5x: Check size of mram configuration Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 03/18] can: m_can: Remove repeated check for is_peripheral Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 04/18] can: m_can: Always acknowledge all interrupts Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 05/18] can: m_can: Remove double interrupt enable Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 06/18] can: m_can: Disable unused interrupts Markus Schneider-Pargmann
2023-01-26  8:07   ` Simon Horman
2023-01-25 19:50 ` [PATCH v2 07/18] can: m_can: Keep interrupts enabled during peripheral read Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 08/18] can: m_can: Write transmit header and data in one transaction Markus Schneider-Pargmann
2023-01-26  8:04   ` Simon Horman
2023-01-30  8:04     ` Markus Schneider-Pargmann
2023-02-04 13:05       ` Simon Horman
2023-02-20  5:31         ` Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 09/18] can: m_can: Implement receive coalescing Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 10/18] can: m_can: Implement transmit coalescing Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 11/18] can: m_can: Add rx coalescing ethtool support Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 12/18] can: m_can: Add tx " Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 13/18] can: m_can: Cache tx putidx Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 14/18] can: m_can: Use the workqueue as queue Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 15/18] can: m_can: Introduce a tx_fifo_in_flight counter Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 16/18] can: m_can: Use tx_fifo_in_flight for netif_queue control Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 17/18] can: m_can: Implement BQL Markus Schneider-Pargmann
2023-01-25 19:50 ` [PATCH v2 18/18] can: m_can: Implement transmit submission coalescing Markus Schneider-Pargmann
2023-01-28 15:00   ` Vincent MAILHOL
2023-01-30  8:05     ` Markus Schneider-Pargmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).