Subject: [PATCH net-next 00/10] mlxsw: Add port range matching support

From: Petr Machata <[email-masked]>
Date: Tue, 11 Jul 2023 18:43:53 +0200

Ido Schimmel writes:

Add port range matching support in mlxsw as part of tc-flower offload.

Patches #1-#7 gradually add port range matching support in mlxsw. See
patch #3 to understand how port range matching is implemented in the
device.

Patches #8-#10 add selftests.

Ido Schimmel (10):
  mlxsw: reg: Add Policy-Engine Port Range Register
  mlxsw: resource: Add resource identifier for port range registers
  mlxsw: spectrum_port_range: Add port range core
  mlxsw: spectrum_port_range: Add devlink resource support
  mlxsw: spectrum_acl: Add port range key element
  mlxsw: spectrum_acl: Pass main driver structure to
    mlxsw_sp_acl_rulei_destroy()
  mlxsw: spectrum_flower: Add ability to match on port ranges
  selftests: mlxsw: Add scale test for port ranges
  selftests: mlxsw: Test port range registers' occupancy
  selftests: forwarding: Add test cases for flower port range matching

 drivers/net/ethernet/mellanox/mlxsw/Makefile  |   2 +-
 .../mellanox/mlxsw/core_acl_flex_keys.c       |   1 +
 .../mellanox/mlxsw/core_acl_flex_keys.h       |   1 +
 drivers/net/ethernet/mellanox/mlxsw/reg.h     |  73 ++++++
 .../net/ethernet/mellanox/mlxsw/resources.h   |   2 +
 .../net/ethernet/mellanox/mlxsw/spectrum.c    |  39 +++
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |  25 +-
 .../mellanox/mlxsw/spectrum1_acl_tcam.c       |   4 +-
 .../ethernet/mellanox/mlxsw/spectrum_acl.c    |  11 +-
 .../mellanox/mlxsw/spectrum_acl_flex_keys.c   |   3 +
 .../ethernet/mellanox/mlxsw/spectrum_flower.c |  68 ++++++
 .../mellanox/mlxsw/spectrum_port_range.c      | 200 +++++++++++++++
 .../drivers/net/mlxsw/port_range_occ.sh       | 111 +++++++++
 .../drivers/net/mlxsw/port_range_scale.sh     |  95 ++++++++
 .../net/mlxsw/spectrum-2/port_range_scale.sh  |   1 +
 .../net/mlxsw/spectrum-2/resource_scale.sh    |   1 +
 .../net/mlxsw/spectrum/port_range_scale.sh    |  16 ++
 .../net/mlxsw/spectrum/resource_scale.sh      |   1 +
 .../testing/selftests/net/forwarding/Makefile |   1 +
 .../net/forwarding/tc_flower_port_range.sh    | 228 ++++++++++++++++++
 20 files changed, 876 insertions(+), 7 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlxsw/spectrum_port_range.c
 create mode 100755 tools/testing/selftests/drivers/net/mlxsw/port_range_occ.sh
 create mode 100644 tools/testing/selftests/drivers/net/mlxsw/port_range_scale.sh
 create mode 120000 tools/testing/selftests/drivers/net/mlxsw/spectrum-2/port_range_scale.sh
 create mode 100644 tools/testing/selftests/drivers/net/mlxsw/spectrum/port_range_scale.sh
 create mode 100755 tools/testing/selftests/net/forwarding/tc_flower_port_range.sh

-- 
2.40.1