From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 8DC3F41C4D;
	Thu,  9 Feb 2023 10:44:32 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 7936F42D61;
	Thu,  9 Feb 2023 10:43:34 +0100 (CET)
Received: from mga12.intel.com (mga12.intel.com [192.55.52.136])
 by mails.dpdk.org (Postfix) with ESMTP id CB6CA42D41
 for <dev@dpdk.org>; Thu,  9 Feb 2023 10:43:30 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
 d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
 t=1675935811; x=1707471811;
 h=from:to:cc:subject:date:message-id:in-reply-to:
 references:mime-version:content-transfer-encoding;
 bh=CR204kpJ5/I7YbCN9g+qM8v5drD8mEXNak5cWwwbPQQ=;
 b=fPCRn8EuCWgR8Ao28kq4tTvwdKGwSZbLeAfch4YrXMXMlT+ZOcDsynUR
 L4JrOx0waIH4qlrL4ZYUELm3G5eDeQ38wwXGmE/Er+hk9uDvLN434pOua
 Ydv5WWsjIuF1dY8V++v/k99nhFCJ6Epn6/CASvCeRceQ+K3aJdUbiMMBp
 PoJ9CZ4zQFVaoR1zVtwGc9e47b5PrvEE6EDl745DWwBGGGtXMSz70JDMp
 1xqgOoWQYLQ/kh5iir2E6gZoX/UHw5M4DhRJiav7PYZo0gMRSL8VxVEFw
 RxOaMMh/+OVO2iWwN/RTpup8O+A3fxzRPCUQTrjMhYyQH1XcEyFp4n+8S g==;
X-IronPort-AV: E=McAfee;i="6500,9779,10615"; a="309712375"
X-IronPort-AV: E=Sophos;i="5.97,283,1669104000"; d="scan'208";a="309712375"
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 09 Feb 2023 01:43:18 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=McAfee;i="6500,9779,10615"; a="697964720"
X-IronPort-AV: E=Sophos;i="5.97,283,1669104000"; d="scan'208";a="697964720"
Received: from dpdk-mingxial-01.sh.intel.com ([10.67.119.167])
 by orsmga008.jf.intel.com with ESMTP; 09 Feb 2023 01:43:14 -0800
From: Mingxia Liu <mingxia.liu@intel.com>
To: dev@dpdk.org, qi.z.zhang@intel.com, jingjing.wu@intel.com,
 beilei.xing@intel.com
Cc: Mingxia Liu <mingxia.liu@intel.com>
Subject: [PATCH v5 14/21] net/cpfl: support Tx offloading
Date: Thu,  9 Feb 2023 08:45:34 +0000
Message-Id: <20230209084541.2712723-15-mingxia.liu@intel.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20230209084541.2712723-1-mingxia.liu@intel.com>
References: <20230118075738.904616-1-mingxia.liu@intel.com>
 <20230209084541.2712723-1-mingxia.liu@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

Add Tx offloading support:
 - support TSO for single queue model and split queue model.

Signed-off-by: Mingxia Liu <mingxia.liu@intel.com>
---
 doc/guides/nics/features/cpfl.ini | 1 +
 drivers/net/cpfl/cpfl_ethdev.c    | 8 +++++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/doc/guides/nics/features/cpfl.ini b/doc/guides/nics/features/cpfl.ini
index ee5948f444..f4e45c7c68 100644
--- a/doc/guides/nics/features/cpfl.ini
+++ b/doc/guides/nics/features/cpfl.ini
@@ -8,6 +8,7 @@
 ;
 [Features]
 MTU update           = Y
+TSO                  = P
 L3 checksum offload  = P
 L4 checksum offload  = P
 Linux                = Y
diff --git a/drivers/net/cpfl/cpfl_ethdev.c b/drivers/net/cpfl/cpfl_ethdev.c
index 3c0145303e..a0bdfb5ca4 100644
--- a/drivers/net/cpfl/cpfl_ethdev.c
+++ b/drivers/net/cpfl/cpfl_ethdev.c
@@ -105,7 +105,13 @@ cpfl_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
 		RTE_ETH_RX_OFFLOAD_TCP_CKSUM            |
 		RTE_ETH_RX_OFFLOAD_OUTER_IPV4_CKSUM;
 
-	dev_info->tx_offload_capa = RTE_ETH_TX_OFFLOAD_MULTI_SEGS;
+	dev_info->tx_offload_capa =
+		RTE_ETH_TX_OFFLOAD_IPV4_CKSUM		|
+		RTE_ETH_TX_OFFLOAD_UDP_CKSUM		|
+		RTE_ETH_TX_OFFLOAD_TCP_CKSUM		|
+		RTE_ETH_TX_OFFLOAD_SCTP_CKSUM		|
+		RTE_ETH_TX_OFFLOAD_TCP_TSO		|
+		RTE_ETH_TX_OFFLOAD_MULTI_SEGS;
 
 	dev_info->default_txconf = (struct rte_eth_txconf) {
 		.tx_free_thresh = CPFL_DEFAULT_TX_FREE_THRESH,
-- 
2.25.1