mbox series

[v4,0/9] introduce GVE PMD

Message ID 20220927073255.1803892-1-junfeng.guo@intel.com (mailing list archive)
Headers
Series introduce GVE PMD |

Message

Junfeng Guo Sept. 27, 2022, 7:32 a.m. UTC
  Introduce a new PMD for Google Virtual Ethernet (GVE).

This patch set requires an exception for MIT license for GVE base code.
And the base code includes the following files:
 - gve_adminq.c
 - gve_adminq.h
 - gve_desc.h
 - gve_desc_dqo.h
 - gve_register.h

It's based on GVE kernel driver v1.3.0 and the original code is in
https://github.com/GoogleCloudPlatform/compute-virtual-ethernet-linux/tree/v1.3.0

v2:
fix some CI check error.

v3:
refactor some code and fix some build error.

v4:
move the Google base code files into DPDK base folder.

Junfeng Guo (9):
  net/gve/base: introduce GVE PMD base code
  net/gve/base: add logs and OS specific implementation
  net/gve: add support for device initialization
  net/gve: add support for link update
  net/gve: add support for MTU setting
  net/gve: add support for queue operations
  net/gve: add support for Rx/Tx
  net/gve: add support for dev info get and dev configure
  net/gve: add support for stats

 MAINTAINERS                            |   6 +
 doc/guides/nics/features/gve.ini       |  18 +
 doc/guides/nics/gve.rst                |  69 ++
 doc/guides/nics/index.rst              |   1 +
 doc/guides/rel_notes/release_22_11.rst |   5 +
 drivers/net/gve/base/gve.h             |  58 ++
 drivers/net/gve/base/gve_adminq.c      | 924 +++++++++++++++++++++++++
 drivers/net/gve/base/gve_adminq.h      | 383 ++++++++++
 drivers/net/gve/base/gve_desc.h        | 139 ++++
 drivers/net/gve/base/gve_desc_dqo.h    | 256 +++++++
 drivers/net/gve/base/gve_osdep.h       | 159 +++++
 drivers/net/gve/base/gve_register.h    |  30 +
 drivers/net/gve/gve_ethdev.c           | 775 +++++++++++++++++++++
 drivers/net/gve/gve_ethdev.h           | 300 ++++++++
 drivers/net/gve/gve_logs.h             |  14 +
 drivers/net/gve/gve_rx.c               | 366 ++++++++++
 drivers/net/gve/gve_tx.c               | 682 ++++++++++++++++++
 drivers/net/gve/meson.build            |  16 +
 drivers/net/gve/version.map            |   3 +
 drivers/net/meson.build                |   1 +
 20 files changed, 4205 insertions(+)
 create mode 100644 doc/guides/nics/features/gve.ini
 create mode 100644 doc/guides/nics/gve.rst
 create mode 100644 drivers/net/gve/base/gve.h
 create mode 100644 drivers/net/gve/base/gve_adminq.c
 create mode 100644 drivers/net/gve/base/gve_adminq.h
 create mode 100644 drivers/net/gve/base/gve_desc.h
 create mode 100644 drivers/net/gve/base/gve_desc_dqo.h
 create mode 100644 drivers/net/gve/base/gve_osdep.h
 create mode 100644 drivers/net/gve/base/gve_register.h
 create mode 100644 drivers/net/gve/gve_ethdev.c
 create mode 100644 drivers/net/gve/gve_ethdev.h
 create mode 100644 drivers/net/gve/gve_logs.h
 create mode 100644 drivers/net/gve/gve_rx.c
 create mode 100644 drivers/net/gve/gve_tx.c
 create mode 100644 drivers/net/gve/meson.build
 create mode 100644 drivers/net/gve/version.map