net/mlx5/hws: fix capability check on non eswitch manager

On context initialization the reparse capability support
for NIC and FDB tables was required for allowing HWS. This
caused a problem for devices that only want to run NIC
steering and are not the esw-manager fow which  FDB reparse
is disabled. Modified the check to require FDB reparse only for
esw-manager.

Fixes: b0290e56dd ("net/mlx5/hws: add context object")

Signed-off-by: Alex Vesker <valex@nvidia.com>
Reviewed-by: Erez Shitrit <erezsh@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
This commit is contained in:
Alex Vesker 2022-11-07 13:06:43 +02:00 committed by Raslan Darawsheh
parent 891fd2c116
commit 1caac4ad67

View File

@ -108,7 +108,8 @@ static void mlx5dr_context_check_hws_supp(struct mlx5dr_context *ctx)
}
/* Current solution requires all rules to set reparse bit */
if ((!caps->nic_ft.reparse || !caps->fdb_ft.reparse) ||
if ((!caps->nic_ft.reparse ||
(!caps->fdb_ft.reparse && caps->eswitch_manager)) ||
!IS_BIT_SET(caps->rtc_reparse_mode, MLX5_IFC_RTC_REPARSE_ALWAYS)) {
DR_LOG(INFO, "Required HWS reparse cap not supported");
return;