[PATCH net-next 00/14][pull request] igc: Add support for Frame Preemption
Tony Nguyen
anthony.l.nguyen at intel.com
Fri Apr 18 09:38:06 PDT 2025
Faizal Rahim says:
Introduce support for the FPE feature in the IGC driver.
The patches aligns with the upstream FPE API:
https://patchwork.kernel.org/project/netdevbpf/cover/20230220122343.1156614-1-vladimir.oltean@nxp.com/
https://patchwork.kernel.org/project/netdevbpf/cover/20230119122705.73054-1-vladimir.oltean@nxp.com/
It builds upon earlier work:
https://patchwork.kernel.org/project/netdevbpf/cover/20220520011538.1098888-1-vinicius.gomes@intel.com/
The patch series adds the following functionalities to the IGC driver:
a) Configure FPE using `ethtool --set-mm`.
b) Display FPE settings via `ethtool --show-mm`.
c) View FPE statistics using `ethtool --include-statistics --show-mm'.
e) Block setting preemptible tc in taprio since it is not supported yet.
Existing code already blocks it in mqprio.
Tested:
Enabled CONFIG_PROVE_LOCKING, CONFIG_DEBUG_ATOMIC_SLEEP, CONFIG_DMA_API_DEBUG, and CONFIG_KASAN
1) selftests
2) netdev down/up cycles
3) suspend/resume cycles
4) fpe verification
No bugs or unusual dmesg logs were observed.
Ran 1), 2) and 3) with and without the patch series, compared dmesg and selftest logs - no differences found.
---
IWL: https://lore.kernel.org/intel-wired-lan/20250318030742.2567080-1-faizal.abdul.rahim@linux.intel.com/
The following are changes since commit 8066e388be48f1ad62b0449dc1d31a25489fa12a:
net: add UAPI to the header guard in various network headers
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue 1GbE
Faizal Rahim (13):
net: stmmac: move frag_size handling out of spin_lock
net: ethtool: mm: reset verification status when link is down
igc: rename xdp_get_tx_ring() for non-xdp usage
igc: rename I225_RXPBSIZE_DEFAULT and I225_TXPBSIZE_DEFAULT
igc: use FIELD_PREP and GENMASK for existing TX packet buffer size
igc: optimize TX packet buffer utilization for TSN mode
igc: use FIELD_PREP and GENMASK for existing RX packet buffer size
igc: set the RX packet buffer size for TSN mode
igc: add support for frame preemption verification
igc: add support to set tx-min-frag-size
igc: block setting preemptible traffic class in taprio
igc: add support to get MAC Merge data via ethtool
igc: add support to get frame preemption statistics via ethtool
Vladimir Oltean (1):
net: ethtool: mm: extract stmmac verification logic into common
library
drivers/net/ethernet/intel/Kconfig | 1 +
drivers/net/ethernet/intel/igc/igc.h | 15 +-
drivers/net/ethernet/intel/igc/igc_base.h | 1 +
drivers/net/ethernet/intel/igc/igc_defines.h | 55 +++-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 81 +++++
drivers/net/ethernet/intel/igc/igc_main.c | 69 ++++-
drivers/net/ethernet/intel/igc/igc_regs.h | 16 +
drivers/net/ethernet/intel/igc/igc_tsn.c | 210 ++++++++++++-
drivers/net/ethernet/intel/igc/igc_tsn.h | 52 ++++
drivers/net/ethernet/stmicro/stmmac/Kconfig | 1 +
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 16 +-
.../ethernet/stmicro/stmmac/stmmac_ethtool.c | 41 +--
.../net/ethernet/stmicro/stmmac/stmmac_fpe.c | 174 +++--------
.../net/ethernet/stmicro/stmmac/stmmac_fpe.h | 5 -
.../net/ethernet/stmicro/stmmac/stmmac_main.c | 8 +-
include/linux/ethtool.h | 73 +++++
net/ethtool/mm.c | 279 +++++++++++++++++-
17 files changed, 876 insertions(+), 221 deletions(-)
--
2.47.1
More information about the linux-arm-kernel
mailing list