libqos: add VIRTIO PCI 1.0 support
Implement the VIRTIO 1.0 virtio-pci interface. The main change here is that the register layout is no longer a fixed layout in BAR 0. Instead we have to iterate of PCI Capabilities to find descriptions of where various registers are located. The vring registers are also more fine-grained, allowing for more flexible vring layouts, but we don't take advantage of that. Signed-off-by:Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by:
Sergio Lopez <slp@redhat.com> Message-Id: <20191023100425.12168-17-stefanha@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Acked-by:
Thomas Huth <thuth@redhat.com>
Showing
- tests/Makefile.include 1 addition, 0 deletionstests/Makefile.include
- tests/libqos/virtio-pci-modern.c 443 additions, 0 deletionstests/libqos/virtio-pci-modern.c
- tests/libqos/virtio-pci-modern.h 17 additions, 0 deletionstests/libqos/virtio-pci-modern.h
- tests/libqos/virtio-pci.c 5 additions, 1 deletiontests/libqos/virtio-pci.c
- tests/libqos/virtio-pci.h 10 additions, 0 deletionstests/libqos/virtio-pci.h
tests/libqos/virtio-pci-modern.c
0 → 100644
tests/libqos/virtio-pci-modern.h
0 → 100644
Please register or sign in to comment