From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xueming Li Subject: [PATCH 5/6] net/mlx5: support TX common tunnel offloads Date: Tue, 9 Jan 2018 22:11:09 +0800 Message-ID: <20180109141110.146250-6-xuemingl@mellanox.com> References: <20180109141110.146250-1-xuemingl@mellanox.com> Cc: Xueming Li , Shahaf Shuler , dev@dpdk.org To: Olivier MATZ , Thomas Monjalon , Jingjing Wu , Yongseok Koh Return-path: Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id CB5031B1B1 for ; Tue, 9 Jan 2018 16:00:17 +0100 (CET) In-Reply-To: <20180109141110.146250-1-xuemingl@mellanox.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Support new TX common offloads DEV_TX_OFFLOAD_COMMON_TNL including common tunnel chksum and common tunnel tso. Signed-off-by: Xueming Li --- drivers/net/mlx5/mlx5_ethdev.c | 3 ++- drivers/net/mlx5/mlx5_txq.c | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c index adaa34fff..80d984312 100644 --- a/drivers/net/mlx5/mlx5_ethdev.c +++ b/drivers/net/mlx5/mlx5_ethdev.c @@ -1400,7 +1400,8 @@ priv_select_tx_function(struct priv *priv, struct rte_eth_dev *dev) uint64_t tx_offloads = dev->data->dev_conf.txmode.offloads; int tso = !!(tx_offloads & (DEV_TX_OFFLOAD_TCP_TSO | DEV_TX_OFFLOAD_VXLAN_TNL_TSO | - DEV_TX_OFFLOAD_GRE_TNL_TSO)); + DEV_TX_OFFLOAD_GRE_TNL_TSO | + DEV_TX_OFFLOAD_GENERIC_TNL_CKSUM_TSO)); int vlan_insert = !!(tx_offloads & DEV_TX_OFFLOAD_VLAN_INSERT); assert(priv != NULL); diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c index 0e8498161..f4a75b41c 100644 --- a/drivers/net/mlx5/mlx5_txq.c +++ b/drivers/net/mlx5/mlx5_txq.c @@ -143,6 +143,8 @@ mlx5_priv_get_tx_port_offloads(struct priv *priv) if (config->tso) offloads |= (DEV_TX_OFFLOAD_VXLAN_TNL_TSO | DEV_TX_OFFLOAD_GRE_TNL_TSO); + if (config->swp) + offloads |= DEV_TX_OFFLOAD_GENERIC_TNL_CKSUM_TSO; } return offloads; } @@ -729,7 +731,8 @@ txq_set_params(struct mlx5_txq_ctrl *txq_ctrl) txq_ctrl->txq.tso_en = 1; } txq_ctrl->txq.tunnel_en = config->tunnel_en; - txq_ctrl->txq.swp_en = config->swp; + txq_ctrl->txq.swp_en = (DEV_TX_OFFLOAD_GENERIC_TNL_CKSUM_TSO & + txq_ctrl->txq.offloads) && config->swp; } /** -- 2.13.3