From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-gw3-out.broadcom.com (mail-gw3-out.broadcom.com [216.31.210.64]) by dpdk.org (Postfix) with ESMTP id BB58FC486 for ; Wed, 15 Jun 2016 23:24:28 +0200 (CEST) X-IronPort-AV: E=Sophos;i="5.26,477,1459839600"; d="scan'208";a="97177446" Received: from mail-irv-18.broadcom.com ([10.15.198.37]) by mail-gw3-out.broadcom.com with ESMTP; 15 Jun 2016 14:44:50 -0700 Received: from mail-irva-12.broadcom.com (mail-irva-12.broadcom.com [10.11.16.101]) by mail-irv-18.broadcom.com (Postfix) with ESMTP id 695818202C; Wed, 15 Jun 2016 14:24:27 -0700 (PDT) Received: from DPDK-C1.broadcom.com (dhcp-10-13-115-104.irv.broadcom.com [10.13.115.104]) by mail-irva-12.broadcom.com (Postfix) with ESMTP id 5047CA6280; Wed, 15 Jun 2016 14:24:27 -0700 (PDT) From: Stephen Hurd To: dev@dpdk.org, ajit.khaparde@broadcom.com, bruce.richardson@intel.com Date: Wed, 15 Jun 2016 14:23:00 -0700 Message-Id: <1466025818-124223-1-git-send-email-stephen.hurd@broadcom.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1465944971-113413-1-git-send-email-stephen.hurd@broadcom.com> References: <1465944971-113413-1-git-send-email-stephen.hurd@broadcom.com> Subject: [dpdk-dev] [PATCH v6 00/38] new bnxt poll mode driver library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Jun 2016 21:24:29 -0000 The bnxt poll mode library (librte_pmd_bnxt) implements support for Broadcom NetXtreme C-Series. These adapters support Standards- compliant 10/25/50Gbps 30MPPS full-duplex throughput. Information about this family of adapters can be found in the NetXtreme Brand section https://goo.gl/4H7q63 of the Broadcom web site http://www.broadcom.com/ With the current driver, allocated mbufs must be large enough to hold the entire received frame. If the mbufs are not large enough, the packets will be dropped. This is most limiting when jumbo frames are used. Ajit Khaparde (38): bnxt: new driver for Broadcom NetXtreme-C devices bnxt: add HWRM init code bnxt: add driver register/unregister support bnxt: add dev infos get operation bnxt: add dev configure operation bnxt: add vnic functions and structs bnxt: declare generic ring structs and free() func bnxt: add completion ring support bnxt: add L2 filter alloc/init/free bnxt: add Tx queue operations (nonfunctional) bnxt: add Rx queue create/destroy operations bnxt: add statistics operations bnxt: add initial Tx code implementation bnxt: add initial Rx code implementation bnxt: add code to alloc/free Tx Rx and cmpl rings bnxt: add HWRM function reset command bnxt: add HWRM vnic alloc function bnxt: add HWRM vnic free function bnxt: add HWRM vnic configure function bnxt: add API to allow configuration of vnic bnxt: add HWRM API to configure RSS bnxt: add API for L2 Rx mask set/clear functions bnxt: add HWRM API for stats context allocation bnxt: add HWRM ring alloc/free functions bnxt: add ring group alloc/free functions bnxt: add HWRM stat context free function bnxt: add HWRM API to set and clear filters bnxt: allocate and free all HWRM rings and groups bnxt: add HWRM port PHY config call and helpers bnxt: add start/stop/link update operations bnxt: add promiscuous enable/disable operations bnxt: add all multicast enable/disable operations bnxt: free memory in close operation bnxt: add MAC address add/remove dev ops bnxt: add set link up/down operations bnxt: add reta update/query operations bnxt: add RSS device operations bnxt: add flow control operations MAINTAINERS | 5 + config/common_base | 5 + doc/guides/nics/bnxt.rst | 49 + doc/guides/nics/index.rst | 1 + doc/guides/nics/overview.rst | 138 +- drivers/net/Makefile | 1 + drivers/net/bnxt/Makefile | 73 + drivers/net/bnxt/bnxt.h | 176 + drivers/net/bnxt/bnxt_cpr.c | 159 + drivers/net/bnxt/bnxt_cpr.h | 86 + drivers/net/bnxt/bnxt_ethdev.c | 1049 ++++ drivers/net/bnxt/bnxt_filter.c | 175 + drivers/net/bnxt/bnxt_filter.h | 74 + drivers/net/bnxt/bnxt_hwrm.c | 1491 ++++++ drivers/net/bnxt/bnxt_hwrm.h | 104 + drivers/net/bnxt/bnxt_ring.c | 306 ++ drivers/net/bnxt/bnxt_ring.h | 103 + drivers/net/bnxt/bnxt_rxq.c | 319 ++ drivers/net/bnxt/bnxt_rxq.h | 74 + drivers/net/bnxt/bnxt_rxr.c | 367 ++ drivers/net/bnxt/bnxt_rxr.h | 62 + drivers/net/bnxt/bnxt_stats.c | 142 + drivers/net/bnxt/bnxt_stats.h | 44 + drivers/net/bnxt/bnxt_txq.c | 162 + drivers/net/bnxt/bnxt_txq.h | 75 + drivers/net/bnxt/bnxt_txr.c | 339 ++ drivers/net/bnxt/bnxt_txr.h | 71 + drivers/net/bnxt/bnxt_vnic.c | 277 ++ drivers/net/bnxt/bnxt_vnic.h | 80 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 5799 +++++++++++++++++++++++ drivers/net/bnxt/rte_pmd_bnxt_version.map | 4 + lib/librte_eal/common/include/rte_pci_dev_ids.h | 38 +- mk/rte.app.mk | 1 + 33 files changed, 11775 insertions(+), 74 deletions(-) create mode 100644 doc/guides/nics/bnxt.rst create mode 100644 drivers/net/bnxt/Makefile create mode 100644 drivers/net/bnxt/bnxt.h create mode 100644 drivers/net/bnxt/bnxt_cpr.c create mode 100644 drivers/net/bnxt/bnxt_cpr.h create mode 100644 drivers/net/bnxt/bnxt_ethdev.c create mode 100644 drivers/net/bnxt/bnxt_filter.c create mode 100644 drivers/net/bnxt/bnxt_filter.h create mode 100644 drivers/net/bnxt/bnxt_hwrm.c create mode 100644 drivers/net/bnxt/bnxt_hwrm.h create mode 100644 drivers/net/bnxt/bnxt_ring.c create mode 100644 drivers/net/bnxt/bnxt_ring.h create mode 100644 drivers/net/bnxt/bnxt_rxq.c create mode 100644 drivers/net/bnxt/bnxt_rxq.h create mode 100644 drivers/net/bnxt/bnxt_rxr.c create mode 100644 drivers/net/bnxt/bnxt_rxr.h create mode 100644 drivers/net/bnxt/bnxt_stats.c create mode 100644 drivers/net/bnxt/bnxt_stats.h create mode 100644 drivers/net/bnxt/bnxt_txq.c create mode 100644 drivers/net/bnxt/bnxt_txq.h create mode 100644 drivers/net/bnxt/bnxt_txr.c create mode 100644 drivers/net/bnxt/bnxt_txr.h create mode 100644 drivers/net/bnxt/bnxt_vnic.c create mode 100644 drivers/net/bnxt/bnxt_vnic.h create mode 100644 drivers/net/bnxt/hsi_struct_def_dpdk.h create mode 100644 drivers/net/bnxt/rte_pmd_bnxt_version.map -- 1.9.1