[PATCH net-next 0/4] net: mvneta: mqprio cleanups and shaping support

From: Maxime Chevallier
Date: Thu Nov 25 2021 - 10:50:07 EST


Hello everyone,

This series adds some improvements to the existing mqprio implementation
in mvneta, and adds support for egress shaping offload.

The first 3 patches are some minor cleanups, such as using the
tc_mqprio_qopt_offload structure to get access to more offloading
options, cleaning the logic to detect wether or not we should offload
mqprio setting, and allowing to have a 1 to N mapping between TCs and
queues.

The last patch adds traffic shaping offload, using mvneta's per-queue
token buckets, allowing to limit rates from 10Kbps up to 5Gbps with
10Kbps increments.

This was tested only on an Armada 3720, with traffic up to 2.5Gbps.

Maxime Chevallier (4):
net: mvneta: Use struct tc_mqprio_qopt_offload for MQPrio configuration
net: mvneta: Don't force-set the offloading flag
net: mvneta: Allow having more than one queue per TC
net: mvneta: Add TC traffic shaping offload

drivers/net/ethernet/marvell/mvneta.c | 161 +++++++++++++++++++++++---
1 file changed, 145 insertions(+), 16 deletions(-)

--
2.25.4