A lot of our vhost-user stubs are large chunks of boilerplate that do
(mostly) the same thing. This series continues the cleanups by
splitting the vhost-user-base and vhost-user-generic implementations.
After adding a new vq_size property the rng, gpio and i2c vhost-user
devices become simple specialisations of the common base defining the
ID, number of queues and potentially the config handling.
I've also added Manos' vhost-user-sound while I was at it.
Changes
-------
v6
- re-base to current master
- make vhost-user-device abstract
- mention abstractness in docs
v5
- addressing comments and tags
- improved the docs
v4
- dropped the F_TRANSPORT work for another series
- added vhost-user-sound
Alex Bennée (5):
virtio: split into vhost-user-base and vhost-user-device
hw/virtio: derive vhost-user-rng from vhost-user-base
hw/virtio: derive vhost-user-gpio from vhost-user-base
hw/virtio: derive vhost-user-i2c from vhost-user-base
docs/system: add a basic enumeration of vhost-user devices
Manos Pitsidianakis (1):
hw/virtio: add vhost-user-snd and virtio-snd-pci devices
docs/system/devices/vhost-user-rng.rst | 2 +
docs/system/devices/vhost-user.rst | 65 ++-
...{vhost-user-device.h => vhost-user-base.h} | 21 +-
include/hw/virtio/vhost-user-gpio.h | 23 +-
include/hw/virtio/vhost-user-i2c.h | 14 +-
include/hw/virtio/vhost-user-rng.h | 11 +-
include/hw/virtio/vhost-user-snd.h | 26 ++
hw/virtio/vhost-user-base.c | 345 +++++++++++++++
hw/virtio/vhost-user-device-pci.c | 10 +-
hw/virtio/vhost-user-device.c | 337 +--------------
hw/virtio/vhost-user-gpio.c | 406 +-----------------
hw/virtio/vhost-user-i2c.c | 272 +-----------
hw/virtio/vhost-user-rng.c | 278 +-----------
hw/virtio/vhost-user-snd-pci.c | 75 ++++
hw/virtio/vhost-user-snd.c | 67 +++
hw/virtio/Kconfig | 5 +
hw/virtio/meson.build | 23 +-
17 files changed, 690 insertions(+), 1290 deletions(-)
rename include/hw/virtio/{vhost-user-device.h => vhost-user-base.h} (71%)
create mode 100644 include/hw/virtio/vhost-user-snd.h
create mode 100644 hw/virtio/vhost-user-base.c
create mode 100644 hw/virtio/vhost-user-snd-pci.c
create mode 100644 hw/virtio/vhost-user-snd.c