net/mlx5: fs, add HWS get capabilities

Add API function get capabilities to HW Steering flow commands.

Signed-off-by: Moshe Shemesh <moshe@nvidia.com>
Reviewed-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/20250109160546.1733647-13-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Moshe Shemesh 2025-01-09 18:05:43 +02:00 committed by Jakub Kicinski
parent 866e503212
commit c09cf80ed2

View file

@ -1333,6 +1333,17 @@ static int mlx5_cmd_hws_destroy_match_definer(struct mlx5_flow_root_namespace *n
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
static u32 mlx5_cmd_hws_get_capabilities(struct mlx5_flow_root_namespace *ns,
enum fs_flow_table_type ft_type)
{
if (ft_type != FS_FT_FDB)
return 0;
return MLX5_FLOW_STEERING_CAP_VLAN_PUSH_ON_RX |
MLX5_FLOW_STEERING_CAP_VLAN_POP_ON_TX |
MLX5_FLOW_STEERING_CAP_MATCH_RANGES;
}
static const struct mlx5_flow_cmds mlx5_flow_cmds_hws = { static const struct mlx5_flow_cmds mlx5_flow_cmds_hws = {
.create_flow_table = mlx5_cmd_hws_create_flow_table, .create_flow_table = mlx5_cmd_hws_create_flow_table,
.destroy_flow_table = mlx5_cmd_hws_destroy_flow_table, .destroy_flow_table = mlx5_cmd_hws_destroy_flow_table,
@ -1352,6 +1363,7 @@ static const struct mlx5_flow_cmds mlx5_flow_cmds_hws = {
.create_ns = mlx5_cmd_hws_create_ns, .create_ns = mlx5_cmd_hws_create_ns,
.destroy_ns = mlx5_cmd_hws_destroy_ns, .destroy_ns = mlx5_cmd_hws_destroy_ns,
.set_peer = mlx5_cmd_hws_set_peer, .set_peer = mlx5_cmd_hws_set_peer,
.get_capabilities = mlx5_cmd_hws_get_capabilities,
}; };
const struct mlx5_flow_cmds *mlx5_fs_cmd_get_hws_cmds(void) const struct mlx5_flow_cmds *mlx5_fs_cmd_get_hws_cmds(void)