netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Multiqueue support for mtk_eth_soc
@ 2022-11-16  8:07 Felix Fietkau
  2022-11-16  8:07 ` [PATCH net-next 1/6] net: ethernet: mtk_eth_soc: increase tx ring size for QDMA devices Felix Fietkau
                   ` (5 more replies)
  0 siblings, 6 replies; 11+ messages in thread
From: Felix Fietkau @ 2022-11-16  8:07 UTC (permalink / raw)
  To: netdev, Matthias Brugger; +Cc: linux-arm-kernel, linux-mediatek

This series implements multiqueue support on devices with QDMA (MT7621 and newer)
by using the SoC's traffic shaper function, which is part of the QDMA engine.

The driver exposes traffic shaper queues as network stack queues and configures
them to the link speed limit.
This fixes an issue where traffic to slower ports would drown out traffic to
faster ports. It also fixes packet drops and jitter when running hardware
offloaded traffic alongside traffic from the CPU.

Felix Fietkau (6):
  net: ethernet: mtk_eth_soc: increase tx ring size for QDMA devices
  net: ethernet: mtk_eth_soc: drop packets to WDMA if the ring is full
  net: ethernet: mtk_eth_soc: avoid port_mg assignment on MT7622 and
    newer
  net: ethernet: mtk_eth_soc: implement multi-queue support for per-port
    queues
  net: dsa: tag_mtk: assign per-port queues
  net: ethernet: mediatek: ppe: assign per-port queues for offloaded
    traffic

 drivers/net/ethernet/mediatek/mtk_eth_soc.c   | 328 ++++++++++++++----
 drivers/net/ethernet/mediatek/mtk_eth_soc.h   |  28 +-
 drivers/net/ethernet/mediatek/mtk_ppe.c       |  22 +-
 drivers/net/ethernet/mediatek/mtk_ppe.h       |   4 +
 .../net/ethernet/mediatek/mtk_ppe_offload.c   |  12 +-
 net/dsa/tag_mtk.c                             |   2 +
 6 files changed, 324 insertions(+), 72 deletions(-)

-- 
2.38.1


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

end of thread, other threads:[~2022-11-19  3:55 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-16  8:07 Multiqueue support for mtk_eth_soc Felix Fietkau
2022-11-16  8:07 ` [PATCH net-next 1/6] net: ethernet: mtk_eth_soc: increase tx ring size for QDMA devices Felix Fietkau
2022-11-19  3:50   ` patchwork-bot+netdevbpf
2022-11-16  8:07 ` [PATCH net-next 2/6] net: ethernet: mtk_eth_soc: drop packets to WDMA if the ring is full Felix Fietkau
2022-11-16  8:07 ` [PATCH net-next 3/6] net: ethernet: mtk_eth_soc: avoid port_mg assignment on MT7622 and newer Felix Fietkau
2022-11-16  8:07 ` [PATCH net-next 4/6] net: ethernet: mtk_eth_soc: implement multi-queue support for per-port queues Felix Fietkau
2022-11-18 15:13   ` Alexander 'lynxis' Couzens
2022-11-18 16:30     ` Felix Fietkau
2022-11-16  8:07 ` [PATCH net-next 5/6] net: dsa: tag_mtk: assign " Felix Fietkau
2022-11-16 18:26   ` Florian Fainelli
2022-11-16  8:07 ` [PATCH net-next 6/6] net: ethernet: mediatek: ppe: assign per-port queues for offloaded traffic Felix Fietkau

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).