This series of patches add the CXGBE Poll Mode Driver support for Chelsio Terminator 5 series of 10G/40G adapters. The CXGBE PMD is split into multiple patches. The first patch adds the hardware specific api for all supported Chelsio T5 adapters and the patches from 2 to 8 add the actual DPDK CXGBE PMD.
Also, the CXGBE PMD is enabled for compilation and linking by patch 2. MAINTAINERS file is also updated by patch 2 to claim responsibility for the CXGBE PMD. More information on the CXGBE PMD can be found in the documentation added by patch 9. v3: - Merge patches 10 and 11 with patch 2. - Add rte_pmd_cxgbe_version.map and add EXPORT_MAP and LIBABIVER to cxgbe Makefile. - Use RTE_DIM macro for calculating ARRAY_SIZE. v2: - Move the driver to drivers/net directory and update all config files and commit logs. Also update MAINTAINERS. - Break the second patch into more patches; incrementally, adding features to the cxgbe poll mode driver. - Replace bitwise operations in finding last (most significant) bit set with gcc's __builtin_clz. - Fix the return value returned by link update eth_dev operation. - Few bug fixes and code cleanup. Rahul Lakkireddy (9): cxgbe: add hardware specific api for all supported Chelsio T5 series adapters. cxgbe: add cxgbe poll mode driver. cxgbe: add device configuration and RX support for cxgbe PMD. cxgbe: add TX support for cxgbe PMD. cxgbe: add device related operations for cxgbe PMD. cxgbe: add port statistics for cxgbe PMD. cxgbe: add link related functions for cxgbe PMD. cxgbe: add flow control functions for cxgbe PMD. doc: add cxgbe PMD documentation under doc/guides/nics/cxgbe.rst MAINTAINERS | 5 + config/common_linuxapp | 10 + doc/guides/nics/cxgbe.rst | 209 +++ doc/guides/nics/index.rst | 1 + doc/guides/prog_guide/source_org.rst | 1 + drivers/net/Makefile | 1 + drivers/net/cxgbe/Makefile | 78 + drivers/net/cxgbe/base/adapter.h | 565 ++++++ drivers/net/cxgbe/base/common.h | 401 ++++ drivers/net/cxgbe/base/t4_chip_type.h | 79 + drivers/net/cxgbe/base/t4_hw.c | 2686 +++++++++++++++++++++++++++ drivers/net/cxgbe/base/t4_hw.h | 149 ++ drivers/net/cxgbe/base/t4_msg.h | 345 ++++ drivers/net/cxgbe/base/t4_pci_id_tbl.h | 148 ++ drivers/net/cxgbe/base/t4_regs.h | 779 ++++++++ drivers/net/cxgbe/base/t4_regs_values.h | 168 ++ drivers/net/cxgbe/base/t4fw_interface.h | 1730 +++++++++++++++++ drivers/net/cxgbe/cxgbe.h | 60 + drivers/net/cxgbe/cxgbe_compat.h | 266 +++ drivers/net/cxgbe/cxgbe_ethdev.c | 802 ++++++++ drivers/net/cxgbe/cxgbe_main.c | 1207 ++++++++++++ drivers/net/cxgbe/rte_pmd_cxgbe_version.map | 4 + drivers/net/cxgbe/sge.c | 2253 ++++++++++++++++++++++ mk/rte.app.mk | 1 + 24 files changed, 11948 insertions(+) create mode 100644 doc/guides/nics/cxgbe.rst create mode 100644 drivers/net/cxgbe/Makefile create mode 100644 drivers/net/cxgbe/base/adapter.h create mode 100644 drivers/net/cxgbe/base/common.h create mode 100644 drivers/net/cxgbe/base/t4_chip_type.h create mode 100644 drivers/net/cxgbe/base/t4_hw.c create mode 100644 drivers/net/cxgbe/base/t4_hw.h create mode 100644 drivers/net/cxgbe/base/t4_msg.h create mode 100644 drivers/net/cxgbe/base/t4_pci_id_tbl.h create mode 100644 drivers/net/cxgbe/base/t4_regs.h create mode 100644 drivers/net/cxgbe/base/t4_regs_values.h create mode 100644 drivers/net/cxgbe/base/t4fw_interface.h create mode 100644 drivers/net/cxgbe/cxgbe.h create mode 100644 drivers/net/cxgbe/cxgbe_compat.h create mode 100644 drivers/net/cxgbe/cxgbe_ethdev.c create mode 100644 drivers/net/cxgbe/cxgbe_main.c create mode 100644 drivers/net/cxgbe/rte_pmd_cxgbe_version.map create mode 100644 drivers/net/cxgbe/sge.c -- 2.4.1