Message ID | 20211115071940.12942-1-apeksha.gupta@nxp.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 B616AA0C43; Mon, 15 Nov 2021 08:19:47 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6F21C40E01; Mon, 15 Nov 2021 08:19:47 +0100 (CET) Received: from inva020.nxp.com (inva020.nxp.com [92.121.34.13]) by mails.dpdk.org (Postfix) with ESMTP id DEC1E40141 for <dev@dpdk.org>; Mon, 15 Nov 2021 08:19:45 +0100 (CET) Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id B64E21A0E41; Mon, 15 Nov 2021 08:19:45 +0100 (CET) Received: from aprdc01srsp001v.ap-rdc01.nxp.com (aprdc01srsp001v.ap-rdc01.nxp.com [165.114.16.16]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 878F01A0E54; Mon, 15 Nov 2021 08:19:45 +0100 (CET) Received: from lsv03186.swis.in-blr01.nxp.com (lsv03186.swis.in-blr01.nxp.com [92.120.146.182]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id 748BD183AD05; Mon, 15 Nov 2021 15:19:44 +0800 (+08) From: Apeksha Gupta <apeksha.gupta@nxp.com> To: stephen@networkplumber.org, ferruh.yigit@intel.com Cc: david.marchand@redhat.com, andrew.rybchenko@oktetlabs.ru, dev@dpdk.org, sachin.saxena@nxp.com, hemant.agrawal@nxp.com, Apeksha Gupta <apeksha.gupta@nxp.com> Subject: [PATCH v11 0/5] drivers/net: add NXP ENETFEC driver Date: Mon, 15 Nov 2021 12:49:35 +0530 Message-Id: <20211115071940.12942-1-apeksha.gupta@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211113043141.18888-2-apeksha.gupta@nxp.com> References: <20211113043141.18888-2-apeksha.gupta@nxp.com> X-Virus-Scanned: ClamAV using ClamSMTP X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series | drivers/net: add NXP ENETFEC driver | |
Message
Apeksha Gupta
Nov. 15, 2021, 7:19 a.m. UTC
This patch series introduce the enetfec driver, ENETFEC (Fast Ethernet Controller) is a network poll mode driver for the inbuilt NIC found in the NXP i.MX 8M Mini SoC. An overview of the enetfec driver with probe and remove are in patch 1. Patch 2 design UIO interface so that user space directly communicate with a UIO based hardware device. UIO interface mmap the Control and Status Registers (CSR) & BD memory in DPDK which is allocated in kernel and this gives access to non-cacheble memory for BD. Patch 3 adds the RX/TX queue configuration setup operations. Patch 4 adds enqueue and dequeue support. Also adds some basic features like promiscuous enable, basic stats. Patch 5 adds checksum and VLAN features. Apeksha Gupta (5): net/enetfec: introduce NXP ENETFEC driver net/enetfec: add UIO support net/enetfec: support queue configuration net/enetfec: add Rx/Tx support net/enetfec: add features MAINTAINERS | 7 + doc/guides/nics/enetfec.rst | 137 +++++ doc/guides/nics/features/enetfec.ini | 14 + doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_21_11.rst | 5 + drivers/net/enetfec/enet_ethdev.c | 701 +++++++++++++++++++++++++ drivers/net/enetfec/enet_ethdev.h | 153 ++++++ drivers/net/enetfec/enet_pmd_logs.h | 31 ++ drivers/net/enetfec/enet_regs.h | 116 ++++ drivers/net/enetfec/enet_rxtx.c | 273 ++++++++++ drivers/net/enetfec/enet_uio.c | 284 ++++++++++ drivers/net/enetfec/enet_uio.h | 64 +++ drivers/net/enetfec/meson.build | 13 + drivers/net/enetfec/version.map | 3 + drivers/net/meson.build | 1 + 15 files changed, 1803 insertions(+) create mode 100644 doc/guides/nics/enetfec.rst create mode 100644 doc/guides/nics/features/enetfec.ini create mode 100644 drivers/net/enetfec/enet_ethdev.c create mode 100644 drivers/net/enetfec/enet_ethdev.h create mode 100644 drivers/net/enetfec/enet_pmd_logs.h create mode 100644 drivers/net/enetfec/enet_regs.h create mode 100644 drivers/net/enetfec/enet_rxtx.c create mode 100644 drivers/net/enetfec/enet_uio.c create mode 100644 drivers/net/enetfec/enet_uio.h create mode 100644 drivers/net/enetfec/meson.build create mode 100644 drivers/net/enetfec/version.map
Comments
On 11/15/2021 7:19 AM, Apeksha Gupta wrote: > This patch series introduce the enetfec driver, ENETFEC (Fast Ethernet > Controller) is a network poll mode driver for the inbuilt NIC found in > the NXP i.MX 8M Mini SoC. > > An overview of the enetfec driver with probe and remove are in patch 1. > Patch 2 design UIO interface so that user space directly communicate with > a UIO based hardware device. UIO interface mmap the Control and Status > Registers (CSR) & BD memory in DPDK which is allocated in kernel and this > gives access to non-cacheble memory for BD. > > Patch 3 adds the RX/TX queue configuration setup operations. > Patch 4 adds enqueue and dequeue support. Also adds some basic features > like promiscuous enable, basic stats. > Patch 5 adds checksum and VLAN features. > > Apeksha Gupta (5): > net/enetfec: introduce NXP ENETFEC driver > net/enetfec: add UIO support > net/enetfec: support queue configuration > net/enetfec: add Rx/Tx support > net/enetfec: add features > Hi Apeksha, It would help if you can keep a changelog between versions, in the cover letter, for future. Also, there is a meson file warning, fyi: $ ./devtools/check-meson.py Error: Missing trailing "," in list at drivers/net/enetfec/meson.build:12
On 11/15/2021 7:19 AM, Apeksha Gupta wrote: > This patch series introduce the enetfec driver, ENETFEC (Fast Ethernet > Controller) is a network poll mode driver for the inbuilt NIC found in > the NXP i.MX 8M Mini SoC. > > An overview of the enetfec driver with probe and remove are in patch 1. > Patch 2 design UIO interface so that user space directly communicate with > a UIO based hardware device. UIO interface mmap the Control and Status > Registers (CSR) & BD memory in DPDK which is allocated in kernel and this > gives access to non-cacheble memory for BD. > > Patch 3 adds the RX/TX queue configuration setup operations. > Patch 4 adds enqueue and dequeue support. Also adds some basic features > like promiscuous enable, basic stats. > Patch 5 adds checksum and VLAN features. > > Apeksha Gupta (5): > net/enetfec: introduce NXP ENETFEC driver > net/enetfec: add UIO support > net/enetfec: support queue configuration > net/enetfec: add Rx/Tx support > net/enetfec: add features > For series: Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com> Series applied to dpdk-next-net/main, thanks. meson warning fixed, unnecessary headers removed while merging. Ignoring the gcc12 build error for now, please remember to visit it later.
On 11/15/2021 3:05 PM, Ferruh Yigit wrote: > On 11/15/2021 7:19 AM, Apeksha Gupta wrote: >> This patch series introduce the enetfec driver, ENETFEC (Fast Ethernet >> Controller) is a network poll mode driver for the inbuilt NIC found in >> the NXP i.MX 8M Mini SoC. >> >> An overview of the enetfec driver with probe and remove are in patch 1. >> Patch 2 design UIO interface so that user space directly communicate with >> a UIO based hardware device. UIO interface mmap the Control and Status >> Registers (CSR) & BD memory in DPDK which is allocated in kernel and this >> gives access to non-cacheble memory for BD. >> >> Patch 3 adds the RX/TX queue configuration setup operations. >> Patch 4 adds enqueue and dequeue support. Also adds some basic features >> like promiscuous enable, basic stats. >> Patch 5 adds checksum and VLAN features. >> >> Apeksha Gupta (5): >> net/enetfec: introduce NXP ENETFEC driver >> net/enetfec: add UIO support >> net/enetfec: support queue configuration >> net/enetfec: add Rx/Tx support >> net/enetfec: add features >> > > For series: > Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com> > > Series applied to dpdk-next-net/main, thanks. > > > meson warning fixed, unnecessary headers removed while merging. > Ignoring the gcc12 build error for now, please remember to visit it later. > Hi Apeksha, Hemant, Is it possible to send a test report for this new PMD [1]? Since this is a new PMD, and only vendor can test it, it will be good to record what features tested on which platform and what is the result. Otherwise we are completely blind on the status of this new piece of code. Some sample test results to help you: http://inbox.dpdk.org/dev/f5980c76-d456-03fc-e1b7-cb5f24c658c9@linux.vnet.ibm.com/ http://inbox.dpdk.org/dev/CAH-L+nOyuL4HdZVmT6GLr370vo9PV8QptCKeHUsupVUpNZ8SPw@mail.gmail.com/ http://inbox.dpdk.org/dev/CAMp7Qk=ROf4ptrWuaWdCV8GnYr1jR3ADAcGHxbNkHYSHzVUtEg@mail.gmail.com/ http://inbox.dpdk.org/dev/b2c7ed47d95a4d09b41308a826bfe0e5@intel.com/ And if possible a tested platform patch would be great, something like following, https://patches.dpdk.org/project/dpdk/patch/20211119181833.121383-1-yanx.xia@intel.com/ [1] http://core.dpdk.org/testing/#release-validation