From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 70B8AA0093; Fri, 1 Jul 2022 04:22:03 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9B14142B86; Fri, 1 Jul 2022 04:21:22 +0200 (CEST) Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2131.outbound.protection.outlook.com [40.107.243.131]) by mails.dpdk.org (Postfix) with ESMTP id 0610342B81 for ; Fri, 1 Jul 2022 04:21:21 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kE/Ug/dfnDJ7zIh9JB0zLxjaOcsIX5NqtqYc5JRvdCP2JgYcgbkhyGLsIXZDU1pFnvA39o2KRNePUeRF0upH8BqxUD+kriK/LhX60RnHiRJHtXktJ4Y+wpJv2C6VdhkR2BR7NjwLlyEo+IDKaOHQi9MJsWVPaNqz3UGJR64++zrjRKV5iRp8gikYdtamMDeYHLkWGJupERAZa3SENIrQOvjVVcR+kriWH13t4Sp93BUrbSPYYNtpmGPzIrSSTKDaIX9F2FsGReo8I/0/Wo5SwWKbhS6nwetLZBPMIfsaPnmzoXVReuk0/saGaY/lXjHAINUlG88dSfKdflkPFCfgQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=b8bT9YKGR9pqmupZtfvWnjJTxPMp3Qi+aLlqBvHztxk=; b=Bz+BpKlm6Kkda3zsTTM5/QZn74zAPfX3k4TTCOZidCEMJ67UiIiUCkXQTJshbJF0i829k967sskAKgFyZo6vfeqszPDkSL8q2gnVyS7ez51iDR07JDHLDbxqk1ydAyAVp4sOLe193f+cztT5Dz+wiR34YAnUZNf6Gnc5visISE+nHv+O2g83kwPCD6a1Q9ANmzVXrbaTcinno3rmJdXsmrMVktkEWf3HqHDZ9e3N0ArNCLsMMHjJQhQry8gCgLR+9+DYd1k/R9mnF+stzyZTzJwu0nZiWyz3uArM8zSWTgDaBXmzGk9bkejM/3aczMXxFrpH9SVU5dGx6VYll7byUA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=corigine.com; dmarc=pass action=none header.from=corigine.com; dkim=pass header.d=corigine.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=corigine.onmicrosoft.com; s=selector2-corigine-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=b8bT9YKGR9pqmupZtfvWnjJTxPMp3Qi+aLlqBvHztxk=; b=Ad7GuBsRHhZubMw/t3HAmdrnZx576gvM1cROSrwcxxG45GZxPFpXJCnjleLQcpbUhaDXR4oAEJXwvfPt1EVIehFZwAs+Cu1uGaPD5Ti0jrNWyrHMVJeAmttHxik1o8gZz47oOORuQEZip17n/wEIM2DZLlxTqqYdHXk3URpxRAY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; Received: from SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) by DM6PR13MB2379.namprd13.prod.outlook.com (2603:10b6:5:bf::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5417.8; Fri, 1 Jul 2022 02:21:19 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::5d9e:9ce5:51d1:2021]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::5d9e:9ce5:51d1:2021%9]) with mapi id 15.20.5395.014; Fri, 1 Jul 2022 02:21:19 +0000 From: Chaoyong He To: dev@dpdk.org Cc: niklas.soderlund@corigine.com, Chaoyong He , Heinrich Kuhn Subject: [PATCH v4 08/12] net/nfp: move common rxtx function for flower use Date: Fri, 1 Jul 2022 10:20:13 +0800 Message-Id: <1656642017-8992-9-git-send-email-chaoyong.he@corigine.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1656642017-8992-1-git-send-email-chaoyong.he@corigine.com> References: <1656642017-8992-1-git-send-email-chaoyong.he@corigine.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SG2PR02CA0079.apcprd02.prod.outlook.com (2603:1096:4:90::19) To SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ab35540a-14e4-4d49-3a6f-08da5b08626f X-MS-TrafficTypeDiagnostic: DM6PR13MB2379:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JSvQmF+UPtHEOEddsPmhbIzxk4Km18oehWN/6lnEiQ8/ekBRVBcOADCvLhslZPH4qihwq2Mkn8dZp56iFaunLxEpDURiQ61ZLK2SsJTtRMr4rBdy4+h/l0eGPCiYokQComU3ePC4KEv3K9kL2ZwBYld+E18jl+4Oox7uUF2HgQ1kpuVwK9g+/y3MQuroqtNwY2U5s3keQu7s6lIORzTE6ZHgwpC/M/1Bjfy+A5Y208xWbkpP9yYFXwfHHhL1rd/7b+LXKo67LUmnxS9XqSy82aDnlHrGSuziy5fY41eBIeo45cO8gYFygGUv2j4JWu4s64LPzdbQUVTmlvrxqnZ9pi+e1L2NqHBixIywji6LUwEQP6y/0nPeo9aadcZVk2MkkKXzLb4GyvNLD0qhW8f+/Nps8DlExDhXvJVnONJSvBfXHuAajYPRIvt7FvZYFW6ffGBVoJ11SRy2WBbVftCrSwvgyCH6DK97k0Tzg1+rL0RhMRXmxlQl5YSZi6u/DH8Iq573hxjEWbVZNxreJl9WyAtD4dVLBu3g7dfQojDApUCot9piFM1ysKdeV1UFNDmwXRlN/C0U0OaepapaSPQtx5DNEx6eradQnmb+GNOM9ea9Voy5LogHQNhxhYiJaIYiw7ExlzjWs+qHXarm6Thniva2pojythOocavXVZB8we4yijwkQJR4EariQ5XF/Y/13t6apX2nImg+KBVGLYw/RuJ5V8eRqN1H7JXhtCh60PvqI6OJYFFcxHuudDEG2KBUdIlU6+nGDinlee8XRtQBgPNqUmSRHxtO2/d+28elRKq4Wd35SXHhhHPqPjA/d2UU X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB5545.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(376002)(396003)(346002)(366004)(136003)(39840400004)(186003)(6486002)(38100700002)(478600001)(83380400001)(107886003)(2616005)(38350700002)(4326008)(316002)(6916009)(66946007)(66476007)(5660300002)(6512007)(6506007)(66556008)(26005)(52116002)(44832011)(41300700001)(86362001)(36756003)(8936002)(6666004)(2906002)(54906003)(8676002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?KzlZcnpscGNEa245TDhZTmljTXZpeXpVL3Y5UjJwSXN0UkhFam0xcEJIUVpW?= =?utf-8?B?Z2t3bXp0V2JQdXFLT05sbmtqVG9HeCtpVlFxMFRoQ092ZEtXejRmR01ZWXdW?= =?utf-8?B?N1ZuVzZueTI5aUllN2ZmVDY4UllFUjczNkdYa3BzNjZYY0MrSUM4dlZ2UldE?= =?utf-8?B?ME1JNDh0bkZNVCtza01kd0p5c3BFbisxWi9TRzRpcXM1d2ZsekxFeWJYc20x?= =?utf-8?B?eW9yRmx2RVJ3UUNXSnZoYVozS05odUk3ZlpWcjJ3SmNCWkhRSndGZFAwb1Vy?= =?utf-8?B?a3RuR0JFTU9tbEVNR0k4YjVnTTY3NVpPNzhGdUYvdWJ3a21FUUpmSGFxUTFD?= =?utf-8?B?NFE5NDIxWFltLzhXbGIvUXljL0dMQk12T2VPcER0cWNFZ3ZwVW13eGtmNi9V?= =?utf-8?B?YjUxV0g0NmZudTdhWCtzaVJ0VkZTbEtXZVFpN1dRR05tNjNpK25kZlJDbm8v?= =?utf-8?B?ZjlLaVZvc1g2eURuOTUzK3Q2L0QrYWd1dE84Yzg0YkY4S1dTdVBxbk1MVTV5?= =?utf-8?B?MStIb3NjTUNmQWdSSmhjRW00czZJV3BzTVFKN0Nzd3lmNytHQjdvT1RWdFcz?= =?utf-8?B?NTBKSkMzbzAxN3ZMYm55SHZVR2haYkN6VTA4M211OU51YWZZNVU5VG8xRjBM?= =?utf-8?B?MW1NZ3NqZXJGeFByTFBRUzdXZ3VrLzlxUDNwK05lOTVreXcya3JsT2lYcFBJ?= =?utf-8?B?ekJWU1NncUhrUjVFSnM3QXNqVkRYbEw4VXNsQkJCcVc2WHRBblE4VTN2VTJD?= =?utf-8?B?UzNuN21haU5yTGVONnQ1NlZBSXJFaVNQWEJDZHcrWmR0ZDduVjQrVlJZRWY4?= =?utf-8?B?NCt6NVZsWUZiZ3J6TFo2QjBJVlExRHlvaGk0TUlaUTR0Mm1iMHVMc0hkVytr?= =?utf-8?B?b2h1MTIxaHVrL2hTT051dU84azF4TWxRdzNMZEpTMWNOZC9zYlJhTVFoUGpF?= =?utf-8?B?Qkt4TTdUVTBJZFB2ZE1HWDllbUdlUGZGTXc4MlNwbWJFTkp0SUlGaFRKWUJp?= =?utf-8?B?WENMUlJqZUNPRXZHTGRXZjRQb2JiT1d3TEgxTkMrc045Rll0dkttTjFWRjI4?= =?utf-8?B?M0x3dHRFSmQzNllPNGx1c0lDOVVHZ2VOamN2Z1MvaHFZeHkrWHc0SWkyVm5Q?= =?utf-8?B?QUNMcktnQkRMc00wQjhyTGpRT3hta0NYams0UjFXcFhLdFRNK0ZUK2svS1lX?= =?utf-8?B?YzZaL3Z5Mnk4RHFYR2lkdEQwdmpXS2R2ZzVraVR3b1hvMHAwUXJJWFBwbGw2?= =?utf-8?B?TE40eWM1eHdaQVRicUtlUG5WTHZ1TlByVU5EYjk5UjJtemVmZEdmQUxNK1NO?= =?utf-8?B?UDN3QTZEUEhCUlB3Z0xEZDZ0OFoxY01XejlqSXI4MWJLQ01naUcvS2hzeHY4?= =?utf-8?B?N1ZsSjRLSm1pUzNseERmQ2ZlUXIyYXdSR1k0Z0NRdk5hN2szaVEycW85WUU2?= =?utf-8?B?UWhYN3pjZ0daR3dVcXlFZ2ZHdDU4R2FlaUdMc3R4L3FZMDlYeDFTR3ovZHE5?= =?utf-8?B?VTVJZVl6L2FWMlNCTlNxcDlqNzZyWFNxL2NCNWFkMmlnRTJaZHZrcXA0aXNv?= =?utf-8?B?dUMxSEJrWkFLUFUrSVZCUGxqOUtOUVZtTGt3Z1RMVlYzdktzbG1tb3dRZ25Y?= =?utf-8?B?R2VlbXhtWVQ3TnJDbkI0WXA4RFZrY1JGbnF1TDZvTllnaWVEY3BLWlBqUVFX?= =?utf-8?B?QnQ2N0dxaGlxZmljdHNSeE9GQURUZnZIODdFMjg1NUVnNUZ1MFhWK3B3MDF0?= =?utf-8?B?S01kbGpZcnhyWHpqSmh6cndhWU10c3JDOWk3Q0RtZXFUSUhBWm5TRktucXB4?= =?utf-8?B?b2w5L3Z1VnVrWmJrM0xXV3cxcTNaQnlPajlhUmFqZnJla0tPYWVWSmpIeTlh?= =?utf-8?B?OTRwTHVGSjIxTHVQN1hPRnlNTWVrcU5uS1NwQWp5VWhRNk9LYitmMnljY2ZM?= =?utf-8?B?QUVYOUNhMkpyOFN5VitiN0xHOURHQWRNY3psUXg2K0duQXRqcERkZ3VUaGhl?= =?utf-8?B?SFVSS0hhWWp2eG4vR3B1UWlBb3IrdTRScnFxaHVTWmxxV2MvRGFDdGFvOG81?= =?utf-8?B?elhQdjd5U3N6OVp4MDBtY3cxQm5xdFllV1AvSnJ0TkRXVGpYZGxRak0yL3Ns?= =?utf-8?B?MnlKWDBXQUJHMit4NnZLdEJzRmZPU0k0MkdEckRWZXZXRG8wVUJkanNPSWQ3?= =?utf-8?B?UWc9PQ==?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: ab35540a-14e4-4d49-3a6f-08da5b08626f X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jul 2022 02:21:19.8324 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fe128f2c-073b-4c20-818e-7246a585940c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lYPO36srxeDGrmvHRG37X5RZ4JW197k3H8SXG3GJdPTN09WH6UC73SvBw4C/A/LTU/Sk/vT2YfYT8qgaRcVt3txQpq5E/kCKF/Dsf5SKRfs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR13MB2379 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This commit move some common Rx and Tx logic to the rxtx header file so that they can be re-used by flower tx and rx logic. Signed-off-by: Chaoyong He Signed-off-by: Heinrich Kuhn Reviewed-by: Niklas Söderlund --- drivers/net/nfp/nfp_rxtx.c | 32 +------------------------------- drivers/net/nfp/nfp_rxtx.h | 31 +++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/drivers/net/nfp/nfp_rxtx.c b/drivers/net/nfp/nfp_rxtx.c index 7414c51..cdcf5c2 100644 --- a/drivers/net/nfp/nfp_rxtx.c +++ b/drivers/net/nfp/nfp_rxtx.c @@ -116,12 +116,6 @@ return count; } -static inline void -nfp_net_mbuf_alloc_failed(struct nfp_net_rxq *rxq) -{ - rte_eth_devices[rxq->port_id].data->rx_mbuf_alloc_failed++; -} - /* * nfp_net_set_hash - Set mbuf hash data * @@ -583,7 +577,7 @@ * @txq: TX queue to work with * Returns number of descriptors freed */ -static int +int nfp_net_tx_free_bufs(struct nfp_net_txq *txq) { uint32_t qcp_rd_p; @@ -774,30 +768,6 @@ return 0; } -/* Leaving always free descriptors for avoiding wrapping confusion */ -static inline -uint32_t nfp_net_nfd3_free_tx_desc(struct nfp_net_txq *txq) -{ - if (txq->wr_p >= txq->rd_p) - return txq->tx_count - (txq->wr_p - txq->rd_p) - 8; - else - return txq->rd_p - txq->wr_p - 8; -} - -/* - * nfp_net_txq_full - Check if the TX queue free descriptors - * is below tx_free_threshold - * - * @txq: TX queue to check - * - * This function uses the host copy* of read/write pointers - */ -static inline -uint32_t nfp_net_nfd3_txq_full(struct nfp_net_txq *txq) -{ - return (nfp_net_nfd3_free_tx_desc(txq) < txq->tx_free_thresh); -} - /* nfp_net_tx_tso - Set TX descriptor for TSO */ static inline void nfp_net_nfd3_tx_tso(struct nfp_net_txq *txq, struct nfp_net_nfd3_tx_desc *txd, diff --git a/drivers/net/nfp/nfp_rxtx.h b/drivers/net/nfp/nfp_rxtx.h index 5c005d7..a30171f 100644 --- a/drivers/net/nfp/nfp_rxtx.h +++ b/drivers/net/nfp/nfp_rxtx.h @@ -330,6 +330,36 @@ struct nfp_net_rxq { int rx_qcidx; } __rte_aligned(64); +static inline void +nfp_net_mbuf_alloc_failed(struct nfp_net_rxq *rxq) +{ + rte_eth_devices[rxq->port_id].data->rx_mbuf_alloc_failed++; +} + +/* Leaving always free descriptors for avoiding wrapping confusion */ +static inline uint32_t +nfp_net_nfd3_free_tx_desc(struct nfp_net_txq *txq) +{ + if (txq->wr_p >= txq->rd_p) + return txq->tx_count - (txq->wr_p - txq->rd_p) - 8; + else + return txq->rd_p - txq->wr_p - 8; +} + +/* + * nfp_net_nfd3_txq_full - Check if the TX queue free descriptors + * is below tx_free_threshold + * + * @txq: TX queue to check + * + * This function uses the host copy* of read/write pointers + */ +static inline uint32_t +nfp_net_nfd3_txq_full(struct nfp_net_txq *txq) +{ + return (nfp_net_nfd3_free_tx_desc(txq) < txq->tx_free_thresh); +} + int nfp_net_rx_freelist_setup(struct rte_eth_dev *dev); uint32_t nfp_net_rx_queue_count(void *rx_queue); uint16_t nfp_net_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, @@ -355,6 +385,7 @@ int nfp_net_nfdk_tx_queue_setup(struct rte_eth_dev *dev, uint16_t nfp_net_nfdk_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, uint16_t nb_pkts); +int nfp_net_tx_free_bufs(struct nfp_net_txq *txq); #endif /* _NFP_RXTX_H_ */ /* -- 1.8.3.1