[PATCH v3 2/5] common/mlx5: extend HCA attribute query for NSH
Haifei Luo
haifeil at nvidia.com
Mon Sep 25 10:07:43 CEST 2023
Add NSH supporting field in two places:
1. New HCA capability indicating NSH is supported
2. New field in "mlx5_ifc_per_protocol_networking_offload_caps_bits"
structure
Signed-off-by: Haifei Luo <haifeil at nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
Acked-by: Suanming Mou <suanmingm at nvidia.com>
---
drivers/common/mlx5/mlx5_devx_cmds.c | 3 +++
drivers/common/mlx5/mlx5_devx_cmds.h | 1 +
drivers/common/mlx5/mlx5_prm.h | 4 +++-
3 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c
index 66a77159a0..830199212e 100644
--- a/drivers/common/mlx5/mlx5_devx_cmds.c
+++ b/drivers/common/mlx5/mlx5_devx_cmds.c
@@ -1313,6 +1313,9 @@ mlx5_devx_cmd_query_hca_attr(void *ctx,
attr->tunnel_stateless_gtp = MLX5_GET
(per_protocol_networking_offload_caps,
hcattr, tunnel_stateless_gtp);
+ attr->tunnel_stateless_vxlan_gpe_nsh = MLX5_GET
+ (per_protocol_networking_offload_caps,
+ hcattr, tunnel_stateless_vxlan_gpe_nsh);
attr->rss_ind_tbl_cap = MLX5_GET
(per_protocol_networking_offload_caps,
hcattr, rss_ind_tbl_cap);
diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h
index e071cd841f..11772431ae 100644
--- a/drivers/common/mlx5/mlx5_devx_cmds.h
+++ b/drivers/common/mlx5/mlx5_devx_cmds.h
@@ -196,6 +196,7 @@ struct mlx5_hca_attr {
uint32_t tunnel_stateless_geneve_rx:1;
uint32_t geneve_max_opt_len:1; /* 0x0: 14DW, 0x1: 63DW */
uint32_t tunnel_stateless_gtp:1;
+ uint32_t tunnel_stateless_vxlan_gpe_nsh:1;
uint32_t max_lso_cap;
uint32_t scatter_fcs:1;
uint32_t lro_cap:1;
diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h
index 51f426c614..f005877dd7 100644
--- a/drivers/common/mlx5/mlx5_prm.h
+++ b/drivers/common/mlx5/mlx5_prm.h
@@ -1964,7 +1964,9 @@ struct mlx5_ifc_per_protocol_networking_offload_caps_bits {
u8 swp_lso[0x1];
u8 reserved_at_23[0x8];
u8 tunnel_stateless_gtp[0x1];
- u8 reserved_at_25[0x4];
+ u8 reserved_at_25[0x2];
+ u8 tunnel_stateless_vxlan_gpe_nsh[0x1];
+ u8 reserved_at_28[0x1];
u8 max_vxlan_udp_ports[0x8];
u8 reserved_at_38[0x6];
u8 max_geneve_opt_len[0x1];
--
2.27.0
More information about the dev
mailing list