net/mlx5: DR, Add missing query for vport 0
Currently, vport 0 capabilities are not set. To fix this, we now querying both eswitch manager and vport 0. Eswitch manager has an access to all the vports - for eswitch manager PF, all vports can be referred as other vports. The exception is embedded CPU mode, where there is vport 0 of ECPF and the PF vport 0. Here is how vport are queried: For Connect-X5/6: PF vport (0) and vports 1..n: vport number, other = true esw_manager is vport 0 (PF) For BlueField (in embedded CPU mode): ECPF vport: vport = 0, other = false PF vport (0) and 1..n: vport number, other = true esw_manager = vport 0 (ECPF) Also, note that there's no need for other_vport function parameter in dr_domain_query_vport - this value is now deduced locally in the function. Signed-off-by:Yuval Avnery <yuvalav@mellanox.com> Signed-off-by:
Yevgeny Kliteynik <kliteyn@nvidia.com> Reviewed-by:
Muhammad Sammar <muhammads@nvidia.com> Signed-off-by:
Saeed Mahameed <saeedm@nvidia.com>
Showing
- drivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c 2 additions, 0 deletionsdrivers/net/ethernet/mellanox/mlx5/core/steering/dr_cmd.c
- drivers/net/ethernet/mellanox/mlx5/core/steering/dr_domain.c 25 additions, 12 deletionsdrivers/net/ethernet/mellanox/mlx5/core/steering/dr_domain.c
- drivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h 5 additions, 0 deletionsdrivers/net/ethernet/mellanox/mlx5/core/steering/dr_types.h
Please register or sign in to comment