From patchwork Mon Apr 9 13:19:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sunil Kumar Kori X-Patchwork-Id: 37662 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A3FB91B83C; Mon, 9 Apr 2018 16:30:07 +0200 (CEST) Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0065.outbound.protection.outlook.com [104.47.42.65]) by dpdk.org (Postfix) with ESMTP id 5CF511B82E for ; Mon, 9 Apr 2018 16:30:03 +0200 (CEST) Received: from BLUPR0301CA0012.namprd03.prod.outlook.com (2a01:111:e400:5259::22) by BY1PR03MB1370.namprd03.prod.outlook.com (2a01:111:e400:5228::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.653.12; Mon, 9 Apr 2018 14:30:01 +0000 Received: from BN1BFFO11FD009.protection.gbl (2a01:111:f400:7c10::1:109) by BLUPR0301CA0012.outlook.office365.com (2a01:111:e400:5259::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.653.12 via Frontend Transport; Mon, 9 Apr 2018 14:30:01 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1BFFO11FD009.mail.protection.outlook.com (10.58.144.72) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.631.7 via Frontend Transport; Mon, 9 Apr 2018 14:30:01 +0000 Received: from sunil-OptiPlex-790.ap.freescale.net (sunil-OptiPlex-790.ap.freescale.net [10.232.132.53]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id w39DKv5f014812; Mon, 9 Apr 2018 06:20:58 -0700 From: Sunil Kumar Kori To: CC: , Date: Mon, 9 Apr 2018 18:49:51 +0530 Message-ID: <20180409131952.20948-1-sunil.kori@nxp.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20180409102602.24294-2-sunil.kori@nxp.com> References: <20180409102602.24294-2-sunil.kori@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131677578020529380; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(346002)(39860400002)(376002)(39380400002)(396003)(2980300002)(1110001)(1109001)(339900001)(199004)(189003)(81156014)(81166006)(8676002)(2351001)(1076002)(446003)(76176011)(47776003)(51416003)(16586007)(356003)(50466002)(8936002)(126002)(77096007)(97736004)(476003)(2616005)(486006)(11346002)(48376002)(336012)(26005)(2906002)(6916009)(6666003)(86362001)(50226002)(498600001)(305945005)(54906003)(104016004)(36756003)(105606002)(59450400001)(68736007)(85426001)(316002)(5660300001)(53936002)(106466001)(4326008); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR03MB1370; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; LANG:en; PTR:InfoDomainNonexistent; A:1; MX:1; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD009; 1:+mRqNRv34w8+vKgJLh8jncFwF+X0s0bNWaAt24/n73kwGpipukFStjpvHXI+4+hToZsURjClXW1KGR15kn08GEwzBykRd7ou0O/YSAWUywR0fYKSGxhrSH+S6tj4WTqq MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fd35934c-0613-491c-c383-08d59e266140 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(5600026)(4604075)(2017052603328); SRVR:BY1PR03MB1370; X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1370; 3:Arqk4ejdw2tMVXez/yMLNwvzMevoX1YVU2XovoEOfDhUXL+TQSUUyeCZHhkLDb9PoPYU7uID5jNST+W3kKF0ka0MHhbyBn1+NadqzbM8uqVP8DjovifiF8gvFnJGZXZt8VTLQp2vLnUQLTLnySvcGAjoVnYF0U2gHyacZQlkfXLj248kUyo1BBHJ4c/MbuFTDirdu4AxJ/rzF5m0vTsBKE/l6AKC+GFq1oHpUlzCkCuaYKwiGsDJbl9s/Zr7Jlv9Ln4WKx1WSfjxudQBrqei9JDmmANWP7EaOzDGK+0Dd+Y7GzwyTnzMJD4POS+S56zrklqi8S7Mw7AW4jTeI30t6r0G8g8LLliDbUU9KEpqMMk=; 25:XWci1n9Tt/7nj8j7GK+v2DgjhjeviySryLWcpMKpLf1yHIJ+kT5mFAeWPsSLM2zJT/ASLK3ONk9GE0HCgW63YAFDGPX3jqp/MUc4F+pyRfU8GkFLetVbT4m1WvfgJaopyYPO2gePtFLrldVbBPbShzP1rWai+/IbYe4KnhYv4p1ng6YIpj1ZIb9bmbd8nLIyU+BJ+J75MsoO9G2F1E+SJI7PSJrAcSII25Ew6xTCswreMeGGAxWsK1sXM5XqoNUe8JBrS8Y09H1qo5DDrC+fGeMKs+Gvm3VAZkDAjLGaHh1R896SYQZrvVeI+cREjUhGHcw0vejTClFHG1rA5fStew== X-MS-TrafficTypeDiagnostic: BY1PR03MB1370: X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1370; 31:wPv2PSfQnsvf38qxkYsnlHn9oXG11whTR4CQR5+adxckJ4miy/62ejsMQm885BbCtARM/ls8yif/OqHcE6UM9AJVH6w5wLa2iy8Ok51nZhYJwzwmR32Vpw15PyZ/5TRAP2PXXkOGZEGJaDeUjVbotSlsjBJzQvXQTiVo8Cb07ZJwMnGmeNXuftFHGPefb3eFh6O8tvmQP1v8RaNhm+NA524iflNpM90wc2GMzpjY86M=; 4:BDo++Wuu4zKbivX1DwSrvi1JEQRdU0uFL6B8KHH2og7Fy4rX/+XyaQJdq1twhhq66R8ojz9UTmk0vkQ64koBDlp7JOjytnBZrE1EDE6t8yYCg90hVMmG9nXH52cgQhYJ1ekf/yNoiv8vA62nPfXgHxeU0fsGYxDXJVaSDhYZZN1HsZLcMpci4hipgYwAN/gfdYRlmVWwjURhWSwncKVykcT7ybwnF3H4Cz9303uNFzCpboEHmMJkaqV4H8t912zH0exnOMOrB1vx8y84ypYY+eI/ekpq7rzCzKWy1B6SOd6qifGk9Gfz3uRVuw1MTFwG X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231221)(944501327)(52105095)(10201501046)(3002001)(6055026)(6096035)(20161123556025)(201703131430075)(201703131448075)(201703131433075)(201703151042153)(20161123559100)(20161123561025)(20161123565025)(20161123563025)(201708071742011); SRVR:BY1PR03MB1370; BCL:0; PCL:0; RULEID:(400006); SRVR:BY1PR03MB1370; X-Forefront-PRVS: 0637FCE711 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR03MB1370; 23:mEYUBsSYLTEuMCzfp7C0zcoTDfcyiT2tzsz5zgT71?= k8nhEtyKnFfZEiUKn6rgjeSpRMfJk7OreUD9PZJQ1R8e2qvLyVBRPSinSlZd5Esp5n3cayjtZU5ypKUykX6zswvTCcIASziqgILHl8lTRnKTNXFrw1FBn/E08wUZrSaEIGvgrnxSHwv7oD1z/oBiy58MeoLEmqLBqM5Ww4AU8ZJscTze6v+HuqipV63jnDNwBqd1hu0MhZ/cq57xzvY7Egvl21QeyhNnQi06jefk4icnBBrCJw0H4TfUhWm8/7BpANJO3Mo6DiLbiohZKkB5YfgTJ9sXzKSRYRMioWDP8Mpx2ka2zLvcE8uOdM9UwR2ImeSw3IH/YBqOluOFCfuM/u7sUkyd4TPWYjl0ojagySZphruacPkhwmxaW+DzLuhSYIcqxbxxUcgqfYGlIUUjeDZsVExmTLz+e0iX6iuMSqPa+PtEXLvW7jFtkIRjdpq6bvz+8FQcPea+aShluKoevbapw/U83XTRMm40aR3U1NG1g+3LR7hikGFuo2rqgPC4deMZJp+trHRWxuTScAhSUeTyOBuGDPWPpcnWug+QytNm7CIxzNRS8Q+r9l6OZZVXFFM/ts2n4m4+E+F8HHt0xe8Dr0IB/pJ21OzCfB+U6pg+tYeNKDuRkYyA9Hd+YZIS4qxD9LIu02OnFIZmzAozmn8KghxrTA6s8pyUBV7IaT0aEV8hTvwUsHkQUqkhgVyMljv8uTp6NN8zIGjcrCnTTvKzZuaKZeN7VwAIUv3lea98QD6r38YGOSax1j9aAMfsXWoSXmkcWMHznpagwDbH3nbTGx1oVKB9OXbVxsigCj9Om6D8PnAiT1Fdz3n4OgWwOEMZyzjEzoqsx69ds6tmaw4905QOiWGt08rIrgHOF/QJzKa4qWKUhQJZIE/0lXuX0NOFLwd+/R7pVpEFtdE3IOaih0e37Ab/Agu3HJcjzDMJ3pt56I8x8qR4R2kK7U6yJbsIyOG9NcQRkXPyKVrN3cXGcHfJHKjs6NBhWkvhQ9R3EUJ71YEAQEpyASq3VJvRUJrScNQl9EQQzPGq8xR9Z+O+9q3A9LvnDVp+nUnXe7bTjh9ZfKt122DdO8jS+GvjjRCnplta5LheX6jWHW9KCqHDPjSp7AlNTOungCojYN7PVnfCz6L4JCHuJ362ZzA3i6xCu3BxKYKBAFfWFUO3osc X-Microsoft-Antispam-Message-Info: Ru55ecGP81i/OWXz324HVpKJvkm8RpeZG3w3c92/rUrTYUDxrqWltoyH8hJJeoTMxjrLgdEks0lljsc8Y5ex++tYX8WQSczkWiC0nAnm7OKqw4Z8x5UgV6pbPhtyNmrr+mlxlR8x94FlLfnbzuhJYQr6gD8GHGVVOfhdsHg2M4r1yiRtqtN3x+GXIgHQR4oX X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1370; 6:AwNCo5xNsfE6h/tJHhi6WGTttK/lUln2SvhIDfQFmtW8IRGrf7DIHFcDUiUDUk7k3Az8obQ8wf0C2IUVGNel/dXzFvj7yiF0AyNqD+uw36POB5cFunThOxvvkXqtECiepj+hZNyBibemGfZnegF2a8aFjD5OMcW851vLymrXBtxj9LTh1lgyQhUUuzRa1agKS9TEcXpz1nsx1nsegqn+29kNHon8imGClujjZBhUuYFw1Apv3rjTAnGOh1bqlJhDA+XYnxjNhzkAJg+L3G93AzJ8sDE/0RFlUrlwz+4nhndmGLtDMndX/QZfbr7UkKtgQIgOMrX5wYeb29CoUlppE5rk7NSQhp9xdwb3J8bPFO2EsTyMbTdGe3SUtYZPI6MqS0TxWIddzWtUhssQaAXA7BT3A2aeYBIdHqPc3tVNiT6Gd6k9oo/H9CVNoP7EdJUNZUtgw+nImASwMDY9fozRSg==; 5:bTsnR0Uei1ltOrQaVsZHX7d2qz6qK72eUndPJ5IPWU4V+UxqEdWGoZ/ATNQDsYnh+jB6usK2bc9V5S+CbJ6Wy+vmORqZSS2iOs9Bsk7UX0kfZbzfaS/8a/ruuMcAUmE4XBp4sWaKizfkEV2uKQgCNUv3+fzQ+q3hkDUKSiznghg=; 24:yX/x0rqBZpX5RCzfssZbNUp5u0SQKPgY+VXH/nQ+sR42rFwLmO4d3SPDi5bzSbNclZBf1pxz5E+a1l9qu64Tq1Kmpakczx0WUyJZ+p0gu1U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1370; 7:d1bcj+PtpFMTlVE00W4Fnw3XAM1cql2mF59o0mTFYMApN9s5zklcza9yx+NASNBZBoKvxBS9kjli412iV6/XTL9WUWrghHaKMDMyyMrs8Dfxe6E/zwAZCv2Gvkf6brr7/BjkflHr4SIyHAalRlKQkeRp9KR8q61oTQa4sp/jTcgXhCAuBCGrO5vNLRQmkyl8Nlm7GtcwGM0gvksRz6VVu7G6FFS1yQV8ioPBbsBU9Sr0Rhdn8L4osNFbxutN7MNQ X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2018 14:30:01.8657 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fd35934c-0613-491c-c383-08d59e266140 X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1370 Subject: [dpdk-dev] [PATCH 1/2] net/dpaa: Changes to support ethdev offload APIs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Signed-off-by: Sunil Kumar Kori --- drivers/net/dpaa/dpaa_ethdev.c | 46 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c index db49364..efef62c 100644 --- a/drivers/net/dpaa/dpaa_ethdev.c +++ b/drivers/net/dpaa/dpaa_ethdev.c @@ -95,6 +95,9 @@ static const struct rte_dpaa_xstats_name_off dpaa_xstats_strings[] = { static struct rte_dpaa_driver rte_dpaa_pmd; +static void +dpaa_eth_dev_info(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info); + static inline void dpaa_poll_queue_default_config(struct qm_mcc_initfq *opts) { @@ -134,13 +137,42 @@ dpaa_mtu_set(struct rte_eth_dev *dev, uint16_t mtu) } static int -dpaa_eth_dev_configure(struct rte_eth_dev *dev __rte_unused) +dpaa_eth_dev_configure(struct rte_eth_dev *dev) { struct dpaa_if *dpaa_intf = dev->data->dev_private; + struct rte_eth_conf *eth_conf = &dev->data->dev_conf; + struct rte_eth_dev_info dev_info; + uint64_t rx_offloads = eth_conf->rxmode.offloads; + uint64_t tx_offloads = eth_conf->txmode.offloads; PMD_INIT_FUNC_TRACE(); - if (dev->data->dev_conf.rxmode.jumbo_frame == 1) { + dpaa_eth_dev_info(dev, &dev_info); + if (dev_info.rx_offload_capa != rx_offloads) { + DPAA_PMD_ERR("Some Rx offloads are not supported " + "requested 0x%" PRIx64 " supported 0x%" PRIx64, + rx_offloads, dev_info.rx_offload_capa); + return -ENOTSUP; + } + + if (dev_info.tx_offload_capa != tx_offloads) { + DPAA_PMD_ERR("Some Tx offloads are not supported " + "requested 0x%" PRIx64 " supported 0x%" PRIx64, + tx_offloads, dev_info.tx_offload_capa); + return -ENOTSUP; + } + + if (((rx_offloads & DEV_RX_OFFLOAD_IPV4_CKSUM) == 0) || + ((rx_offloads & DEV_RX_OFFLOAD_UDP_CKSUM) == 0) || + ((rx_offloads & DEV_RX_OFFLOAD_TCP_CKSUM) == 0) || + ((tx_offloads & DEV_TX_OFFLOAD_IPV4_CKSUM) == 0) || + ((tx_offloads & DEV_TX_OFFLOAD_UDP_CKSUM) == 0) || + ((tx_offloads & DEV_TX_OFFLOAD_TCP_CKSUM) == 0)) { + DPAA_PMD_ERR(" Cksum offloading is enabled by default " + " Cannot be disabled. So ignoring this configuration "); + } + + if (rx_offloads & DEV_RX_OFFLOAD_JUMBO_FRAME) { if (dev->data->dev_conf.rxmode.max_rx_pkt_len <= DPAA_MAX_RX_PKT_LEN) { fman_if_set_maxfrm(dpaa_intf->fif, @@ -259,11 +291,17 @@ static void dpaa_eth_dev_info(struct rte_eth_dev *dev, dev_info->rx_offload_capa = (DEV_RX_OFFLOAD_IPV4_CKSUM | DEV_RX_OFFLOAD_UDP_CKSUM | - DEV_RX_OFFLOAD_TCP_CKSUM); + DEV_RX_OFFLOAD_TCP_CKSUM) | + DEV_RX_OFFLOAD_JUMBO_FRAME | + DEV_RX_OFFLOAD_SCATTER; dev_info->tx_offload_capa = (DEV_TX_OFFLOAD_IPV4_CKSUM | DEV_TX_OFFLOAD_UDP_CKSUM | - DEV_TX_OFFLOAD_TCP_CKSUM); + DEV_TX_OFFLOAD_TCP_CKSUM) | + DEV_TX_OFFLOAD_MBUF_FAST_FREE | + DEV_TX_OFFLOAD_MULTI_SEGS; + + dev_info->default_rxconf.rx_drop_en = true; } static int dpaa_eth_link_update(struct rte_eth_dev *dev,