netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 net-next 0/9] ethtool mm API consolidation
@ 2023-04-18 11:14 Vladimir Oltean
  2023-04-18 11:14 ` [PATCH v2 net-next 1/9] net: enetc: fix MAC Merge layer remaining enabled until a link down event Vladimir Oltean
                   ` (9 more replies)
  0 siblings, 10 replies; 22+ messages in thread
From: Vladimir Oltean @ 2023-04-18 11:14 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Michal Kubecek, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Claudiu Manoil, Xiaoliang Yang, Petr Machata,
	Danielle Ratson, Pranavi Somisetty, Harini Katakam,
	Vinicius Costa Gomes, Kurt Kanzenbach, Gerhard Engleder,
	Ferenc Fejes, Aaron Conole, linux-kselftest, linux-kernel

This series consolidates the behavior of the 2 drivers that implement
the ethtool MAC Merge layer by making NXP ENETC commit its preemptible
traffic classes to hardware only when MM TX is active (same as Ocelot).

Then, after resolving an issue with the ENETC driver, it restricts user
space from entering 2 states which don't make sense:

- pmac-enabled off tx-enabled on  verify-enabled *
- pmac-enabled *   tx-enabled off verify-enabled on

Then, it introduces a selftest (ethtool_mm.sh) which puts everything
together and tests all valid configurations known to me.

This is simultaneously the v2 of "[PATCH net-next 0/2] ethtool mm API
improvements":
https://lore.kernel.org/netdev/20230415173454.3970647-1-vladimir.oltean@nxp.com/
which had caused some problems to openlldp. Those were solved in the
meantime, see:
https://github.com/intel/openlldp/commit/11171b474f6f3cbccac5d608b7f26b32ff72c651

and of "[RFC PATCH net-next] selftests: forwarding: add a test for MAC
Merge layer":
https://lore.kernel.org/netdev/20230210221243.228932-1-vladimir.oltean@nxp.com/

Petr Machata (2):
  selftests: forwarding: sch_tbf_*: Add a pre-run hook
  selftests: forwarding: generalize bail_on_lldpad from mlxsw

Vladimir Oltean (7):
  net: enetc: fix MAC Merge layer remaining enabled until a link down
    event
  net: enetc: report mm tx-active based on tx-enabled and verify-status
  net: enetc: only commit preemptible TCs to hardware when MM TX is
    active
  net: enetc: include MAC Merge / FP registers in register dump
  net: ethtool: mm: sanitize some UAPI configurations
  selftests: forwarding: introduce helper for standard ethtool counters
  selftests: forwarding: add a test for MAC Merge layer

 drivers/net/ethernet/freescale/enetc/enetc.c  |  23 +-
 drivers/net/ethernet/freescale/enetc/enetc.h  |   5 +-
 .../ethernet/freescale/enetc/enetc_ethtool.c  |  94 +++++-
 .../net/ethernet/freescale/enetc/enetc_hw.h   |   3 +
 net/ethtool/mm.c                              |  10 +
 .../drivers/net/mlxsw/qos_headroom.sh         |   3 +-
 .../selftests/drivers/net/mlxsw/qos_lib.sh    |  28 --
 .../selftests/drivers/net/mlxsw/qos_pfc.sh    |   3 +-
 .../selftests/drivers/net/mlxsw/sch_ets.sh    |   3 +-
 .../drivers/net/mlxsw/sch_red_core.sh         |   1 -
 .../drivers/net/mlxsw/sch_red_ets.sh          |   2 +-
 .../drivers/net/mlxsw/sch_red_root.sh         |   2 +-
 .../drivers/net/mlxsw/sch_tbf_ets.sh          |   6 +-
 .../drivers/net/mlxsw/sch_tbf_prio.sh         |   6 +-
 .../drivers/net/mlxsw/sch_tbf_root.sh         |   6 +-
 .../testing/selftests/net/forwarding/Makefile |   1 +
 .../selftests/net/forwarding/ethtool_mm.sh    | 288 ++++++++++++++++++
 tools/testing/selftests/net/forwarding/lib.sh |  60 ++++
 .../net/forwarding/sch_tbf_etsprio.sh         |   4 +
 .../selftests/net/forwarding/sch_tbf_root.sh  |   4 +
 20 files changed, 486 insertions(+), 66 deletions(-)
 create mode 100755 tools/testing/selftests/net/forwarding/ethtool_mm.sh

-- 
2.34.1


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

end of thread, other threads:[~2023-04-21  9:03 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-18 11:14 [PATCH v2 net-next 0/9] ethtool mm API consolidation Vladimir Oltean
2023-04-18 11:14 ` [PATCH v2 net-next 1/9] net: enetc: fix MAC Merge layer remaining enabled until a link down event Vladimir Oltean
2023-04-20 14:22   ` Simon Horman
2023-04-20 17:03     ` Vladimir Oltean
2023-04-21  9:01       ` Simon Horman
2023-04-18 11:14 ` [PATCH v2 net-next 2/9] net: enetc: report mm tx-active based on tx-enabled and verify-status Vladimir Oltean
2023-04-20 14:40   ` Simon Horman
2023-04-18 11:14 ` [PATCH v2 net-next 3/9] net: enetc: only commit preemptible TCs to hardware when MM TX is active Vladimir Oltean
2023-04-20 14:42   ` Simon Horman
2023-04-20 16:34     ` Vladimir Oltean
2023-04-20 16:49       ` Simon Horman
2023-04-18 11:14 ` [PATCH v2 net-next 4/9] net: enetc: include MAC Merge / FP registers in register dump Vladimir Oltean
2023-04-20 14:38   ` Simon Horman
2023-04-20 16:58     ` Vladimir Oltean
2023-04-21  9:03       ` Simon Horman
2023-04-18 11:14 ` [PATCH v2 net-next 5/9] net: ethtool: mm: sanitize some UAPI configurations Vladimir Oltean
2023-04-20 14:43   ` Simon Horman
2023-04-18 11:14 ` [PATCH v2 net-next 6/9] selftests: forwarding: sch_tbf_*: Add a pre-run hook Vladimir Oltean
2023-04-18 11:14 ` [PATCH v2 net-next 7/9] selftests: forwarding: generalize bail_on_lldpad from mlxsw Vladimir Oltean
2023-04-18 11:14 ` [PATCH v2 net-next 8/9] selftests: forwarding: introduce helper for standard ethtool counters Vladimir Oltean
2023-04-18 11:14 ` [PATCH v2 net-next 9/9] selftests: forwarding: add a test for MAC Merge layer Vladimir Oltean
2023-04-21  3:10 ` [PATCH v2 net-next 0/9] ethtool mm API consolidation patchwork-bot+netdevbpf

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