mbox series

[v1,00/11] Add patch set for IPN3KE

Message ID 1551338000-120348-1-git-send-email-rosen.xu@intel.com (mailing list archive)
Headers
Series Add patch set for IPN3KE |

Message

Xu, Rosen Feb. 28, 2019, 7:13 a.m. UTC
  This patch set adds the support of a new net PMD, IntelĀ® FPGA Programmable
Acceleration Card N3000, also called ipn3ke.

The ipn3ke PMD (librte_pmd_ipn3ke) provides poll mode driver support
for IntelĀ® FPGA PAC(Programmable Acceleration Card) N3000 based on
the Intel Ethernet Controller X710/XXV710 and Intel Arria 10 FPGA.

In this card, FPGA is an acceleration bridge between network interface
and the Intel Ethernet Controller. Although both FPGA and Ethernet
Controllers are connected to CPU with PCIe Gen3x16 Switch, all the
packet RX/TX is handled by Intel Ethernet Controller. So from application
point of view the data path is still the legacy Intel Ethernet Controller
X710/XXV710 PMD. Besides this, users can enable more acceleration
features by FPGA IP.

Rosen Xu (10):
  drivers/bus/ifpga: add AFU shared data
  drivers/bus/ifpga: add function for AFU search by name
  drivers/raw/ifpga_rawdev: add IPN3KE support for IFPGA Rawdev
  drivers/net/ipn3ke: add IPN3KE PMD driver
  config: add build enablement for IPN3KE
  mk: add link enablement for IPN3KE
  app/test-pmd: add IPN3KE support for testpmd
  usertools: add IPN3KE device bind
  doc: add IPN3KE document
  MAINTAINERS: add MAINTAINERS for IPN3KE

Tianfei Zhang (1):
  drivers/raw/ifpga_rawdev: add OPAE share code for IPN3KE

 MAINTAINERS                                        |    7 +
 app/test-pmd/Makefile                              |    4 +
 config/common_base                                 |    6 +
 doc/guides/nics/features/ipn3ke.ini                |   57 +
 doc/guides/nics/index.rst                          |    1 +
 doc/guides/nics/ipn3ke.rst                         |   97 +
 drivers/bus/ifpga/ifpga_bus.c                      |   13 +
 drivers/bus/ifpga/rte_bus_ifpga.h                  |   10 +
 drivers/net/Makefile                               |    1 +
 drivers/net/ipn3ke/Makefile                        |   33 +
 drivers/net/ipn3ke/ipn3ke_ethdev.c                 |  814 +++++++
 drivers/net/ipn3ke/ipn3ke_ethdev.h                 |  742 +++++++
 drivers/net/ipn3ke/ipn3ke_flow.c                   | 1407 +++++++++++++
 drivers/net/ipn3ke/ipn3ke_flow.h                   |  104 +
 drivers/net/ipn3ke/ipn3ke_logs.h                   |   30 +
 drivers/net/ipn3ke/ipn3ke_representor.c            |  890 ++++++++
 drivers/net/ipn3ke/ipn3ke_tm.c                     | 2217 ++++++++++++++++++++
 drivers/net/ipn3ke/ipn3ke_tm.h                     |  135 ++
 drivers/net/ipn3ke/meson.build                     |    9 +
 drivers/net/ipn3ke/rte_pmd_ipn3ke_version.map      |    4 +
 drivers/raw/ifpga_rawdev/base/Makefile             |    7 +
 drivers/raw/ifpga_rawdev/base/ifpga_api.c          |   69 +-
 drivers/raw/ifpga_rawdev/base/ifpga_api.h          |    1 +
 drivers/raw/ifpga_rawdev/base/ifpga_defines.h      |   86 +-
 drivers/raw/ifpga_rawdev/base/ifpga_enumerate.c    |  342 ++-
 drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.c  |  170 +-
 drivers/raw/ifpga_rawdev/base/ifpga_feature_dev.h  |   62 +-
 drivers/raw/ifpga_rawdev/base/ifpga_fme.c          |  373 ++++
 drivers/raw/ifpga_rawdev/base/ifpga_fme_pr.c       |    2 +-
 drivers/raw/ifpga_rawdev/base/ifpga_hw.h           |   21 +-
 drivers/raw/ifpga_rawdev/base/ifpga_port.c         |   21 +
 drivers/raw/ifpga_rawdev/base/opae_at24_eeprom.c   |   89 +
 drivers/raw/ifpga_rawdev/base/opae_at24_eeprom.h   |   14 +
 drivers/raw/ifpga_rawdev/base/opae_hw_api.c        |  189 +-
 drivers/raw/ifpga_rawdev/base/opae_hw_api.h        |   46 +-
 drivers/raw/ifpga_rawdev/base/opae_i2c.c           |  490 +++++
 drivers/raw/ifpga_rawdev/base/opae_i2c.h           |  127 ++
 drivers/raw/ifpga_rawdev/base/opae_intel_max10.c   |  106 +
 drivers/raw/ifpga_rawdev/base/opae_intel_max10.h   |   36 +
 drivers/raw/ifpga_rawdev/base/opae_mdio.c          |  542 +++++
 drivers/raw/ifpga_rawdev/base/opae_mdio.h          |   90 +
 drivers/raw/ifpga_rawdev/base/opae_osdep.h         |   11 +-
 drivers/raw/ifpga_rawdev/base/opae_phy_group.c     |   88 +
 drivers/raw/ifpga_rawdev/base/opae_phy_group.h     |   53 +
 drivers/raw/ifpga_rawdev/base/opae_spi.c           |  260 +++
 drivers/raw/ifpga_rawdev/base/opae_spi.h           |  120 ++
 .../raw/ifpga_rawdev/base/opae_spi_transaction.c   |  438 ++++
 .../ifpga_rawdev/base/osdep_raw/osdep_generic.h    |    1 +
 .../ifpga_rawdev/base/osdep_rte/osdep_generic.h    |   10 +
 drivers/raw/ifpga_rawdev/ifpga_rawdev.c            |  146 +-
 drivers/raw/ifpga_rawdev/ifpga_rawdev_api.h        |   71 +
 mk/rte.app.mk                                      |    1 +
 usertools/dpdk-devbind.py                          |    4 +-
 53 files changed, 10348 insertions(+), 319 deletions(-)
 create mode 100644 doc/guides/nics/features/ipn3ke.ini
 create mode 100644 doc/guides/nics/ipn3ke.rst
 create mode 100644 drivers/net/ipn3ke/Makefile
 create mode 100644 drivers/net/ipn3ke/ipn3ke_ethdev.c
 create mode 100644 drivers/net/ipn3ke/ipn3ke_ethdev.h
 create mode 100644 drivers/net/ipn3ke/ipn3ke_flow.c
 create mode 100644 drivers/net/ipn3ke/ipn3ke_flow.h
 create mode 100644 drivers/net/ipn3ke/ipn3ke_logs.h
 create mode 100644 drivers/net/ipn3ke/ipn3ke_representor.c
 create mode 100644 drivers/net/ipn3ke/ipn3ke_tm.c
 create mode 100644 drivers/net/ipn3ke/ipn3ke_tm.h
 create mode 100644 drivers/net/ipn3ke/meson.build
 create mode 100644 drivers/net/ipn3ke/rte_pmd_ipn3ke_version.map
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_at24_eeprom.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_at24_eeprom.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_i2c.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_i2c.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_intel_max10.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_intel_max10.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_mdio.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_mdio.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_phy_group.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_phy_group.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_spi.c
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_spi.h
 create mode 100644 drivers/raw/ifpga_rawdev/base/opae_spi_transaction.c
 create mode 100644 drivers/raw/ifpga_rawdev/ifpga_rawdev_api.h