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. v5: reorder commit sequence and drop the stats feature. Junfeng Guo (8): net/gve/base: introduce GVE PMD base code net/gve/base: add 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 dev info get and dev configure net/gve: add support for queue operations net/gve: add support for Rx/Tx MAINTAINERS | 6 + doc/guides/nics/features/gve.ini | 16 + doc/guides/nics/gve.rst | 71 ++ 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 | 925 +++++++++++++++++++++++++ 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 | 704 +++++++++++++++++++ drivers/net/gve/gve_ethdev.h | 295 ++++++++ drivers/net/gve/gve_logs.h | 14 + drivers/net/gve/gve_rx.c | 352 ++++++++++ drivers/net/gve/gve_tx.c | 669 ++++++++++++++++++ drivers/net/gve/meson.build | 16 + drivers/net/gve/version.map | 3 + drivers/net/meson.build | 1 + 20 files changed, 4103 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 -- 2.34.1