[PATCH net-next 0/4] net: macb: Add TSN MQPRIO and CBS traffic-class offload
Vineeth Karumanchi <[email protected]>
| Newsgroups | org.kernel.vger.netdev,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
This series adds TSN traffic-class hardware offload support to the Cadence macb/GEM driver, building on the existing TAPRIO/Qbv infrastructure. GEM IP versions that implement Qbv (e.g. Versal GEM) also support additional TSN clauses. The series first generalises the existing Qbv capability flag into a traffic-class offload flag and centralises the common ndo_setup_tc() preconditions, then adds two new offloads: - MQPRIO: traffic-class to hardware-queue mapping, delegating queue count and overlap validation to the mqprio core. - CBS (Credit-Based Shaper, IEEE 802.1Qav): per-queue idleslope programming on the two highest-priority queues, with the idleslope register value derived from the current link speed (full 32-bit range for high-speed GEM, port-rate factor for standard GEM). Patches 1 and 2 are preparatory refactors with no functional change. Patches 3 and 4 add the MQPRIO and CBS offloads respectively. Vineeth Karumanchi (4): net: macb: Rename MACB_CAPS_QBV to MACB_CAPS_TC net: macb: Move TC capability and PM checks to macb_setup_tc() net: macb: Add MQPRIO qdisc hardware offload support net: macb: Add TSN CBS TC offload support drivers/net/ethernet/cadence/macb.h | 11 +- drivers/net/ethernet/cadence/macb_main.c | 209 +++++++++++++++++++++-- 2 files changed, 206 insertions(+), 14 deletions(-) -- 2.44.4