On 12/12/2024 19:31, Simon Horman wrote:
On Wed, Dec 11, 2024 at 03:42:21PM +0200, Tariq Toukan wrote:
From: Itamar Gozlan <igozlan@xxxxxxxxxx>
Add support for a new steering format version that is implemented by
ConnectX-8.
Except for several differences, the STEv3 is identical to STEv2, so
for most callbacks STEv3 context struct will call STEv2 functions.
Signed-off-by: Itamar Gozlan <igozlan@xxxxxxxxxx>
Signed-off-by: Yevgeny Kliteynik <kliteyn@xxxxxxxxxx>
Signed-off-by: Tariq Toukan <tariqt@xxxxxxxxxx>
---
.../net/ethernet/mellanox/mlx5/core/Makefile | 1 +
.../mlx5/core/steering/sws/dr_domain.c | 2 +-
.../mellanox/mlx5/core/steering/sws/dr_ste.c | 2 +
.../mellanox/mlx5/core/steering/sws/dr_ste.h | 1 +
.../mlx5/core/steering/sws/dr_ste_v3.c | 221 ++++++++++++++++++
.../mlx5/core/steering/sws/mlx5_ifc_dr.h | 40 ++++
.../mellanox/mlx5/core/steering/sws/mlx5dr.h | 2 +-
7 files changed, 267 insertions(+), 2 deletions(-)
create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_ste_v3.c
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/Makefile b/drivers/net/ethernet/mellanox/mlx5/core/Makefile
index 79fe09de0a9f..10a763e668ed 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/Makefile
+++ b/drivers/net/ethernet/mellanox/mlx5/core/Makefile
@@ -123,6 +123,7 @@ mlx5_core-$(CONFIG_MLX5_SW_STEERING) += steering/sws/dr_domain.o \
steering/sws/dr_ste_v0.o \
steering/sws/dr_ste_v1.o \
steering/sws/dr_ste_v2.o \
+ steering/sws/dr_ste_v3.o \
steering/sws/dr_cmd.o \
steering/sws/dr_fw.o \
steering/sws/dr_action.o \
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_domain.c b/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_domain.c
index 3d74109f8230..bd361ba6658c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_domain.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_domain.c
@@ -8,7 +8,7 @@
#define DR_DOMAIN_SW_STEERING_SUPPORTED(dmn, dmn_type) \
((dmn)->info.caps.dmn_type##_sw_owner || \
((dmn)->info.caps.dmn_type##_sw_owner_v2 && \
- (dmn)->info.caps.sw_format_ver <= MLX5_STEERING_FORMAT_CONNECTX_7))
+ (dmn)->info.caps.sw_format_ver <= MLX5_STEERING_FORMAT_CONNECTX_8))
A definition for MLX5_STEERING_FORMAT_CONNECTX_8 seems to be missing
from this patch.
Should be pulled from mlx5-next, as described in the cover letter.
Copying here for your convenience:
It requires pulling 4 IFC patches that were applied to
mlx5-next:
https://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git/log/?h=mlx5-next
bool mlx5dr_domain_is_support_ptrn_arg(struct mlx5dr_domain *dmn)
{
...