New driver for Broadcom NetXtreme-C family of controllers and cards capable of up to 50Gbps link with 30Mpps throughput.
v2: * Split into multiple patches * Add nic guide * Add features in overview.rst v3: * Fix incorrect format specifier compilation error on i686 (PRIx64 instead of lx for uint64_t) Stephen Hurd (7): lib/librte_ether: Add 2/2.5/25/50Gbps link speeds lib/librte_eal: Add PCI IDs for Broadcom bnxt drivers/net/bnxt new driver for Broadcom bnxt maintainers: claim drivers/net/bnxt build: add bnxt PMD to build doc: Add bnxt to overview table doc: add guide for new bnxt driver MAINTAINERS | 4 + config/common_bsdapp | 5 + config/common_linuxapp | 5 + doc/guides/nics/bnxt.rst | 49 + doc/guides/nics/overview.rst | 64 +- drivers/net/Makefile | 1 + drivers/net/bnxt/Makefile | 79 + drivers/net/bnxt/bnxt.h | 217 +++ drivers/net/bnxt/bnxt_cpr.c | 138 ++ drivers/net/bnxt/bnxt_cpr.h | 117 ++ drivers/net/bnxt/bnxt_ethdev.c | 1381 +++++++++++++++++ drivers/net/bnxt/bnxt_filter.c | 175 +++ drivers/net/bnxt/bnxt_filter.h | 74 + drivers/net/bnxt/bnxt_hwrm.c | 1554 +++++++++++++++++++ drivers/net/bnxt/bnxt_hwrm.h | 105 ++ drivers/net/bnxt/bnxt_irq.c | 154 ++ drivers/net/bnxt/bnxt_irq.h | 51 + drivers/net/bnxt/bnxt_ring.c | 306 ++++ drivers/net/bnxt/bnxt_ring.h | 104 ++ drivers/net/bnxt/bnxt_rxq.c | 383 +++++ drivers/net/bnxt/bnxt_rxq.h | 75 + drivers/net/bnxt/bnxt_rxr.c | 369 +++++ drivers/net/bnxt/bnxt_rxr.h | 73 + drivers/net/bnxt/bnxt_stats.c | 190 +++ drivers/net/bnxt/bnxt_stats.h | 44 + drivers/net/bnxt/bnxt_txq.c | 164 ++ drivers/net/bnxt/bnxt_txq.h | 76 + drivers/net/bnxt/bnxt_txr.c | 326 ++++ drivers/net/bnxt/bnxt_txr.h | 71 + drivers/net/bnxt/bnxt_vnic.c | 285 ++++ drivers/net/bnxt/bnxt_vnic.h | 80 + drivers/net/bnxt/hsi_struct_def_dpdk.h | 1832 +++++++++++++++++++++++ drivers/net/bnxt/rte_pmd_bnxt_version.map | 4 + lib/librte_eal/common/include/rte_pci_dev_ids.h | 45 +- lib/librte_ether/rte_ethdev.h | 4 + mk/rte.app.mk | 1 + 36 files changed, 8568 insertions(+), 37 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_irq.c create mode 100644 drivers/net/bnxt/bnxt_irq.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