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 F379A41CA8; Wed, 15 Feb 2023 18:59:01 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D1AAF410DD; Wed, 15 Feb 2023 18:59:01 +0100 (CET) Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11on2135.outbound.protection.outlook.com [40.107.220.135]) by mails.dpdk.org (Postfix) with ESMTP id D164E40A7D for ; Wed, 15 Feb 2023 18:58:59 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eupJQFv3nt47/f7vNy+ngLhE6Tkr51hMZcUsFFNmw7w7vomQzKT3CO4Ql0BtK1JxjO+kztiJ/zPCKSi6PJ5Qv2NZEcsWyFJ7fw3i2+ip8CiUOAowOHz8u9Nhp7AaMDTK4fFbmZQp7DGbWCd7oc3jutE1AUgol0y29ceI7pU0rdlmEH7md7di2UuTb33XIQyOAp3LDtHEeWBwUtD/bUKv7Ilry6rm6wbakR99zQZjHFZhxiNBvhSaLdF0wWlByRuOWzjPmxEyBbFBiLTtdixBxipJsXFMMuAo9RDkUU22cEYF8X62nbNMl2u6bAdVZ3ADgcw7uTfiGWEHDdmCFyAo9Q== 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=hWmW9yc9ncpyXYJY/WwWHRHlUyhY1UutIgFofFpOWTE=; b=lmks9WrSd6yPB7y5ZiIXR8daZR4SVFBN1w4cHUVhWXLeFbAOqWQw9JrmU8/QzRaEnqwXi4Oe7vrWa9oX2yoZk6vEaJz1ACbX1vQryhdOuoFugqgoCoAxe9VtYk2A6ztZ8oDThOjNS5t5wbHZRjZKxPA+lQIaCtVjvbuLeaMsxUeRfg3KrEl79GK2W1ejI9s3C1xZr9XutBmqZFBp3rebbezi2FsASztXmM+QRPi3rInrhTxROWHvLorOya1hRkwUyDBu+1CQsARrQWLQZCkBbVbGaylrVCqjR2v7KzDtJBz4t4UCYQd3ZX8KIpoCDj96a8WVu3vJN0OBb5Yz31pKGg== 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=hWmW9yc9ncpyXYJY/WwWHRHlUyhY1UutIgFofFpOWTE=; b=XLShMhK2Ri4zmwdzMqAF7vNMm1WB62KA5RW+Fgu2obvGfJQ0PUMVzvR9HMSdYQci/89U38AJ9Fdk4WUaqq5EKTRbzfMAQIlP6qLra4k65rjuOX8PrrR3Ue9rgYh0mHlctAMbEUptHe28hY3GYsyhnN81tPvkSBWN4ms5l159EOE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=corigine.com; Received: from SJ0PR13MB6037.namprd13.prod.outlook.com (2603:10b6:a03:3e2::9) by BN0PR13MB5166.namprd13.prod.outlook.com (2603:10b6:408:151::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6111.12; Wed, 15 Feb 2023 17:58:55 +0000 Received: from SJ0PR13MB6037.namprd13.prod.outlook.com ([fe80::90b0:f667:bccd:64ba]) by SJ0PR13MB6037.namprd13.prod.outlook.com ([fe80::90b0:f667:bccd:64ba%9]) with mapi id 15.20.6086.026; Wed, 15 Feb 2023 17:58:55 +0000 Date: Wed, 15 Feb 2023 18:58:48 +0100 From: Niklas =?iso-8859-1?Q?S=F6derlund?= To: Ferruh Yigit Cc: Chaoyong He , dev@dpdk.org, oss-drivers@corigine.com, Walter Heymans Subject: Re: [PATCH] doc: update NFP documentation with Corigine information Message-ID: References: <20230203080845.24126-1-chaoyong.he@corigine.com> Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: GVYP280CA0027.SWEP280.PROD.OUTLOOK.COM (2603:10a6:150:f9::26) To SJ0PR13MB6037.namprd13.prod.outlook.com (2603:10b6:a03:3e2::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR13MB6037:EE_|BN0PR13MB5166:EE_ X-MS-Office365-Filtering-Correlation-Id: 19579e22-a93f-41b0-e2dc-08db0f7e4de5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IpOVabarpyJs/jFlPz/q9xj/EQC6kM9spg5u+gI40v39z5a1HzM5oFCyFmaXQUN/+K/hPrsVWV7FIFXb813wsoG/yoXigSanhF++tQscvZMoZ0z4kBw4SW8VMvC3/kmN4vGtzPnVNpBnf+chZ7o5BJqXY3NS1HwK4MimyZrfCU1A68e2r2+1MWCw4QF4fioGauY1pu1iscj51RPhZbm7+ZP/gRifkG1ZGKg+hzP5WNR5bQ89+ncj5FDvK5jYHOaS9sxrn16I99l3vxp/yw7gcdX3991wZKCwLGpIFpFVBDnokIaMvqMTs0y2DyUR5B/DW8JL2kfo+uDxPOf9DQbUnomSqbGXfnCydKIHz2kV/YTy7OKkJOxBBKKklwiW+Tyqiq+lUhdvn0NezZAg+G3JUCuJNxduzUMpAh3rPOTxW4Rc7s4BCRjhef6a3QhHPVym7r37y8Prc228odw03+o8beKMNmr6/1fJk1nSP3+Sxg6nZtMEQTHZEZ3hLxENg/CCBlcdAOqYlseaCWcLIgT5SVQLfOADpBb6IaMERjaIMF5ZPJYdYdbHA/ToFCv4YFEyxAjIP/tpteDyVgef03ZNY9cQkH4PyIJ5nqVWNKIqk17jtBWwAe8kZRExloe6gxDnDwwR5zAqcDNUWs2y0y7cu3Qz5j3MS2/WTO1gGL9Fz8eOEYXZv6PKkBdJVxVyQEIHqQZcfGHfwZWCQCozh/8hQ6IPxD9fEbRDIRHfhRwt2I4AGqQ2WwKtmfy9xjEaF2We X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR13MB6037.namprd13.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(346002)(396003)(39840400004)(366004)(376002)(136003)(451199018)(5660300002)(38350700002)(30864003)(6486002)(966005)(2906002)(52116002)(107886003)(6666004)(86362001)(53546011)(6506007)(26005)(186003)(6512007)(478600001)(9686003)(15650500001)(4326008)(6916009)(8676002)(41300700001)(83380400001)(66476007)(66556008)(54906003)(38100700002)(66946007)(8936002)(316002)(66574015)(67856001); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?iso-8859-1?Q?zQn4Ag9oGCIirE2teVAdkFa3ktp4qDPb/RqPF9q6SeCZavylOxQCVlOcjB?= =?iso-8859-1?Q?gCSNXLyownmTy4dGZYM0UE8HbIHRvSU+qGMY0YifHAkLVEePxAPtPm8oKt?= =?iso-8859-1?Q?AM7tCPUoV9lSSsj/ujFoASIobd+W1dtIyv2l65kue27DyS6QtaQ8DCDwzi?= =?iso-8859-1?Q?6Lddy+C8d5L3yMivgxP/lik2qLu032fu+WZ2EvXxRqB/m5uU4oNoufCc3m?= =?iso-8859-1?Q?lHHcrC4InIsUL6Leax5BK1ipVBEv3fpN3NhRav+pzo7st/2P8rAiwplprM?= =?iso-8859-1?Q?j1HaCQEWXF9UVuYxs4a/iOSvHDHlhYWkw7q08FDF87TPg7LgtzwiKTiCco?= =?iso-8859-1?Q?VNFzlaTv6dBGZeuIWaBY+MZAd9+d99CCqMY5s6PsNJgIeI94+irPK04qrd?= =?iso-8859-1?Q?bT9oY9Ohq41LKe2vkhzKOETG7ePBAGKdNfxG4OxZ4pq4K7LFmqihvJEPQL?= =?iso-8859-1?Q?Q0HUFjwhrHcScMFJtifgZypfY/JsZh2QCpc+4Ah1ci+K7VhKwSiB/nN76T?= =?iso-8859-1?Q?fGDqJfLJ8CD7ZI84ln/m5j8jRkhGf53PWOZdmn1mSNoDpkG8S4ay/maOSX?= =?iso-8859-1?Q?JfyvZP41dbTwCc3w9b2u5pbv2/4+HGO15Jzoof6jjvw2DUkrWtHt93AJgx?= =?iso-8859-1?Q?twrkvaMvW0XGlHoGWpu2gtkO4SXkdvLwvf+Ne7XZksATvY7S39olLR4Wiw?= =?iso-8859-1?Q?pxVp3CIAoWqX1zjG8tXvOCWPadErldxxJi+8DoBSOZIyTArHrHQRy0XHdd?= =?iso-8859-1?Q?GUqnXSWi5uh2bdW+ut8jYBIbfujn+L2dqooQ/40jzOKEDKvftCQHM00iOf?= =?iso-8859-1?Q?7UJQdyoJn8d5zHYGHfW5q3jm+OwtQUNFPgasNQhZ/CkNBjCEr1Fh3kQzxU?= =?iso-8859-1?Q?BAr7D2g+73L7q2kVExptDywz7BTqzcHC1pZe6pBFqT5qUHpyhkHxEjBGnv?= =?iso-8859-1?Q?5Ef0ebeN0sYZg4QUlrM7dnIL/mWH/es99S3HKWzGDm58uBphMYywaAJCKA?= =?iso-8859-1?Q?VCI0ZfpvAyMg1tJvfl51RvTJahsA4E4V5o4yi5ew1HKsCe9xpffITJXISc?= =?iso-8859-1?Q?ymIIA4FPvwrGqhBFjoKPSDy85o85cJvtntHD67uuhoA6peOhNJW6dSksgD?= =?iso-8859-1?Q?v61S2WDao/A2jtNTIsExEjibSF+Vgyj8APuRmQFxtmPWOGSTCYd3hXNcBc?= =?iso-8859-1?Q?zX89f/U6TYEUSdslRy6tk9nkwVmEjz2KdgzGmW9iXJ7ze7sAaaUG1Msx+i?= =?iso-8859-1?Q?iXBr1p2OTGf0z8dUM7FTcrH4GmDcP90HWWWbdSC6XMkHEoPH0/SMZYWZIG?= =?iso-8859-1?Q?WTT+Zy6Mejg/V0Tdb+4aPxkH0ZioXS+HFgt7zoYWD/o3158zihO6YTUlAd?= =?iso-8859-1?Q?08y4grJMGjpfdIhGzYF9yj1MNU4jMlGwOQri/hUyYgTYhxK9rEQgp/lg+M?= =?iso-8859-1?Q?85+BwknJlaDZt8eItduMruWu7H0uzIa/pDFH8klsFYeEkf1Z/kAra7FGFt?= =?iso-8859-1?Q?EpcgfzSovQFEylUTro3QS7XpDg2h7mIxjiOWAwKBROtmue0GBrpZiOz4Ic?= =?iso-8859-1?Q?dB0wnAs4269X1lpdCDhEnz1nAoO9RBsMn5NMa0blMsT9wkLtJxuOZkyOhs?= =?iso-8859-1?Q?UDji7JTHRQFFEMppQNFGxyAnw+T/FIxviOKvLy5qtqjDuO/DYpdzQWOQ?= =?iso-8859-1?Q?=3D=3D?= X-OriginatorOrg: corigine.com X-MS-Exchange-CrossTenant-Network-Message-Id: 19579e22-a93f-41b0-e2dc-08db0f7e4de5 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR13MB6037.namprd13.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Feb 2023 17:58:55.3958 (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: ZHF05NHzietI3242nAnci9XS7hLwwuQE7Tc+ykgPMv2BpWn/7KoaNXj9DhB+HA8qRLdb6fSJxLL3sC9SKRNd8f4s+OzSQSHRpl4TFuBxdB4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR13MB5166 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 Hello Ferruh, Thanks for your feedback. On 2023-02-15 13:37:05 +0000, Ferruh Yigit wrote: > On 2/3/2023 8:08 AM, Chaoyong He wrote: > > From: Walter Heymans > > > > The NFP PMD documentation is updated to include information about > > Corigine and their new vendor device ID. > > > > Outdated information regarding the use of the PMD is also updated. > > > > While making major changes to the document, the maximum number of > > characters per line is updated to 80 characters to improve the > > readability in raw format. > > > > There are three groups of changes done to documentation as explained in > three paragraphs above. > > To help review, is it possible to separate this patch into three > patches? Later they can be squashed and merged as a single patch. > But as it is, easy to miss content changes among formatting changes. > > (You can include simple grammar updates (that doesn't change either > content or Corigine related information) to formatting update patch) We will break this patch in to three as you suggest, address the comments below and post a v2. > > > > Signed-off-by: Walter Heymans > > Reviewed-by: Niklas Söderlund > > Reviewed-by: Chaoyong He > > --- > > doc/guides/nics/nfp.rst | 168 +++++++++++++++++++++------------------- > > 1 file changed, 90 insertions(+), 78 deletions(-) > > > > diff --git a/doc/guides/nics/nfp.rst b/doc/guides/nics/nfp.rst > > index a085d7d9ae..6fea280411 100644 > > --- a/doc/guides/nics/nfp.rst > > +++ b/doc/guides/nics/nfp.rst > > @@ -1,35 +1,34 @@ > > .. SPDX-License-Identifier: BSD-3-Clause > > Copyright(c) 2015-2017 Netronome Systems, Inc. All rights reserved. > > - All rights reserved. > > + Copyright(c) 2021 Corigine, Inc. All rights reserved. > > > > NFP poll mode driver library > > ============================ > > > > -Netronome's sixth generation of flow processors pack 216 programmable > > -cores and over 100 hardware accelerators that uniquely combine packet, > > -flow, security and content processing in a single device that scales > > +Netronome and Corigine's sixth generation of flow processors pack 216 > > +programmable cores and over 100 hardware accelerators that uniquely combine > > +packet, flow, security and content processing in a single device that scales > > up to 400-Gb/s. > > > > -This document explains how to use DPDK with the Netronome Poll Mode > > -Driver (PMD) supporting Netronome's Network Flow Processor 6xxx > > -(NFP-6xxx), Netronome's Network Flow Processor 4xxx (NFP-4xxx) and > > -Netronome's Network Flow Processor 38xx (NFP-38xx). > > +This document explains how to use DPDK with the Network Flow Processor (NFP) > > +Poll Mode Driver (PMD) supporting Netronome and Corigine's NFP-6xxx, NFP-4xxx > > +and NFP-38xx product lines. > > > > -NFP is a SRIOV capable device and the PMD supports the physical > > -function (PF) and the virtual functions (VFs). > > +NFP is a SR-IOV capable device and the PMD supports the physical function (PF) > > +and the virtual functions (VFs). > > > > Dependencies > > ------------ > > > > -Before using the Netronome's DPDK PMD some NFP configuration, > > -which is not related to DPDK, is required. The system requires > > -installation of **Netronome's BSP (Board Support Package)** along > > -with a specific NFP firmware application. Netronome's NSP ABI > > -version should be 0.20 or higher. > > +Before using the NFP DPDK PMD some NFP configuration, which is not related to > > +DPDK, is required. The system requires installation of > > +**NFP-BSP (Board Support Package)** along with a specific NFP firmware > > +application. The NSP ABI version should be 0.20 or higher. > > > > -If you have a NFP device you should already have the code and > > -documentation for this configuration. Contact > > -**support@netronome.com** to obtain the latest available firmware. > > +If you have a NFP device you should already have the documentation to perform > > +this configuration. Contact **support@netronome.com** (for Netronome products) > > +or **smartnic-support@corigine.com** (for Corigine products) to obtain the > > +latest available firmware. > > > > The NFP Linux netdev kernel driver for VFs has been a part of the > > vanilla kernel since kernel version 4.5, and support for the PF > > @@ -44,11 +43,11 @@ Linux kernel driver. > > Building the software > > --------------------- > > > > -Netronome's PMD code is provided in the **drivers/net/nfp** directory. > > -Although NFP PMD has Netronome´s BSP dependencies, it is possible to > > -compile it along with other DPDK PMDs even if no BSP was installed previously. > > -Of course, a DPDK app will require such a BSP installed for using the > > -NFP PMD, along with a specific NFP firmware application. > > +The NFP PMD code is provided in the **drivers/net/nfp** directory. Although > > +NFP PMD has BSP dependencies, it is possible to compile it along with other > > +DPDK PMDs even if no BSP was installed previously. Of course, a DPDK app will > > +require such a BSP installed for using the NFP PMD, along with a specific NFP > > +firmware application. > > > > Once the DPDK is built all the DPDK apps and examples include support for > > the NFP PMD. > > @@ -57,27 +56,20 @@ the NFP PMD. > > Driver compilation and testing > > ------------------------------ > > > > -Refer to the document :ref:`compiling and testing a PMD for a NIC ` > > -for details. > > +Refer to the document > > +:ref:`compiling and testing a PMD for a NIC ` for details. > > > > Using the PF > > ------------ > > > > -NFP PMD supports using the NFP PF as another DPDK port, but it does not > > -have any functionality for controlling VFs. In fact, it is not possible to use > > -the PMD with the VFs if the PF is being used by DPDK, that is, with the NFP PF > > -bound to ``igb_uio`` or ``vfio-pci`` kernel drivers. Future DPDK versions will > > -have a PMD able to work with the PF and VFs at the same time and with the PF > > -implementing VF management along with other PF-only functionalities/offloads. > > - > > Why this paragraph is removed? Is it because it is not correct anymore, > or just because of document organization change. > > > The PMD PF has extra work to do which will delay the DPDK app initialization > > -like uploading the firmware and configure the Link state properly when starting or > > -stopping a PF port. Since DPDK 18.05 the firmware upload happens when > > +like uploading the firmware and configure the Link state properly when starting > > +or stopping a PF port. Since DPDK 18.05 the firmware upload happens when > > a PF is initialized, which was not always true with older DPDK versions. > > > > -Depending on the Netronome product installed in the system, firmware files > > -should be available under ``/lib/firmware/netronome``. DPDK PMD supporting the > > -PF looks for a firmware file in this order: > > +Depending on the product installed in the system, firmware files should be > > +available under ``/lib/firmware/netronome``. DPDK PMD supporting the PF looks > > +for a firmware file in this order: > > > > 1) First try to find a firmware image specific for this device using the > > NFP serial number: > > @@ -92,18 +84,21 @@ PF looks for a firmware file in this order: > > > > nic_AMDA0099-0001_2x25.nffw > > > > -Netronome's software packages install firmware files under ``/lib/firmware/netronome`` > > -to support all the Netronome's SmartNICs and different firmware applications. > > -This is usually done using file names based on SmartNIC type and media and with a > > -directory per firmware application. Options 1 and 2 for firmware filenames allow > > -more than one SmartNIC, same type of SmartNIC or different ones, and to upload a > > -different firmware to each SmartNIC. > > +Netronome and Corigine's software packages install firmware files under > > +``/lib/firmware/netronome`` to support all the SmartNICs and different firmware > > +applications. This is usually done using file names based on SmartNIC type and > > +media and with a directory per firmware application. Options 1 and 2 for > > +firmware filenames allow more than one SmartNIC, same type of SmartNIC or > > +different ones, and to upload a different firmware to each SmartNIC. > > > > .. Note:: > > - Currently the NFP PMD supports using the PF with Agilio Firmware with NFD3 > > - and Agilio Firmware with NFDk. See https://help.netronome.com/support/solutions > > + Currently the NFP PMD supports using the PF with Agilio Firmware with > > + NFD3 and Agilio Firmware with NFDk. See > > + `Netronome Support `_. > > for more information on the various firmwares supported by the Netronome > > - Agilio CX smartNIC. > > + Agilio SmartNICs range, or > > + `Corigine Support `_. > > + for more information about Corigine's range. > > > > PF multiport support > > -------------------- > > @@ -118,7 +113,7 @@ this particular configuration requires the PMD to create ports in a special way, > > although once they are created, DPDK apps should be able to use them as normal > > PCI ports. > > > > -NFP ports belonging to same PF can be seen inside PMD initialization with a > > +NFP ports belonging to the same PF can be seen inside PMD initialization with a > > suffix added to the PCI ID: wwww:xx:yy.z_portn. For example, a PF with PCI ID > > 0000:03:00.0 and four ports is seen by the PMD code as: > > > > @@ -137,50 +132,67 @@ suffix added to the PCI ID: wwww:xx:yy.z_portn. For example, a PF with PCI ID > > PF multiprocess support > > ----------------------- > > > > -Due to how the driver needs to access the NFP through a CPP interface, which implies > > -to use specific registers inside the chip, the number of secondary processes with PF > > -ports is limited to only one. > > +Due to how the driver needs to access the NFP through a CPP interface, which > > +implies to use specific registers inside the chip, the number of secondary > > +processes with PF ports is limited to only one. > > > > -This limitation will be solved in future versions but having basic multiprocess support > > -is important for allowing development and debugging through the PF using a secondary > > -process which will create a CPP bridge for user space tools accessing the NFP. > > +This limitation will be solved in future versions, but having basic > > +multiprocess support is important for allowing development and debugging > > +through the PF using a secondary process, which will create a CPP bridge > > +for user space tools accessing the NFP. > > > > > > System configuration > > -------------------- > > > > #. **Enable SR-IOV on the NFP device:** The current NFP PMD supports the PF and > > - the VFs on a NFP device. However, it is not possible to work with both at the > > - same time because the VFs require the PF being bound to the NFP PF Linux > > - netdev driver. Make sure you are working with a kernel with NFP PF support or > > - get the drivers from the above Github repository and follow the instructions > > - for building and installing it. > > + the VFs on a NFP device. However, it is not possible to work with both at > > + the same time when using the netdev NFP Linux netdev driver. > > Old and new text doesn't say same thing. > Old one says: "For DPDK to support VF, PF needs to bound to kernel driver.: > > Is this changed, or just wording mistake? > > > > It is possible > > + to bind the PF to the ``vfio-pci`` kernel module, and create VFs afterwards. > > + This requires loading the ``vfio-pci`` module with the following parameters: > > + > > + .. code-block:: console > > + > > + modprobe vfio-pci enable_sriov=1 disable_idle_d3=1 > > + > > + VFs need to be enabled before they can be used with the PMD. Before enabling > > + the VFs it is useful to obtain information about the current NFP PCI device > > + detected by the system. This can be done on Netronome SmartNICs using: > > + > > + .. code-block:: console > > + > > + lspci -d 19ee: > > > > What I understand is, to support VF by DPDK two things are required: > 1) Ability to create VFs, this can be done both by using device's kernel > driver or 'vfio-pci' > 2) PF driver should support managing VFs. > > Above lines document about item (1) and how 'vfio-pci' is used for it. > > But old documentation mentions about item (2) is missing, why that part > removed, isn't it valid anymore? I mean is "PF -> kernel, VF -> DPDK" > combination supported now? > > > > - VFs need to be enabled before they can be used with the PMD. > > - Before enabling the VFs it is useful to obtain information about the > > - current NFP PCI device detected by the system: > > + and on Corigine SmartNICs using: > > > > .. code-block:: console > > > > - lspci -d19ee: > > + lspci -d 1da8: > > > > - Now, for example, configure two virtual functions on a NFP-6xxx device > > + Now, for example, to configure two virtual functions on a NFP device > > whose PCI system identity is "0000:03:00.0": > > > > .. code-block:: console > > > > echo 2 > /sys/bus/pci/devices/0000:03:00.0/sriov_numvfs > > > > - The result of this command may be shown using lspci again: > > + The result of this command may be shown using lspci again on Netronome > > + SmartNICs: > > + > > + .. code-block:: console > > + > > + lspci -d 19ee: -k > > + > > + and on Corigine SmartNICs: > > > > .. code-block:: console > > > > - lspci -d19ee: -k > > + lspci -d 1da8: -k > > > > Two new PCI devices should appear in the output of the above command. The > > - -k option shows the device driver, if any, that devices are bound to. > > - Depending on the modules loaded at this point the new PCI devices may be > > - bound to nfp_netvf driver. > > + -k option shows the device driver, if any, that the devices are bound to. > > + Depending on the modules loaded, at this point the new PCI devices may be > > + bound to the ``nfp`` kernel driver or ``vfio-pci``. > > > > > > Flow offload > > @@ -193,13 +205,13 @@ The flower firmware application requires the PMD running two services: > > > > * PF vNIC service: handling the feedback traffic. > > * ctrl vNIC service: communicate between PMD and firmware through > > - control message. > > + control messages. > > > > To achieve the offload of flow, the representor ports are exposed to OVS. > > -The flower firmware application support representor port for VF and physical > > -port. There will always exist a representor port for each physical port, > > -and the number of the representor port for VF is specified by the user through > > -parameter. > > +The flower firmware application supports VF, PF, and physical port representor > > +ports. > > Again old document and new one is not saying same thing, is it intentional? > > Old one says: "Having representor ports for both VF and PF is supported." > > New one says: "FW supports representor port, VF and PF." > > > There will always exist a representor port for a PF and each physical > > +port. The number of the representor ports for VFs are specified by the user > > +through a parameter. > > > > In the Rx direction, the flower firmware application will prepend the input > > port information into metadata for each packet which can't offloaded. The PF > > @@ -207,12 +219,12 @@ vNIC service will keep polling packets from the firmware, and multiplex them > > to the corresponding representor port. > > > > In the Tx direction, the representor port will prepend the output port > > -information into metadata for each packet, and then send it to firmware through > > -PF vNIC. > > +information into metadata for each packet, and then send it to the firmware > > +through the PF vNIC. > > > > -The ctrl vNIC service handling various control message, like the creation and > > -configuration of representor port, the pattern and action of flow rules, the > > -statistics of flow rules, and so on. > > +The ctrl vNIC service handles various control messages, for example, the > > +creation and configuration of a representor port, the pattern and action of > > +flow rules, the statistics of flow rules, etc. > > > > Metadata Format > > --------------- > -- Kind Regards, Niklas Söderlund