Commit 1a5c85f1 authored by Jason Wang's avatar Jason Wang Committed by Michael S. Tsirkin
Browse files

virtio-pci-modern: introduce helper to set config vector



This patch introduces vp_modern_config_vector() for setting config
vector.

Signed-off-by: default avatarJason Wang <jasowang@redhat.com>
Link: https://lore.kernel.org/r/20210104065503.199631-6-jasowang@redhat.com


Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 32490370
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -315,9 +315,16 @@ static void vp_reset(struct virtio_device *vdev)
	vp_synchronize_vectors(vdev);
}

static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector)
/*
 * vp_modern_config_vector - set the vector for config interrupt
 * @mdev: the modern virtio-pci device
 * @vector: the config vector
 *
 * Returns the config vector read from the device
 */
static u16 vp_modern_config_vector(struct virtio_pci_modern_device *mdev,
				   u16 vector)
{
	struct virtio_pci_modern_device *mdev = &vp_dev->mdev;
	struct virtio_pci_common_cfg __iomem *cfg = mdev->common;

	/* Setup the vector used for configuration events */
@@ -327,6 +334,11 @@ static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector)
	return vp_ioread16(&cfg->msix_config);
}

static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector)
{
	return vp_modern_config_vector(&vp_dev->mdev, vector);
}

static struct virtqueue *setup_vq(struct virtio_pci_device *vp_dev,
				  struct virtio_pci_vq_info *info,
				  unsigned index,