From patchwork Fri Aug 12 09:22:01 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chaoyong He X-Patchwork-Id: 114866 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 DFFD5A0543; Fri, 12 Aug 2022 11:22:38 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9935D40A7D; Fri, 12 Aug 2022 11:22:38 +0200 (CEST) Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on2095.outbound.protection.outlook.com [40.107.95.95]) by mails.dpdk.org (Postfix) with ESMTP id C1A00406A2 for ; Fri, 12 Aug 2022 11:22:36 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AnW1naHe5KAHCRA+29UGTsv/bHYGvKXOsRd0+nac4b8FOYEYelRewA05upgv5VGG1A4E3kdJ4L+4+fwwnLZJORxYHrpafv7XstIU/8ldwj1AgqfXU3xYRk6w3lqEy9rzy/YA3AQgY6AvAQ1kmdLnLga+2bMmzOQ0WS9C1bJeVSku0GbULwBs5JJBdyPVW6MesW2/kHpXAc+HPSTCB9lp6CFvDGolGUr4tjmZ8GAXNkfDEx5CS2sno+bdm4SdE5E5m5OonEZYGDxgd+r9aYr8OWiIoTHdAyWjDrqbYwJ+WPpxNM5rPURtphLKKkXM6w0n9woAmqqf+V8Z7srNOLiLRA== 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=7gkpcGPDA/1wrlpokBz52XmPYcWRm/RNo++bgCpeVYo=; b=IUUIXZ1/ZKpGJHR+EJPC6oRoUZmHITBzuzt3VKn7TDeqyiFfGv6eQ0+LkzNJRm2FAKAnnUIVUJM4V/xJjE/GcqcYGAYVq9hdtz+JAlnbGaUn/8HgEB5vZsVRS/HGyZ8WxInI/bwrhPag8vm6bQN1Ukp37I4JnU2GhxWjtl9bsnDOZt0Esy5fwFW16qwTqaRRCPwzfwhYgVfB/RPLSLzuzxIJ69M3T5d3Rgxt+2I1O6wPmpxbuGxpbk/sNSFwv3rnAlNdIuTeZJETEQpOaS+DGm+91PyxkkbnGdt5PjkPowwinVAYC+wjt8LAOmsSb12iCJ7AwNUWV0j2yPnTg4wtmQ== 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=7gkpcGPDA/1wrlpokBz52XmPYcWRm/RNo++bgCpeVYo=; b=NITrjafTpPcYHdcCidM3+SAy7q5aQmZjSR0pnYxBHSfZZcxZOqERlKaT3m0wyCG1VwddQpuF7I+a5APj4tSQhZN8HqQZTR5tuY7aQIRTevK86vh8Yn1pTgx32z6bDXQ3KXBPRd0r/a5heTkHqIw/uS8XYyDHtos+ENBQ9sMRI8g= 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 PH0PR13MB5284.namprd13.prod.outlook.com (2603:10b6:510:f5::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5525.9; Fri, 12 Aug 2022 09:22:34 +0000 Received: from SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::402d:6abc:83a8:2431]) by SJ0PR13MB5545.namprd13.prod.outlook.com ([fe80::402d:6abc:83a8:2431%5]) with mapi id 15.20.5525.009; Fri, 12 Aug 2022 09:22:34 +0000 From: Chaoyong He To: dev@dpdk.org Cc: oss-drivers@corigine.com, niklas.soderlund@corigine.com, Chaoyong He Subject: [PATCH v6 00/12] preparation for the rte_flow offload of nfp PMD Date: Fri, 12 Aug 2022 17:22:01 +0800 Message-Id: <1660296133-35266-1-git-send-email-chaoyong.he@corigine.com> X-Mailer: git-send-email 1.8.3.1 X-ClientProxiedBy: SI2PR01CA0046.apcprd01.prod.exchangelabs.com (2603:1096:4:193::18) 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: bffa3233-a006-4e0a-8725-08da7c443098 X-MS-TrafficTypeDiagnostic: PH0PR13MB5284:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jE3JPKLVpUaxsaqTCToe4QMdZwv4yzemO3WIb9IIcKuyiEpt/6lSO23Fzo2BnXao+28F5DuvOXaJxjicJgaaufZ3+b9FdDqBr1gsSEgRJegc2ZMrO1DqdbS4Ujs3MmAceggM8MenIx6lXclmzLr/CvziXTrGVT0YWkQQCrJsv8W+qJsREGhvr8mgzzWNVO5Sw703dZ6CjYNhm7eUgqFoOkelmSDm2pyYsQBNxobYBvWbdqNNiPnnCMDE1Yf8bofuoh/j4yI9QKWcVZ3cZGM461QjH/UB8l5e6JYhh108OQ/PhzpE0krIz/LT4w4TVNN4261nWPY+hfYSutzQwouTQg6ivIyUwZCYuNDXk1/HTVaEMdfYb+7C1ByVhz1EPHL1TOXjc/Rz8cEtdKC19SdH86pkep5ZgWhSMImhDtlgEm3PV0fbDfMlyCzGEVXhyvjG57RREfmBcBy101O6W0kr6rZBytkhA8QZB9Idmqbgq1nuCGE9246fqaW8iflnqwfpCqa6ARpzWSf+cU6oVSBLTwTe+TExBHUa7xY3hFv7tT0NABLIwFFT/c+1qdkH1gzLA6FmQZK738HdqhF+cJluFzIIsjwgLFqS0jt0HakY14ZSQWN9M3T5PYPDwZh1bV6Jh6TCsX1fh9prtkvmXMW4ZzwJAMTxLYNrKboFScgav73Y8XQ5vspwC1X/kgFKzQfP/GSExvAWEPGNi4v1OBrmA3WAgfpIn8PYAhR3s6HpSpww1LC8aX/yVy3ezO67XKV5eYa59Obe66Q5pExPXd82voe+h3MNbDhEC9on6qVlgcW2XUjCG0qPPcUILNZzQB+9SQcDDSmxe6K25yR1GBhWPQ== 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)(346002)(376002)(39850400004)(136003)(396003)(366004)(86362001)(36756003)(6666004)(41300700001)(44832011)(38100700002)(38350700002)(83380400001)(186003)(6506007)(6916009)(26005)(107886003)(6512007)(2616005)(5660300002)(8936002)(478600001)(52116002)(2906002)(6486002)(8676002)(316002)(66476007)(4326008)(66946007)(66556008); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?ZU3D1eaiNpW4CEMfMzokN62czRNj?= =?utf-8?q?GgCK3r/Hwyy+w2IQQLpuugf4BMNvhIJHDFZU53sv4fyK6gmmsPE5lfTv7u/zzqTCU?= =?utf-8?q?PdSj5aMA0zfNBNVF1bnYXD3ntTpw/W0Qw0nOA+7KWSB3HK0SFBivrZWwExQQN0Tfv?= =?utf-8?q?n6QkzaIf7W2L2uUTQLbmnccnFs3Vrcb3PL/K5vqN2In853mcb4QJHa+/caQzSOtx8?= =?utf-8?q?yYx6iGo2hGBXK/NnJDDkCgX+xXrHsu1i9JJLgO/SgBchi1wKV8YCNpR/WiW+0TlTk?= =?utf-8?q?O0YBMFhV4YF+ZXrJIqD7siGnyZnoG2XKfVFg+Cxu7Up2Kdr5vtaipQ1+PZcvnwQa7?= =?utf-8?q?qkyo6BivsdS9O67KhnEfmJLhb2d7+msU/liBk0sCP5P6Ot4LDBoC6xXNtoLIbCN6a?= =?utf-8?q?HdyXAL8nNKfyWqxoiWTAvW/Y6u+3EGORa2PvEsTQWUMqAN/id93FblePi/8X/eGom?= =?utf-8?q?9LjVsCTCcR0fJMssvYYjlc3f6w9UlfpR85DaLdzLbI5qqI7JGosrAQU7PK0Zjnzaz?= =?utf-8?q?LmDdQELrLzgECjMUKIGPkvITg5T1lJZ3ZKAFZg5a9dB7bM4Ru8WSl1rXWUSld2E03?= =?utf-8?q?ix821JpREF9bPpa9n+vjjit9quJ3x2xZt6fgzQ+YGx0boveTlMrJEt6OXXhp3Y9my?= =?utf-8?q?rHizYE6Du9euD/O47uWXasAUS60K/Vd6t7YMl2gWyabAwL20uMDZZdyIv0RwVIz1Z?= =?utf-8?q?dF+rM7El7U3zCNOv7zyoTbqtnde7GluWhUmNSPyvDyVjbCShl/gLkapQ+nEYOjW7b?= =?utf-8?q?3Er7ks7LPsVh8jgAl7tEQtPY/Z9h+VNJf/tmKaSPGVq77+bPPEvAWWk7qAwNnlofT?= =?utf-8?q?BLbqmF9JbP68YI4wopf/YPSDRLTF2Qy7R3oVel8cH5Waff9FNjOtIF02qEGpMPTC3?= =?utf-8?q?Um574hrGqG26ZfB9dcSFqyJjvZbdsqXsDdvY4y4oGptXa/COPbCPXS2hheBepCT4y?= =?utf-8?q?ZtZJMF/6dsuDaEqKZEyssENd3uM+H6DR+DpZtXNQqJ9E9z5dV+JF5BLOanSlqE3py?= =?utf-8?q?XA2zAqVAmY4u1auw8pnRXyx3xz3tY3tdSM2OJnGlWlSaVOQ0zxjVPqsZv3Q/QST9A?= =?utf-8?q?lh4OTBOBHwHwPbwjAQtuV8t7Kxs9y6dKgCgzLO+mVH+XsWFyJhFDp8Ei3rnBHNAxC?= =?utf-8?q?MqMJktNTLHJfMvq3HY6Tb/tWSpy2xZG1f4Sfah6nFBXnyN1px3RPeWpd2znrzQhYp?= =?utf-8?q?JkIfzBty4k9tZPV9tvjA9rJHoedlzCQ1929zv3iT4RXdmyUTJO6PYqGSejQ1m5MHT?= =?utf-8?q?6c2zpBDjtQ/vkgC6c5sYB8cFoRGQ2+EXdNBOkjva4JlujYuImauVeJQs7WBcevx6T?= =?utf-8?q?vJmPhgw5T3xywwgVdUiKtWIKLh93HiifWfDh4W4sMfOxwHelVZTKp0zhTeBC0xGYl?= =?utf-8?q?QTV/hV2v9WlkKdba4S/Jq9EcOyntNZSMlEtJ4o5E6evE5JKNCUPy8dOKJnL/9tHOP?= =?utf-8?q?ye2Y9jrH8VefYDzBQLfs9P30t0WEZRkRJoYif6h5cPUclruvdtDsVSt1Wbc+YB0w7?= =?utf-8?q?SruWyePPHxQfhcGKsN5Aw8L/SE8pqBsR3g=3D=3D?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: bffa3233-a006-4e0a-8725-08da7c443098 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB5545.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Aug 2022 09:22:34.3612 (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: Zi9Yv/0AhRpeGFgO8ARH31iqyeMUDj25AGOOThLyORrPdRCFPNMx1fI3ZlfTWCXRVKiYBSx7ysX/JbDg0+0ao0uQNB/PkEthgC6M5tfo//E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR13MB5284 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 * Changes since v5 - Compare integer with 0 explicitly - Change helper macro to function - Implement the dummy functions - Remove some unnecessary logics * Changes since v4 - Remove the unneeded '__rte_unused' attribute - Fixup a potential memory leak problem * Changes since v3 - Add the 'Depends-on' tag * Changes since v2 - Remove the use of rte_panic() * Changes since v1 - Fix the compile error Depends-on: series-23707 ("Add support of NFP3800 chip and firmware with NFDk") 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 | 1340 +++++++++++++++++++++++ drivers/net/nfp/flower/nfp_flower.h | 71 ++ drivers/net/nfp/flower/nfp_flower_cmsg.c | 186 ++++ drivers/net/nfp/flower/nfp_flower_cmsg.h | 173 +++ drivers/net/nfp/flower/nfp_flower_ctrl.c | 252 +++++ drivers/net/nfp/flower/nfp_flower_ctrl.h | 13 + drivers/net/nfp/flower/nfp_flower_ovs_compat.h | 37 + drivers/net/nfp/flower/nfp_flower_representor.c | 602 ++++++++++ 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 | 51 +- drivers/net/nfp/nfp_cpp_bridge.c | 88 +- drivers/net/nfp/nfp_cpp_bridge.h | 6 +- drivers/net/nfp/nfp_ethdev.c | 356 +++--- 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, 3213 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