From patchwork Tue Jun 21 08:08:27 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chaoyong He X-Patchwork-Id: 113139 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7EFA3A0543; Tue, 21 Jun 2022 10:09:03 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6E71B427E9; Tue, 21 Jun 2022 10:09:03 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2133.outbound.protection.outlook.com [40.107.237.133]) by mails.dpdk.org (Postfix) with ESMTP id DC48D427F4 for ; Tue, 21 Jun 2022 10:09:01 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JAtiux5kXGU1K0AbVk+4SL6yMtnKTAcBzdq4MoAsIvdI2wWMw007CDUrtIUj2AtoJRLCvH9EhQfKEq9PJ3uNtAPtP57hf3cStXtb0hv/z+J5aW3Ws1/UymDKA3feHieQ5vhUdmT/nQDCE19FYhVtoHt7fPiqKMRmGwJ9IULBdspxzoMgbeLhlWSbXRfLV20RUKIZO1mFbjEAOpxB+urZiyKXmxsW7ASTPx95mLwawd8O1LHoBMODQ84Z41amVQFl8oqfpnb4dqP0MfJ8ZWIJi0cRlMHuPxPBhgDIB3ioVZhWg+vDuBqFGoWk9aeVGamut5OEW6YN5uyYky16TJc+bQ== 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=LQJHN7Xi7tKURIn+xnGTRgB3iXpyBHfzBohPLi0rN5c=; b=mlJrQc2XHcj/TJJ2as8qCzoKbAHZ5ZjwuYHZfMZ3bOe+qPxP63gqBXASUd+L+APIMHfgBqEn+Wy74TvuO2+hkFR+wtRJUnbOgc7y8AtJBJwxhtCwpHqep+olDsEGuAoMhGJaq7KHpLXADCjDY0nf7zET1vawMLwtQrT0YKdtftyxTQzHSr3vDIcnQkCMZotNVgRze1iLu4pEo8mjgVEfptNg5AJJRM+pDugveDSj/3lcus7X84in/XFmxy9wZK0dBsQNN1CDQfPrzbkppp3YI6c6Nm6XAaJ5NCA5Mn90CsKFLmAxaJ6d+aFAmPS5WIFekdzhnZR3Ms7TAvuTuOsPCA== 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=LQJHN7Xi7tKURIn+xnGTRgB3iXpyBHfzBohPLi0rN5c=; b=XvRF0RG9aDqKOfFxkObYvrvo4eirNFkiXtkG0skFA0975+dqQIY+v1AQjYFdMPni5OeaN9aVOIKDBcNhFBQIVgW/BZeSw5j6LwO8FLUTlamWM+HESUu5T8/XqyWaOYdmYVA7mLjvKU/QK6shNTWbi0e3XREjIu0tXo7+QFUNTEI= 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 DM6PR13MB2730.namprd13.prod.outlook.com (2603:10b6:5:13e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.13; Tue, 21 Jun 2022 08:09:00 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::5d9e:9ce5:51d1:2021]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::5d9e:9ce5:51d1:2021%7]) with mapi id 15.20.5373.015; Tue, 21 Jun 2022 08:09:00 +0000 From: Chaoyong He To: dev@dpdk.org Cc: niklas.soderlund@corigine.com, Chaoyong He Subject: [PATCH 00/12] preparation for the rte_flow offload of nfp PMD Date: Tue, 21 Jun 2022 16:08:27 +0800 Message-Id: <1655798919-38659-1-git-send-email-chaoyong.he@corigine.com> X-Mailer: git-send-email 1.8.3.1 X-ClientProxiedBy: OS0P286CA0009.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:9c::14) 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: 49773656-6f36-4a66-f89c-08da535d4bfc X-MS-TrafficTypeDiagnostic: DM6PR13MB2730:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: oq2J+xf0CIA1ZuL+IeFtVip3jebypaHPm6mA1KcJBKVDfWxYl/PLaLpXwmniouP3Nb8WMovHIDVgyHc/5bjDTjXhzgCdC9ekI8OMCUiAePNWgktp3Ho4gCrxqUtsy0aCWffY6JIuUvyjiY/OGwKdrp3TqUOBWhm/QtjbXIVzpq8JU2aFVw3/NEoiKr3qWUL1fIeCuc8ggrtZz96mFRucwASBhOXDUrF5Zb1+gqz3OoRfo/Fv7H46B9NbYF5T6UOfOKsskjvSCluCQslM/JjJvziti6OaFm0PpROt5VCQBAC2C7v/L5q9h99Gu5OP3Hh/d3YiK7KWG/olCBrCX2u8HZ0AGaWRx6AeG3tZ8ZBsrZ6vYj6Im34ja9RplmWAKFLWVbyh1tbFsJTlaSLQfB3wQkLcvQpxHpKG9zd5/iwoykqYB9X82X9JcqXPReSHjnN6g5FUvI6wFFo4eQjOFiFDs9J1F/WQ9HEJFhm1wvmD2qSb9Wt+bHDOLbyZmOGB/jg0NudD8pLCZdCO/dwOeMzI/cICwyBww8I/8z3O7ttFKPNwEglT73wUAZEbqV46mVRolMB7wMlGy8TD25c7cLBuVCHDGNcKSWVwQ9Zd0VyeYWYZk5H6VfOKUzVwHRTFmvZEtgPBPPU7ZrTasuHLn/7CrWyv1Z4PYg0csz8hGoxVRzI1WItoHLqAAqSBIj3+XhC9Ofhf9ToOUpLb6Zvs97mAtQ== 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)(39830400003)(376002)(366004)(136003)(346002)(396003)(38100700002)(2616005)(38350700002)(86362001)(83380400001)(66946007)(66476007)(41300700001)(186003)(8936002)(8676002)(66556008)(5660300002)(107886003)(44832011)(2906002)(316002)(4326008)(6506007)(26005)(6512007)(6916009)(478600001)(52116002)(6666004)(36756003)(6486002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?I4/hH3g4GhrdhshjZoXph75yiXcP?= =?utf-8?q?ukwSga+8chU6qLTflLHUOh0Kep7Bu8ttDFai+8rmleE+xnz9otdF9ykqhPAL7i7Tq?= =?utf-8?q?M+cqvI5lFvF8LV8ZxRvLsDhDcuzTrut0F8mescTHtgwqUt5IZ/e0ChYbFPUmkNfEN?= =?utf-8?q?r9gQsEiFnupnPyM0xjxyJyZfbQYuD4Iwo1EwgA77CwVBfjaUnkZ5p3P2MNMVBlmfc?= =?utf-8?q?390F1GdoCNAlWk7nMYWP4+M8WYB2C675uTIBOXwL9MU8IEZfAqUU7Giy4QzYrVBM5?= =?utf-8?q?WUgcGFcvu5ce3hv4BWk4PVhZM2t3AF922uXRcqj2MaRWKA/479aduqM7G9U5mP1oo?= =?utf-8?q?7IaCqSkU9Ymjl6l6ShnzT4VbhTdRzk0n0cvE+puDd279gIkterEmGTkYmEST+YR3f?= =?utf-8?q?HAFE1votDhxSxqBABaiGM29ByJBMupanIs7mwpPinIkSOHc20J9lcZhgMufls7lfp?= =?utf-8?q?sU+i1ihNwUDNUD/w/DXnwrRBir8UVsqtF8LQOVKWCZXp+GCf3NQH0leGPcLzjL1o8?= =?utf-8?q?JE3kq94QqofJbO9lqVvAuc3S9lIoEjW1ZzFSUphZqdMlgNctKisrH3deK4DUVUuVC?= =?utf-8?q?SvaJ/Ax7dzzezxUJRzXw/xrMoiHyf94lI0IYXgMN/FL9eVg16h2n3IgJEctUoYjlZ?= =?utf-8?q?T1SV+KJTxtzBmU5cPJGFU7sMIlRGSvF6TecnJwwJim4sx4snegJh+qnZXTGmJZHL+?= =?utf-8?q?Pfk725sSwnxN2y4F99kFakJuImIxJOmnReUHM8RcL6BDQj9IJrEbfTAFaRZQDnC0k?= =?utf-8?q?or2cVSy+2Lbyt10atrrmwKZI/Hqd4LTz/DMMdk11yogONC69OvHfrcNbJDeXjXwfJ?= =?utf-8?q?SPWZEy+FbcxMb9kYyaYEbFDH4GWyu/4UX5MgU56BdiMmld07US4Wogq/ZXXiR1Yet?= =?utf-8?q?vw8+Aof+BFi8Y/V3teg7cbt9PJj+jxFfNy5ek5jgYp9MG3vo1+jlgtjChvnPoKdZH?= =?utf-8?q?w8bJPcbFcTfIgZIdcC4HWVpi3a1OrFhDEbBxsGlAH4Qmy0G66Cb8S2CJkSSrnLApP?= =?utf-8?q?xyPD8DkkFHkJ2PO/UDLRt4Y0oEIXhCTt6HVh2wdyu05B0+HTThRGJZRc+zAjX/WH/?= =?utf-8?q?3oUVsUps+akW1DuIF/Nhqqz8JwYfckB1fku75R27XupD2O+yIy3Whvr8aYtcrAmof?= =?utf-8?q?LFrnX2Zdcu+XghuYKqPXxD++U12C2/2nBhaj5xxPOGHnzqglH06YVg+5zWt0Jk4mM?= =?utf-8?q?3by2l8XnYl7jtPYdXfI33LR/TglRYrPoHiuMtjyqlHeCuE+DfOSV5V2K7E6RxJwLg?= =?utf-8?q?SsHNlrcuQ+oToTLaDV+q3FnaKeJONe/2zNATwYJHqL9vwJdu0fG0B2LNb1Re1103P?= =?utf-8?q?EfVmPqybKxUt+JnI4pfiwxk5I86Yw6WMatTqb82/LQ1fUYKeIbIKOtjfDKtOlcqpE?= =?utf-8?q?rOjvrPhbN5HBoVJ4ZdevoZZnQ/URAyxOh9J5xzKiE4DSeSt3CX+JnbLBpTmKnIkz6?= =?utf-8?q?gSsFRlRTtFR8onVy7JYPb/jykawsJvG91wp+BaBJGn5fefmZDcLopYTCFh0va7xWN?= =?utf-8?q?B9Ph/yMNX4yc4rV/XM2swk41XQ1JwsQe40aGpvPS/uxwFhdXL7vxcAE3CQLEIz2ZQ?= =?utf-8?q?LfxiJH4LQdvyx8JCFVx95tkCTfiWzEnDQdi8K+rwYF9c9yHZvAqblDU+cpr5TYr3E?= =?utf-8?q?Qr+EuOp3VNb4Mm4PxpDJmzvdeCTHTWj859V2GvBXfgduiCBH8crcI=3D?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 49773656-6f36-4a66-f89c-08da535d4bfc X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2022 08:09:00.0623 (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: e0J9tQ7sA/9SOs3tdn4lV6oB/rN+KErzaba+GDM4Uy2J/RPbS/cFvTme3XEPWnFQOkFy0eeNoWKZy71Yubm83L02yKpolMbfNYqMgzWkULA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR13MB2730 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 is the first patch series to add the support of rte_flow offload for nfp PMD, includes: Add the support of flower firmware Add the support of representor port Add the flower service infrastructure Add the cmsg interactive channels between pmd and fw Chaoyong He (12): net/nfp: move app specific attributes to own struct net/nfp: simplify initialization and remove dead code net/nfp: move app specific init logic to own function net/nfp: add initial flower firmware support net/nfp: add flower PF setup and mempool init logic net/nfp: add flower PF related routines net/nfp: add flower ctrl VNIC related logics net/nfp: move common rxtx function for flower use net/nfp: add flower ctrl VNIC rxtx logic net/nfp: add flower representor framework net/nfp: move rxtx function to header file net/nfp: add flower PF rxtx logic drivers/net/nfp/flower/nfp_flower.c | 1564 +++++++++++++++++++++++ drivers/net/nfp/flower/nfp_flower.h | 71 + drivers/net/nfp/flower/nfp_flower_cmsg.c | 165 +++ drivers/net/nfp/flower/nfp_flower_cmsg.h | 173 +++ drivers/net/nfp/flower/nfp_flower_ctrl.c | 245 ++++ drivers/net/nfp/flower/nfp_flower_ctrl.h | 13 + drivers/net/nfp/flower/nfp_flower_ovs_compat.h | 145 +++ drivers/net/nfp/flower/nfp_flower_representor.c | 508 ++++++++ drivers/net/nfp/flower/nfp_flower_representor.h | 39 + drivers/net/nfp/meson.build | 4 + drivers/net/nfp/nfp_common.c | 2 +- drivers/net/nfp/nfp_common.h | 37 +- drivers/net/nfp/nfp_cpp_bridge.c | 87 +- drivers/net/nfp/nfp_cpp_bridge.h | 4 +- drivers/net/nfp/nfp_ethdev.c | 357 ++++-- drivers/net/nfp/nfp_ethdev_vf.c | 2 +- drivers/net/nfp/nfp_rxtx.c | 123 +- drivers/net/nfp/nfp_rxtx.h | 121 ++ drivers/net/nfp/nfpcore/nfp_cpp_pcie_ops.c | 31 +- 19 files changed, 3407 insertions(+), 284 deletions(-) create mode 100644 drivers/net/nfp/flower/nfp_flower.c create mode 100644 drivers/net/nfp/flower/nfp_flower.h create mode 100644 drivers/net/nfp/flower/nfp_flower_cmsg.c create mode 100644 drivers/net/nfp/flower/nfp_flower_cmsg.h create mode 100644 drivers/net/nfp/flower/nfp_flower_ctrl.c create mode 100644 drivers/net/nfp/flower/nfp_flower_ctrl.h create mode 100644 drivers/net/nfp/flower/nfp_flower_ovs_compat.h create mode 100644 drivers/net/nfp/flower/nfp_flower_representor.c create mode 100644 drivers/net/nfp/flower/nfp_flower_representor.h