search for: vp_modern_config_vector

Displaying 7 results from an estimated 7 matches for "vp_modern_config_vector".

2023 Jun 30
2
[PATCH] vp_vdpa: synchronize irq when free irq
...[i].irq); devm_free_irq(&pdev->dev, vp_vdpa->vring[i].irq, &vp_vdpa->vring[i]); vp_vdpa->vring[i].irq = VIRTIO_MSI_NO_VECTOR; @@ -124,6 +125,7 @@ static void vp_vdpa_free_irq(struct vp_vdpa *vp_vdpa) if (vp_vdpa->config_irq != VIRTIO_MSI_NO_VECTOR) { vp_modern_config_vector(mdev, VIRTIO_MSI_NO_VECTOR); + synchronize_irq(vp_vdpa->config_irq); devm_free_irq(&pdev->dev, vp_vdpa->config_irq, vp_vdpa); vp_vdpa->config_irq = VIRTIO_MSI_NO_VECTOR; } -- 2.39.3
2023 Jun 30
1
[PATCH] vp_vdpa: synchronize irq when free irq
...mp;pdev->dev, vp_vdpa->vring[i].irq, > &vp_vdpa->vring[i]); > vp_vdpa->vring[i].irq = VIRTIO_MSI_NO_VECTOR; > @@ -124,6 +125,7 @@ static void vp_vdpa_free_irq(struct vp_vdpa *vp_vdpa) > > if (vp_vdpa->config_irq != VIRTIO_MSI_NO_VECTOR) { > vp_modern_config_vector(mdev, VIRTIO_MSI_NO_VECTOR); > + synchronize_irq(vp_vdpa->config_irq); > devm_free_irq(&pdev->dev, vp_vdpa->config_irq, vp_vdpa); > vp_vdpa->config_irq = VIRTIO_MSI_NO_VECTOR; Weird, doesn't free_irq synchronize automatically? > } > -- > 2.39.3
2023 Jun 30
1
[PATCH] vp_vdpa: synchronize irq when free irq
...&vp_vdpa->vring[i]); > vp_vdpa->vring[i].irq = VIRTIO_MSI_NO_VECTOR; > @@ -124,6 +125,7 @@ static void vp_vdpa_free_irq(struct vp_vdpa *vp_vdpa) > > if (vp_vdpa->config_irq != VIRTIO_MSI_NO_VECTOR) { > vp_modern_config_vector(mdev, VIRTIO_MSI_NO_VECTOR); > + synchronize_irq(vp_vdpa->config_irq); > devm_free_irq(&pdev->dev, vp_vdpa->config_irq, vp_vdpa); > vp_vdpa->config_irq = VIRTIO_MSI_NO_VECTOR; > } > -- > 2.39.3 >
2023 Mar 23
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...ci_modern.c b/drivers/virtio/virtio_pci_modern.c > index 9e496e288cfa..9cc56f463dba 100644 > --- a/drivers/virtio/virtio_pci_modern.c > +++ b/drivers/virtio/virtio_pci_modern.c > @@ -288,6 +288,15 @@ static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector) > return vp_modern_config_vector(&vp_dev->mdev, vector); > } > > +static bool vp_notify_with_data(struct virtqueue *vq) > +{ > + u32 data = vring_notification_data(vq); > + > + iowrite32(data, (void __iomem *)vq->priv); > + > + return true; > +} > + > static struct virtqueue *setup_v...
2023 Mar 23
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...> > index 9e496e288cfa..9cc56f463dba 100644 > > > --- a/drivers/virtio/virtio_pci_modern.c > > > +++ b/drivers/virtio/virtio_pci_modern.c > > > @@ -288,6 +288,15 @@ static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector) > > > return vp_modern_config_vector(&vp_dev->mdev, vector); > > > } > > > > > > +static bool vp_notify_with_data(struct virtqueue *vq) > > > +{ > > > + u32 data = vring_notification_data(vq); > > > + > > > + iowrite32(data, (void __iomem *)vq->priv); &g...
2023 Mar 23
0
[PATCH v5] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...ci_modern.c b/drivers/virtio/virtio_pci_modern.c > index 9e496e288cfa..3bfc368b279e 100644 > --- a/drivers/virtio/virtio_pci_modern.c > +++ b/drivers/virtio/virtio_pci_modern.c > @@ -288,6 +288,15 @@ static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector) > return vp_modern_config_vector(&vp_dev->mdev, vector); > } > > +static bool vp_notify_with_data(struct virtqueue *vq) > +{ > + u32 data = vring_notification_data(vq); > + > + iowrite32(data, (void __iomem *)vq->priv); > + > + return true; > +} > + > static struct virtqueue *setup_v...
2023 Mar 22
1
[PATCH v4] virtio: add VIRTIO_F_NOTIFICATION_DATA feature support
...ci_modern.c b/drivers/virtio/virtio_pci_modern.c > index 9e496e288cfa..9cc56f463dba 100644 > --- a/drivers/virtio/virtio_pci_modern.c > +++ b/drivers/virtio/virtio_pci_modern.c > @@ -288,6 +288,15 @@ static u16 vp_config_vector(struct virtio_pci_device *vp_dev, u16 vector) > return vp_modern_config_vector(&vp_dev->mdev, vector); > } > > +static bool vp_notify_with_data(struct virtqueue *vq) > +{ > + u32 data = vring_notification_data(vq); > + > + iowrite32(data, (void __iomem *)vq->priv); > + > + return true; > +} > + > static struct virtqueue *setup...