From patchwork Thu Sep 26 14:01:46 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Wei Hu (Xavier)" X-Patchwork-Id: 59883 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id F0EE41BE97; Thu, 26 Sep 2019 16:04:53 +0200 (CEST) Received: from huawei.com (szxga04-in.huawei.com [45.249.212.190]) by dpdk.org (Postfix) with ESMTP id 5D07D1BE51 for ; Thu, 26 Sep 2019 16:04:49 +0200 (CEST) Received: from DGGEMS405-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 4E5B97786AB71E604627; Thu, 26 Sep 2019 22:04:48 +0800 (CST) Received: from localhost.localdomain (10.67.212.132) by DGGEMS405-HUB.china.huawei.com (10.3.19.205) with Microsoft SMTP Server id 14.3.439.0; Thu, 26 Sep 2019 22:04:42 +0800 From: "Wei Hu (Xavier)" To: CC: , , , Date: Thu, 26 Sep 2019 22:01:46 +0800 Message-ID: <1569506528-60464-1-git-send-email-xavier.huwei@huawei.com> X-Mailer: git-send-email 2.7.4 MIME-Version: 1.0 X-Originating-IP: [10.67.212.132] X-CFilter-Loop: Reflected Subject: [dpdk-dev] [PATCH v3 00/22] add hns3 ethernet PMD driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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" The Hisilicon Network Subsystem is a long term evolution IP which is supposed to be used in Hisilicon ICT SoCs such as Kunpeng 920. This series add DPDK rte_ethdev poll mode driver for Hisilicon Network Subsystem 3(hns3) network engine. v2 -> v3: 1. Resolve the conflict problem when performing git operation based on the current repository. The conflict occurs in doc/guides/rel_notes/release_19_11.rst. v1 -> v2: 1. Address some comments from Jerin Jacob Kollanukkaran, Stephen Hemminger and Ferruh Yigit. Wei Hu (Xavier) (22): net/hns3: add build and doc infrastructure net/hns3: add hardware registers definition net/hns3: add some definitions for data structure and macro net/hns3: register hns3 PMD driver and add the log interface definition net/hns3: add support for cmd of hns3 PMD driver net/hns3: add the initialization of hns3 PMD driver net/hns3: add support for MAC address related operations net/hns3: add support for some misc operations net/hns3: add support for link_update operation net/hns3: add support for flow directory of hns3 PMD driver net/hns3: add support for RSS of hns3 PMD driver net/hns3: add support for flow control of hns3 PMD driver net/hns3: add support for vlan of hns3 PMD driver net/hns3: add support for mailbox of hns3 PMD driver net/hns3: add support for hns3 VF PMD driver net/hns3: add RX/TX package burst and queue related operation net/hns3: add start stop configure promiscuous ops net/hns3: add dump register ops for hns3 PMD driver net/hns3: add abnormal interrupt process for hns3 PMD driver net/hns3: add stats related ops for hns3 PMD driver net/hns3: add reset related process for hns3 PMD driver net/hns3: add multiple process support for hns3 PMD driver MAINTAINERS | 8 + config/common_base | 5 + config/common_linux | 5 + config/defconfig_arm-armv7a-linuxapp-gcc | 1 + config/defconfig_i686-native-linuxapp-gcc | 5 + config/defconfig_i686-native-linuxapp-icc | 5 + config/defconfig_ppc_64-power8-linuxapp-gcc | 1 + config/defconfig_x86_64-native-linuxapp-icc | 5 + config/defconfig_x86_x32-native-linuxapp-gcc | 5 + doc/guides/nics/features/hns3.ini | 34 + doc/guides/nics/features/hns3_vf.ini | 29 + doc/guides/nics/hns3.rst | 60 + doc/guides/nics/index.rst | 1 + doc/guides/rel_notes/release_19_11.rst | 6 + drivers/net/Makefile | 1 + drivers/net/hns3/Makefile | 45 + drivers/net/hns3/hns3_cmd.c | 565 +++ drivers/net/hns3/hns3_cmd.h | 761 ++++ drivers/net/hns3/hns3_dcb.c | 1642 +++++++++ drivers/net/hns3/hns3_dcb.h | 166 + drivers/net/hns3/hns3_ethdev.c | 4947 ++++++++++++++++++++++++++ drivers/net/hns3/hns3_ethdev.h | 645 ++++ drivers/net/hns3/hns3_ethdev_vf.c | 1725 +++++++++ drivers/net/hns3/hns3_fdir.c | 1059 ++++++ drivers/net/hns3/hns3_fdir.h | 205 ++ drivers/net/hns3/hns3_flow.c | 1903 ++++++++++ drivers/net/hns3/hns3_intr.c | 1166 ++++++ drivers/net/hns3/hns3_intr.h | 79 + drivers/net/hns3/hns3_logs.h | 34 + drivers/net/hns3/hns3_mbx.c | 353 ++ drivers/net/hns3/hns3_mbx.h | 136 + drivers/net/hns3/hns3_mp.c | 214 ++ drivers/net/hns3/hns3_mp.h | 14 + drivers/net/hns3/hns3_regs.c | 368 ++ drivers/net/hns3/hns3_regs.h | 99 + drivers/net/hns3/hns3_rss.c | 584 +++ drivers/net/hns3/hns3_rss.h | 124 + drivers/net/hns3/hns3_rxtx.c | 1676 +++++++++ drivers/net/hns3/hns3_rxtx.h | 317 ++ drivers/net/hns3/hns3_stats.c | 975 +++++ drivers/net/hns3/hns3_stats.h | 152 + drivers/net/hns3/meson.build | 37 + drivers/net/hns3/rte_pmd_hns3_version.map | 3 + drivers/net/meson.build | 1 + mk/rte.app.mk | 1 + 45 files changed, 20167 insertions(+) create mode 100644 doc/guides/nics/features/hns3.ini create mode 100644 doc/guides/nics/features/hns3_vf.ini create mode 100644 doc/guides/nics/hns3.rst create mode 100644 drivers/net/hns3/Makefile create mode 100644 drivers/net/hns3/hns3_cmd.c create mode 100644 drivers/net/hns3/hns3_cmd.h create mode 100644 drivers/net/hns3/hns3_dcb.c create mode 100644 drivers/net/hns3/hns3_dcb.h create mode 100644 drivers/net/hns3/hns3_ethdev.c create mode 100644 drivers/net/hns3/hns3_ethdev.h create mode 100644 drivers/net/hns3/hns3_ethdev_vf.c create mode 100644 drivers/net/hns3/hns3_fdir.c create mode 100644 drivers/net/hns3/hns3_fdir.h create mode 100644 drivers/net/hns3/hns3_flow.c create mode 100644 drivers/net/hns3/hns3_intr.c create mode 100644 drivers/net/hns3/hns3_intr.h create mode 100644 drivers/net/hns3/hns3_logs.h create mode 100644 drivers/net/hns3/hns3_mbx.c create mode 100644 drivers/net/hns3/hns3_mbx.h create mode 100644 drivers/net/hns3/hns3_mp.c create mode 100644 drivers/net/hns3/hns3_mp.h create mode 100644 drivers/net/hns3/hns3_regs.c create mode 100644 drivers/net/hns3/hns3_regs.h create mode 100644 drivers/net/hns3/hns3_rss.c create mode 100644 drivers/net/hns3/hns3_rss.h create mode 100644 drivers/net/hns3/hns3_rxtx.c create mode 100644 drivers/net/hns3/hns3_rxtx.h create mode 100644 drivers/net/hns3/hns3_stats.c create mode 100644 drivers/net/hns3/hns3_stats.h create mode 100644 drivers/net/hns3/meson.build create mode 100644 drivers/net/hns3/rte_pmd_hns3_version.map Reviewed-by: Ferruh Yigit