Need to read maximum connection tracking
objects from HCA attributes.

Signed-off-by: Maayan Kashani <mkash...@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnow...@nvidia.com>
---
 drivers/common/mlx5/mlx5_devx_cmds.c | 3 +++
 drivers/common/mlx5/mlx5_devx_cmds.h | 1 +
 2 files changed, 4 insertions(+)

diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c 
b/drivers/common/mlx5/mlx5_devx_cmds.c
index 9952733c908..0e428842ffa 100644
--- a/drivers/common/mlx5/mlx5_devx_cmds.c
+++ b/drivers/common/mlx5/mlx5_devx_cmds.c
@@ -1170,6 +1170,9 @@ mlx5_devx_cmd_query_hca_attr(void *ctx,
                        (rc & MLX5_CROSS_VHCA_ALLOWED_OBJS_TIR) &&
                        (rc & MLX5_CROSS_VHCA_ALLOWED_OBJS_FT) &&
                        (rc & MLX5_CROSS_VHCA_ALLOWED_OBJS_RTC);
+               if (attr->ct_offload)
+                       attr->log_max_conn_track_offload = 
MLX5_GET(cmd_hca_cap_2, hcattr,
+                               log_max_conn_track_offload);
        }
        if (attr->log_min_stride_wqe_sz == 0)
                attr->log_min_stride_wqe_sz = MLX5_MPRQ_LOG_MIN_STRIDE_WQE_SIZE;
diff --git a/drivers/common/mlx5/mlx5_devx_cmds.h 
b/drivers/common/mlx5/mlx5_devx_cmds.h
index c79f8dc48d8..f7383f4cfe8 100644
--- a/drivers/common/mlx5/mlx5_devx_cmds.h
+++ b/drivers/common/mlx5/mlx5_devx_cmds.h
@@ -326,6 +326,7 @@ struct mlx5_hca_attr {
        uint32_t wqe_based_flow_table_sup:1;
        uint8_t max_header_modify_pattern_length;
        uint64_t system_image_guid;
+       uint32_t log_max_conn_track_offload:5;
 };
 
 /* LAG Context. */
-- 
2.21.0

Reply via email to