From: Viacheslav Ovsiienko Date: Thu, 21 Nov 2019 17:59:42 +0000 (+0000) Subject: net/mlx5: fix getting metadata register for E-Switch domain X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=8723061aa65e2d1764994d810940d61c1f5948ee;p=dpdk.git net/mlx5: fix getting metadata register for E-Switch domain The metadata register used for META item/action within E-Switch steering domain should be altered depending on dv_xmeta_en devarg value. Fixes: 3e8edd0ef848 ("net/mlx5: update metadata register ID query") Signed-off-by: Viacheslav Ovsiienko Acked-by: Matan Azrad --- diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index b488b679ed..65a0e656b3 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -364,7 +364,15 @@ mlx5_flow_get_reg_id(struct rte_eth_dev *dev, case MLX5_METADATA_TX: return REG_A; case MLX5_METADATA_FDB: - return REG_C_0; + switch (config->dv_xmeta_en) { + case MLX5_XMETA_MODE_LEGACY: + return REG_NONE; + case MLX5_XMETA_MODE_META16: + return REG_C_0; + case MLX5_XMETA_MODE_META32: + return REG_C_1; + } + break; case MLX5_FLOW_MARK: switch (config->dv_xmeta_en) { case MLX5_XMETA_MODE_LEGACY: