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 DBEDEA0032; Fri, 1 Oct 2021 13:42:38 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5C83A4067A; Fri, 1 Oct 2021 13:42:38 +0200 (CEST) Received: from inva020.nxp.com (inva020.nxp.com [92.121.34.13]) by mails.dpdk.org (Postfix) with ESMTP id 3254C40040 for ; Fri, 1 Oct 2021 13:42:37 +0200 (CEST) Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id E9EE41A104E; Fri, 1 Oct 2021 13:42:36 +0200 (CEST) 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 B17271A104B; Fri, 1 Oct 2021 13:42:36 +0200 (CEST) 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 B0511183AC89; Fri, 1 Oct 2021 19:42:35 +0800 (+08) From: Apeksha Gupta To: david.marchand@redhat.com, andrew.rybchenko@oktetlabs.ru, ferruh.yigit@intel.com Cc: dev@dpdk.org, sachin.saxena@nxp.com, hemant.agrawal@nxp.com, Apeksha Gupta Date: Fri, 1 Oct 2021 17:12:25 +0530 Message-Id: <20211001114230.14107-1-apeksha.gupta@nxp.com> X-Mailer: git-send-email 2.17.1 X-Virus-Scanned: ClamAV using ClamSMTP Subject: [dpdk-dev] [PATCH v4 0/5] drivers/net: add NXP ENETFEC driver 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 Sender: "dev" 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 enqueue and dequeue support net/enetfec: add features MAINTAINERS | 7 + doc/guides/nics/enetfec.rst | 133 +++++ doc/guides/nics/features/enetfec.ini | 14 + doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_21_11.rst | 4 + drivers/net/enetfec/enet_ethdev.c | 761 +++++++++++++++++++++++++ drivers/net/enetfec/enet_ethdev.h | 167 ++++++ drivers/net/enetfec/enet_pmd_logs.h | 31 + drivers/net/enetfec/enet_regs.h | 116 ++++ drivers/net/enetfec/enet_rxtx.c | 496 ++++++++++++++++ drivers/net/enetfec/enet_uio.c | 273 +++++++++ drivers/net/enetfec/enet_uio.h | 64 +++ drivers/net/enetfec/meson.build | 11 + drivers/net/enetfec/version.map | 3 + drivers/net/meson.build | 1 + 15 files changed, 2082 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 -- 2.17.1