From patchwork Wed Jun 2 09:40:44 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiawen Wu X-Patchwork-Id: 93762 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 E1EC2A0524; Wed, 2 Jun 2021 11:39:39 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 65B004069F; Wed, 2 Jun 2021 11:39:39 +0200 (CEST) Received: from smtpbg511.qq.com (smtpbg511.qq.com [203.205.250.109]) by mails.dpdk.org (Postfix) with ESMTP id B8F2E40689 for ; Wed, 2 Jun 2021 11:39:36 +0200 (CEST) X-QQ-mid: bizesmtp32t1622626770t403i5or Received: from wxdbg.localdomain.com (unknown [183.129.236.74]) by esmtp6.qq.com (ESMTP) with id ; Wed, 02 Jun 2021 17:39:10 +0800 (CST) X-QQ-SSF: 01400000000000D0E000B00A0000000 X-QQ-FEAT: mJG+EqVdzGA9Klqcbj3USb55guSrQmo2c4IpGwOI4GT3ZL1gSM7jnHJJxRxlc idXw+Pz+/oV3B5N0k+8bhNYCZhYMNpRWZSOGuizy/xiAO53XZsTvp+d83lvIBHjx0B7OkdT IkaOE0grdgxkgzU43FEp2Df46/7VSYorbb5dbEwuDwUnOuoQq7UtJymrCZ8k7i/kg7inujt gLhswEoZ6Jv/MwVG/CA2t8owVLN0SDu/B3vuCDp1Ru3fqhXpHaaosWbzT+SPANqTWoCdVxe D63jupIo4n3+R8nWS+D5WfA+AH+Jg4klzWe30/wjdeV5/GyN4aFKYqRjc/HP0H0/vBtIUL0 Una3mA3 X-QQ-GoodBg: 2 From: Jiawen Wu To: dev@dpdk.org Cc: Jiawen Wu Date: Wed, 2 Jun 2021 17:40:44 +0800 Message-Id: <20210602094108.1575640-1-jiawenwu@trustnetic.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:trustnetic.com:qybgforeign:qybgforeign6 X-QQ-Bgrelay: 1 Subject: [dpdk-dev] [PATCH v5 00/24] net: ngbe PMD 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 set provides a skeleton of ngbe PMD, which adapted to Wangxun WX1860 series NICs. v5: - Extend patches with device initialization and RxTx functions. v4: - Fix compile error. v3: - Use rte_ether functions to define marcos. v2: - Correct some clerical errors. - Use ethdev debug flags instead of driver own. Jiawen Wu (24): net/ngbe: add build and doc infrastructure net/ngbe: add device IDs net/ngbe: support probe and remove net/ngbe: add device init and uninit net/ngbe: add log type and error type net/ngbe: define registers net/ngbe: set MAC type and LAN id net/ngbe: init and validate EEPROM net/ngbe: add HW initialization net/ngbe: identify PHY and reset PHY net/ngbe: store MAC address net/ngbe: add info get operation net/ngbe: support link update net/ngbe: setup the check PHY link net/ngbe: add Rx queue setup and release net/ngbe: add Tx queue setup and release net/ngbe: add Rx and Tx init net/ngbe: add packet type net/ngbe: add simple Rx and Tx flow net/ngbe: support bulk and scatter Rx net/ngbe: support full-featured Tx path net/ngbe: add device start operation net/ngbe: start and stop RxTx net/ngbe: add device stop operation MAINTAINERS | 6 + doc/guides/nics/features/ngbe.ini | 25 + doc/guides/nics/index.rst | 1 + doc/guides/nics/ngbe.rst | 58 + doc/guides/rel_notes/release_21_08.rst | 6 + drivers/net/meson.build | 1 + drivers/net/ngbe/base/meson.build | 26 + drivers/net/ngbe/base/ngbe.h | 11 + drivers/net/ngbe/base/ngbe_devids.h | 84 + drivers/net/ngbe/base/ngbe_dummy.h | 209 ++ drivers/net/ngbe/base/ngbe_eeprom.c | 203 ++ drivers/net/ngbe/base/ngbe_eeprom.h | 17 + drivers/net/ngbe/base/ngbe_hw.c | 1069 +++++++++ drivers/net/ngbe/base/ngbe_hw.h | 59 + drivers/net/ngbe/base/ngbe_mng.c | 198 ++ drivers/net/ngbe/base/ngbe_mng.h | 65 + drivers/net/ngbe/base/ngbe_osdep.h | 178 ++ drivers/net/ngbe/base/ngbe_phy.c | 451 ++++ drivers/net/ngbe/base/ngbe_phy.h | 62 + drivers/net/ngbe/base/ngbe_phy_mvl.c | 251 +++ drivers/net/ngbe/base/ngbe_phy_mvl.h | 97 + drivers/net/ngbe/base/ngbe_phy_rtl.c | 240 ++ drivers/net/ngbe/base/ngbe_phy_rtl.h | 89 + drivers/net/ngbe/base/ngbe_phy_yt.c | 272 +++ drivers/net/ngbe/base/ngbe_phy_yt.h | 76 + drivers/net/ngbe/base/ngbe_regs.h | 1490 +++++++++++++ drivers/net/ngbe/base/ngbe_status.h | 125 ++ drivers/net/ngbe/base/ngbe_type.h | 210 ++ drivers/net/ngbe/meson.build | 22 + drivers/net/ngbe/ngbe_ethdev.c | 1266 +++++++++++ drivers/net/ngbe/ngbe_ethdev.h | 146 ++ drivers/net/ngbe/ngbe_logs.h | 46 + drivers/net/ngbe/ngbe_ptypes.c | 640 ++++++ drivers/net/ngbe/ngbe_ptypes.h | 351 +++ drivers/net/ngbe/ngbe_rxtx.c | 2829 ++++++++++++++++++++++++ drivers/net/ngbe/ngbe_rxtx.h | 366 +++ drivers/net/ngbe/version.map | 3 + 37 files changed, 11248 insertions(+) create mode 100644 doc/guides/nics/features/ngbe.ini create mode 100644 doc/guides/nics/ngbe.rst create mode 100644 drivers/net/ngbe/base/meson.build create mode 100644 drivers/net/ngbe/base/ngbe.h create mode 100644 drivers/net/ngbe/base/ngbe_devids.h create mode 100644 drivers/net/ngbe/base/ngbe_dummy.h create mode 100644 drivers/net/ngbe/base/ngbe_eeprom.c create mode 100644 drivers/net/ngbe/base/ngbe_eeprom.h create mode 100644 drivers/net/ngbe/base/ngbe_hw.c create mode 100644 drivers/net/ngbe/base/ngbe_hw.h create mode 100644 drivers/net/ngbe/base/ngbe_mng.c create mode 100644 drivers/net/ngbe/base/ngbe_mng.h create mode 100644 drivers/net/ngbe/base/ngbe_osdep.h create mode 100644 drivers/net/ngbe/base/ngbe_phy.c create mode 100644 drivers/net/ngbe/base/ngbe_phy.h create mode 100644 drivers/net/ngbe/base/ngbe_phy_mvl.c create mode 100644 drivers/net/ngbe/base/ngbe_phy_mvl.h create mode 100644 drivers/net/ngbe/base/ngbe_phy_rtl.c create mode 100644 drivers/net/ngbe/base/ngbe_phy_rtl.h create mode 100644 drivers/net/ngbe/base/ngbe_phy_yt.c create mode 100644 drivers/net/ngbe/base/ngbe_phy_yt.h create mode 100644 drivers/net/ngbe/base/ngbe_regs.h create mode 100644 drivers/net/ngbe/base/ngbe_status.h create mode 100644 drivers/net/ngbe/base/ngbe_type.h create mode 100644 drivers/net/ngbe/meson.build create mode 100644 drivers/net/ngbe/ngbe_ethdev.c create mode 100644 drivers/net/ngbe/ngbe_ethdev.h create mode 100644 drivers/net/ngbe/ngbe_logs.h create mode 100644 drivers/net/ngbe/ngbe_ptypes.c create mode 100644 drivers/net/ngbe/ngbe_ptypes.h create mode 100644 drivers/net/ngbe/ngbe_rxtx.c create mode 100644 drivers/net/ngbe/ngbe_rxtx.h create mode 100644 drivers/net/ngbe/version.map