From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id CA4C8C32771 for ; Mon, 26 Sep 2022 07:01:19 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A084142B80; Mon, 26 Sep 2022 09:00:36 +0200 (CEST) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2130.outbound.protection.outlook.com [40.107.244.130]) by mails.dpdk.org (Postfix) with ESMTP id BC1C742B75 for ; Mon, 26 Sep 2022 09:00:33 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mj6QifDCwpMfIqy/i0TL5I7Hr7+bJ7gXrKpEU1PNztbFH27y+paK321FC/qgzMzW/hZh2WzG75VgzhbpZOKiKUo9sUYUG3B6yAYAIPxDz7ECq2MeEVQugP3L6QGOD8LqoeNPCkc6xygM+M5DJp1hGYK0h0yXSDgnqMfzI1RB9qL8NQRmmSYVMY/jblei2yWCZMAQZMVFRO1CdiPY1fxAfl5auYmyzgnwIbA1IXZ+S7AdjxwVFDdqUXyiQ3NzeIwjWHi5TxOrJ7r6ZYXccTFpDPr+Ug9hysLc6aZyhQmrGtRjMnv5Tq0gy38Xk1KcaNFXzWIQr8yMspZs27A/UFdV+Q== 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=HVKuP7tUbIZLw6xgolmmPujd42xFro8GShmm2ItScIM=; b=W1H1sZinDHmht5QyaUL2AUEqVcn4j1fFH4egIOwwGnh4+m5ixO44FDi0nsjsja5fh2K2blAbguO7xSkKI/Ov3cjOtN98yHkj+4JJpe4OzLUdAP2+2FyVG+vCSSWC3/Yo8VBwdAXxQwSFwqX1rij5UKs3iaPNTwZ2sHIm0xhey8acwGRxkymIYp189w2vP78tmYKbQ4LRKoohY3VkLbTCunhSGpntL2PWYaP+Tuudq1OVKJtHwWXVOYgY4zYecVm59VKUEOh6zIaA4/mSx/KLycX7glhZ599nkILdr+zF8j1gC8z0CW0c6JaOmqxeIMecxlXS/4uXzNmhgbgfhJhFxg== 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=HVKuP7tUbIZLw6xgolmmPujd42xFro8GShmm2ItScIM=; b=pSm2d8UbvUqjOmovlEntAjVCmxdhtWncCHZOYpHOxWvcmpq5Jzx+n4Q8zUvmo4+PZdcnpLE7B0ADzwHz35+kEc8+QC/gZePj1QdGt4ODbINbelwf8hn434i/ZwUkYKBH8AyZr/rQrRW6RfR7q2XQhp1P8O0MpQwkztPp6+/IEao= 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 SA1PR13MB4893.namprd13.prod.outlook.com (2603:10b6:806:18a::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.14; Mon, 26 Sep 2022 07:00:32 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::779:2722:a8e5:503b]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::779:2722:a8e5:503b%7]) with mapi id 15.20.5676.014; Mon, 26 Sep 2022 07:00:32 +0000 From: Chaoyong He To: dev@dpdk.org Cc: oss-drivers@corigine.com, niklas.soderlund@corigine.com, Chaoyong He , Heinrich Kuhn Subject: [PATCH v10 07/13] net/nfp: move common rxtx function for flower use Date: Mon, 26 Sep 2022 14:59:51 +0800 Message-Id: <1664175597-37248-8-git-send-email-chaoyong.he@corigine.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1664175597-37248-1-git-send-email-chaoyong.he@corigine.com> References: <1664175597-37248-1-git-send-email-chaoyong.he@corigine.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SG2P153CA0005.APCP153.PROD.OUTLOOK.COM (2603:1096::15) To SJ0PR13MB5545.namprd13.prod.outlook.com (2603:10b6:a03:424::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR13MB5545:EE_|SA1PR13MB4893:EE_ X-MS-Office365-Filtering-Correlation-Id: 0808a3e4-223b-4979-9640-08da9f8ccd9e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Yx7rpEae/BQOkYcq398pgnVYOothoAWziIblJpo3RM/3291Wtc4xjTjoQiGnwYh3fzBue6JFriJ26d4bDggvoYrox9ntgGHjJEDyBnc6lEjtnXjxQXJU+8Vtnyi+x2wdoMI+kzsR1uL2QmwqwkgZ4CT3kuBDvMYP8KKIaXFIf+/TJL+1DVsByFyfDoPwkUhUock5AxIQmDxmg3yIIWWlFoGdKMX0qFQcbHfC+N0c8Qql9VlYofrbFwa6gdWNxGyzoMnAdM2Va8nuCqUdyI8aRSbqz6JUgIfi5KvPNcIsC+yG1xMUMHP8CZmgYesX9+ubVtKOW66XbSqnNT+To+YS7rWGezzq1j4e/AUxzDdymgZNdsRZFYRrcJmXUuwjfs5qwIjOEemDpUZJzLFtYWAnQwcF1xALmErCEDYGNHVBk8Sz/qraKD+3it3C/0pDLknACnVGT5WCxa2kiJ7tn/dN063/Xs0T5lovAlUaUuBBJgLprVHhAk+/Ra5MtNgzS8cS0InE7bjGvNRLopyWZV9obuQR++56LlkNqJgj0+BqLQvi8HAAg7j5FUDKgyxc8/iQc9MQeZeAwy3jLPv+ci4/gWr65Plo8Xnor/eTifIvvOe4b/TUy7D+JQ1PmsnlpCOktZ7V9euTK3Uay0zBmoBWpJscXEM8lnjzBgpQOfSOtrAoXR9JfYVSHv67IgCcT+i9c50YizZBFzCAybaR1MZpQpEEKLKFEg3Yg/BNk6g/hS3XNVJH39ynEdr82VYGvnK7wQciM8vHvC1LO7rkjH9BXQ== 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:(13230022)(4636009)(366004)(396003)(39830400003)(136003)(376002)(346002)(451199015)(36756003)(38100700002)(38350700002)(2906002)(86362001)(44832011)(66946007)(8936002)(66556008)(66476007)(5660300002)(8676002)(4326008)(83380400001)(186003)(54906003)(6512007)(6916009)(316002)(52116002)(6666004)(2616005)(26005)(6506007)(478600001)(41300700001)(107886003)(6486002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ckVuVytDbEprMFZPcEEwQ3RzZk5PUlRUYkIrM0RRbGIzQUs2Z3RUekVJempD?= =?utf-8?B?TUJPT3lPSTliU01Fd0U5N0lCeTBSc0pCd2RuMWpkRXkyMGpPMFJlelpEU3J4?= =?utf-8?B?MEx0bjYxR1g5b3lKN3ZJWU55Q1pXRTkvQTRMTzByRUo2REk4Ymw3UFh6dkNX?= =?utf-8?B?MmYvMEdVbzl5ZDU0c1BNeTVNTnppZ3dDYzJhUzRlTEdWL3FJMHpSUmI1V2Nz?= =?utf-8?B?SER5Nk1jc29TVTh2U2FscXprYVU2WEJZOFkrWTBRcXlQQzdNMEtzMU4xZHli?= =?utf-8?B?bldsd3I0V2h4bGdMNVErRFIzdityV3pnOFVBWXRzbzl1TFpCSXNIRFNUY2l4?= =?utf-8?B?Zk1YQkRma1RsQ3JZS1RkMkRkb3RIaDNFWHVKTWhlS240QVkybzlQSnk3eUNK?= =?utf-8?B?dGE1L1A1ekUzQ2hsTTMzL2JwdkpGOXRKSlp4MVp3Tk5KT0JKVkl2VTF4YVQ1?= =?utf-8?B?WW9RRWFrdjRvb2dWNzBXNitKNUNab3FoWTNPRU1EOXFhN25GWHlsL0cxd3pw?= =?utf-8?B?dXNYWVRnNEQzWTNFS3NINEYrdzBkWVZHWTFGY1dPTTJlbG1CSVNRSzdhUzJj?= =?utf-8?B?ZXJ1WS9RSGd0ZlBVRGZqY0pXQUovS21iMmxPS0tlRlRKYUNOV29iYXFGSG5u?= =?utf-8?B?UkJneWVaWllUdy80em1HQXJySUp0QlVXYWIzQjFLR2tGMmFXWVMzU0dadlNP?= =?utf-8?B?citENnAySXdDUWJPZlkzc3JUTEVWc1l5Q0JZWnRPWXJmY3BEalJMYVprSTBP?= =?utf-8?B?ekh1UGg4NkxJekNncHI5NDdaMjYvYWQzT0Qwa0syNFRYOEtQcjY5di93UmJQ?= =?utf-8?B?VlBjV0djT0tYQVdZelVjODBhTkNMY05YRTNyWVpDaFYvN3VYTmpDYjdnZ25x?= =?utf-8?B?amtiby9MUGFlcUo0UUs4KzdObzV4R0tGL2RabnNOaTM0bDVZeGNNYkhRU28y?= =?utf-8?B?VkRFUmt6Vk9LUEs4V1ExVWZRK2dlOW14MzVRSllvOFZXK3JRV0RjeGZoWWVw?= =?utf-8?B?bEIreTcxczg1WFlYY2VmZDdOTEpoRzRWWDJqWXdqK3c0THM0YmJkN053cVJT?= =?utf-8?B?NFh0Zm53SHNycUhqMVY0RmNyMndqZFdLd1k5VXZ0bGhacGdjYkF2U1MxcjNr?= =?utf-8?B?OXhUVTBXMGhFREYvclhEWXcyYWVPZXRDdzB4bkk3NEgzem9mbndzRnpONnZw?= =?utf-8?B?SkJBRUpPcTVXZ2xiRTZmTktIcUJXRW1NTzZPTEZuU29Sd01GTlJBNWpOWnox?= =?utf-8?B?Q0ZjT2E4cVJEQWxma1lFaW1tNm05NE9vSEtWdmY2dzI4dHNkZWJEUithUllq?= =?utf-8?B?dy9wc1AwQ1RaWDl0YjRsUXJGQlNZN1hEMmNYSW52UjBENU5KckVHb0JqaFh2?= =?utf-8?B?ZHNQUlI4KzRpbXJGNlhQemJFL1JhQWdKbThiSFk3cm1wTm8yeS83NXNzRElo?= =?utf-8?B?L0lYdi9PK2hOaVVMa1NEVXRxOXVpeXRHOU5pSjRwdDlLL1B5YlhMSmUzVEpz?= =?utf-8?B?Y2UzM0FoZEgxRnVRR0hvYkhpcm1RMDN5VWlGWEhLdVBuYlNVdFdOQXBMTFpo?= =?utf-8?B?TEdFSll6VkdpUWtOc2VKbllUU3cxUEJIMVR3bEhlZHZRaWl3UWFFS3BpYk5i?= =?utf-8?B?dWZkelJrMUNzRjM2Tmo4L2VPOXB1NnR2L3dJRFl1VS92VzhWMTNDb2FweFFv?= =?utf-8?B?R3pDM2tUdlJsZkZEd2NUNUx0cUVwZ1hrb1hZMzk4U1NYdnJCdWkySnE5VzYx?= =?utf-8?B?YTFlWE11Zi9OakpNSjkwNndMUEdyZGJKU25PZW44U0RIVUpiZkpUbGxqejMw?= =?utf-8?B?ZHZEUUdtc2pQd01OV2hVckxDeXEwM3hwUlFZRXV5VVladm45WDF5cllKSTJK?= =?utf-8?B?bG5rSGY5ZmVSZlZUbWpRN3pnWW1hQ3ZkUnl5dHV3R0hoejh5cFN0SGpGbS9K?= =?utf-8?B?aWl0T2J2U3pBWFVXcHVzanNqcHY3ck1OaU5ibFJhYVNzVG9rVGxWV2dCamhG?= =?utf-8?B?SVdmSHd4Q2tlbGxCOFJMcHRwaFJmZjZ5NG12T2k1TjM4dGVVMmtSeEpPVEhP?= =?utf-8?B?YlByRGxqU1NFQzZnZ1ljYXc2dHNheE4vdVVGQkpxSUhJR0VzNjJsd1FGVHhO?= =?utf-8?B?U3ptTkh6Z2pFUWN2UWU5dTVCWWN4a2wwWUgvYUFDK291RXlVN1pDZmExVlcy?= =?utf-8?B?QVE9PQ==?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0808a3e4-223b-4979-9640-08da9f8ccd9e X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Sep 2022 07:00:32.3119 (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: LJbS/rzG5FigK2HCYBbROS9s5eOu4BeXz+YySe8inUyO9TSpMKVOdoBQ82RKhf9gmli9J5y1AqkT1ylFEBk1URcWvU8Oqgj42AgQ6gFX3g4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR13MB4893 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 Move some common Rx and Tx logic to the 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 8429b44..8d63a7b 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