This series adds PCI IDs and QEMU models for the Cnuas virtual network
adapter and CnuasGPU AI/ML accelerator.

CnuasNIC provides guest DMA and Linux SOCK_SEQPACKET transport. CnuasGPU
provides MMIO control, device memory, and optional link transport. Both
models include reset and migration state, MSI and INTx support,
documentation, and functional qtests.

Changes since v2:

- use 1b36:0017 (CnuasNIC) and 1b36:0018 (CnuasGPU) to avoid PCI ID
  conflicts
- add PCI-ID documentation links along with their target document additions

The complete QEMU device implementation is included in this patch series.

Regards,

Weqaar Janjua
Packet Five Networks Ltd.
Dublin, Ireland
https://www.packetfive.com

Weqaar Janjua (6):
  pci: Add device ID for CnuasNIC
  hw/net: Add Cnuas virtual network adapter
  tests/qtest: Add Cnuas virtual network adapter tests
  pci: Add device ID for CnuasGPU
  hw/misc: Add CnuasGPU virtual accelerator
  tests/qtest: Add CnuasGPU tests

 MAINTAINERS                   |  10 +
 docs/specs/cnuas-vnic.rst     |  78 +++++
 docs/specs/cnuasgpu.rst       |  91 ++++++
 docs/specs/index.rst          |   2 +
 docs/specs/pci-ids.rst        |   4 +
 hw/misc/Kconfig               |   5 +
 hw/misc/cnuasgpu.c            | 557 ++++++++++++++++++++++++++++++++++
 hw/misc/meson.build           |   1 +
 hw/net/Kconfig                |   5 +
 hw/net/cnuas_vnic.c           | 508 +++++++++++++++++++++++++++++++
 hw/net/meson.build            |   1 +
 include/hw/pci/pci.h          |   2 +
 tests/qtest/cnuas-vnic-test.c | 233 ++++++++++++++
 tests/qtest/cnuasgpu-test.c   | 274 +++++++++++++++++
 tests/qtest/meson.build       |   2 +
 15 files changed, 1773 insertions(+)
 create mode 100644 docs/specs/cnuas-vnic.rst
 create mode 100644 docs/specs/cnuasgpu.rst
 create mode 100644 hw/misc/cnuasgpu.c
 create mode 100644 hw/net/cnuas_vnic.c
 create mode 100644 tests/qtest/cnuas-vnic-test.c
 create mode 100644 tests/qtest/cnuasgpu-test.c

--
2.43.0

Reply via email to