Currently we have 2 types of vhost backends in QEMU: vhost kernel and vhost-user. The above patch provides a generic device for vDPA purpose, this vDPA device exposes to user space a non-vendor-specific configuration interface for setting up a vhost HW accelerator, this patch set introduces a third vhost backend called vhost-vdpa based on the vDPA interface. Vhost-vdpa usage: qemu-system-x86_64 -cpu host -enable-kvm \ ...... -netdev type=vhost-vdpa,vhostdev=/dev/vhost-vdpa-id,id=vhost-vdpa0 \ -device virtio-net-pci,netdev=vhost-vdpa0,page-per-vq=on \ Signed-off-by: Lingshan zhu <lingshan.zhu@intel.com> Signed-off-by: Tiwei Bie <tiwei.bie@intel.com> Signed-off-by: Cindy Lu <lulu@redhat.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Message-Id: <20200701145538.22333-14-lulu@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com>
49 lines
2 KiB
Makefile
49 lines
2 KiB
Makefile
ifeq ($(CONFIG_VIRTIO),y)
|
|
common-obj-y += virtio-bus.o
|
|
obj-y += virtio.o
|
|
|
|
obj-$(CONFIG_VHOST) += vhost.o vhost-backend.o
|
|
common-obj-$(call lnot,$(CONFIG_VHOST)) += vhost-stub.o
|
|
obj-$(CONFIG_VHOST_USER) += vhost-user.o
|
|
obj-$(CONFIG_VHOST_VDPA) += vhost-vdpa.o
|
|
|
|
common-obj-$(CONFIG_VIRTIO_RNG) += virtio-rng.o
|
|
common-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
|
|
common-obj-$(CONFIG_VIRTIO_MMIO) += virtio-mmio.o
|
|
obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon.o
|
|
obj-$(CONFIG_VIRTIO_CRYPTO) += virtio-crypto.o
|
|
obj-$(CONFIG_VHOST_USER_FS) += vhost-user-fs.o
|
|
obj-$(call land,$(CONFIG_VIRTIO_CRYPTO),$(CONFIG_VIRTIO_PCI)) += virtio-crypto-pci.o
|
|
obj-$(CONFIG_VIRTIO_PMEM) += virtio-pmem.o
|
|
common-obj-$(call land,$(CONFIG_VIRTIO_PMEM),$(CONFIG_VIRTIO_PCI)) += virtio-pmem-pci.o
|
|
obj-$(call land,$(CONFIG_VHOST_USER_FS),$(CONFIG_VIRTIO_PCI)) += vhost-user-fs-pci.o
|
|
obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu.o
|
|
obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock-common.o vhost-vsock.o
|
|
obj-$(CONFIG_VHOST_USER_VSOCK) += vhost-vsock-common.o vhost-user-vsock.o
|
|
obj-$(CONFIG_VIRTIO_MEM) += virtio-mem.o
|
|
common-obj-$(call land,$(CONFIG_VIRTIO_MEM),$(CONFIG_VIRTIO_PCI)) += virtio-mem-pci.o
|
|
|
|
ifeq ($(CONFIG_VIRTIO_PCI),y)
|
|
obj-$(CONFIG_VHOST_VSOCK) += vhost-vsock-pci.o
|
|
obj-$(CONFIG_VHOST_USER_VSOCK) += vhost-user-vsock-pci.o
|
|
obj-$(CONFIG_VHOST_USER_BLK) += vhost-user-blk-pci.o
|
|
obj-$(CONFIG_VHOST_USER_INPUT) += vhost-user-input-pci.o
|
|
obj-$(CONFIG_VHOST_USER_SCSI) += vhost-user-scsi-pci.o
|
|
obj-$(CONFIG_VHOST_SCSI) += vhost-scsi-pci.o
|
|
obj-$(CONFIG_VIRTIO_INPUT_HOST) += virtio-input-host-pci.o
|
|
obj-$(CONFIG_VIRTIO_INPUT) += virtio-input-pci.o
|
|
obj-$(CONFIG_VIRTIO_RNG) += virtio-rng-pci.o
|
|
obj-$(CONFIG_VIRTIO_BALLOON) += virtio-balloon-pci.o
|
|
obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu-pci.o
|
|
obj-$(CONFIG_VIRTIO_9P) += virtio-9p-pci.o
|
|
obj-$(CONFIG_VIRTIO_SCSI) += virtio-scsi-pci.o
|
|
obj-$(CONFIG_VIRTIO_BLK) += virtio-blk-pci.o
|
|
obj-$(CONFIG_VIRTIO_NET) += virtio-net-pci.o
|
|
obj-$(CONFIG_VIRTIO_SERIAL) += virtio-serial-pci.o
|
|
endif
|
|
else
|
|
common-obj-y += vhost-stub.o
|
|
endif
|
|
|
|
common-obj-$(CONFIG_ALL) += vhost-stub.o
|