search for: ifcvf_intr_handl

Displaying 12 results from an estimated 12 matches for "ifcvf_intr_handl".

Did you mean: ifcvf_intr_handler
2020 May 13
0
[PATCH V2] ifcvf: move IRQ request/free to status change handlers
...le changed, 73 insertions(+), 47 deletions(-) > > diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c > index abf6a061..d529ed6 100644 > --- a/drivers/vdpa/ifcvf/ifcvf_main.c > +++ b/drivers/vdpa/ifcvf/ifcvf_main.c > @@ -28,6 +28,60 @@ static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > return IRQ_HANDLED; > } > > +static void ifcvf_free_irq_vectors(void *data) > +{ > + pci_free_irq_vectors(data); > +} > + > +static void ifcvf_free_irq(struct ifcvf_adapter *adapter, int queues) > +{ > + struct pci_dev *pdev = adapter...
2020 May 11
0
[PATCH] ifcvf: move IRQ request/free to status change handlers
...le changed, 73 insertions(+), 46 deletions(-) > > diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c > index abf6a061..4d58bf2 100644 > --- a/drivers/vdpa/ifcvf/ifcvf_main.c > +++ b/drivers/vdpa/ifcvf/ifcvf_main.c > @@ -28,6 +28,60 @@ static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > return IRQ_HANDLED; > } > > +static void ifcvf_free_irq_vectors(void *data) > +{ > + pci_free_irq_vectors(data); > +} > + > +static void ifcvf_free_irq(struct ifcvf_adapter *adapter, int queues) > +{ > + struct pci_dev *pdev = adapter...
2020 May 12
0
[PATCH] ifcvf: move IRQ request/free to status change handlers
...;>> diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c >>> b/drivers/vdpa/ifcvf/ifcvf_main.c >>> index abf6a061..4d58bf2 100644 >>> --- a/drivers/vdpa/ifcvf/ifcvf_main.c >>> +++ b/drivers/vdpa/ifcvf/ifcvf_main.c >>> @@ -28,6 +28,60 @@ static irqreturn_t ifcvf_intr_handler(int irq, >>> void *arg) >>> ????? return IRQ_HANDLED; >>> ? } >>> +static void ifcvf_free_irq_vectors(void *data) >>> +{ >>> +??? pci_free_irq_vectors(data); >>> +} >>> + >>> +static void ifcvf_free_irq(struct ifcvf...
2020 May 12
1
[PATCH] ifcvf: move IRQ request/free to status change handlers
...;>> diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c >>> b/drivers/vdpa/ifcvf/ifcvf_main.c >>> index abf6a061..4d58bf2 100644 >>> --- a/drivers/vdpa/ifcvf/ifcvf_main.c >>> +++ b/drivers/vdpa/ifcvf/ifcvf_main.c >>> @@ -28,6 +28,60 @@ static irqreturn_t ifcvf_intr_handler(int irq, >>> void *arg) >>> ????? return IRQ_HANDLED; >>> ? } >>> ? +static void ifcvf_free_irq_vectors(void *data) >>> +{ >>> +??? pci_free_irq_vectors(data); >>> +} >>> + >>> +static void ifcvf_free_irq(struct ifc...
2020 Apr 26
1
[PATCH 2/2] vdpa: implement config interrupt in IFCVF
....callback) > + return vf->config_cb.callback(vf->config_cb.private); > + > + return IRQ_HANDLED; So it looks to me the current support of VIRTIO_NET_F_STATUS is broken without this patch. We probably need to patch to disable it. Thanks > +} > + > static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > { > struct vring_info *vring = arg; > @@ -256,7 +266,10 @@ static void ifcvf_vdpa_set_config(struct vdpa_device *vdpa_dev, > static void ifcvf_vdpa_set_config_cb(struct vdpa_device *vdpa_dev, > struct vdpa_callback *cb) > { > - /* We...
2019 Oct 21
0
[RFC 2/2] vhost: IFC VF vdpa layer
...+ >>> +#include "ifcvf_base.h" >>> + >>> +#define VERSION_STRING??? "0.1" >>> +#define DRIVER_AUTHOR??? "Intel Corporation" >>> +#define IFCVF_DRIVER_NAME??? "ifcvf" >>> + >>> +static irqreturn_t ifcvf_intr_handler(int irq, void *arg) >>> +{ >>> +??? struct vring_info *vring = arg; >>> + >>> +??? if (vring->cb.callback) >>> +??????? return vring->cb.callback(vring->cb.private); >>> + >>> +??? return IRQ_HANDLED; >>> +} >>...
2020 Apr 02
0
[PATCH v2 -next] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm'
...; ifc_iowrite16(IFCVF_MSI_CONFIG_OFF, &cfg->msix_config); diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c index 8d54dc5b08d2..28d9e5de5675 100644 --- a/drivers/vdpa/ifcvf/ifcvf_main.c +++ b/drivers/vdpa/ifcvf/ifcvf_main.c @@ -31,11 +31,9 @@ static irqreturn_t ifcvf_intr_handler(int irq, void *arg) static int ifcvf_start_datapath(void *private) { struct ifcvf_hw *vf = ifcvf_private_to_vf(private); - struct ifcvf_adapter *ifcvf; u8 status; int ret; - ifcvf = vf_to_adapter(vf); vf->nr_vring = IFCVF_MAX_QUEUE_PAIRS * 2; ret = ifcvf_start_hw(vf); if (ret &...
2020 Jul 13
0
[PATCH 6/7] ifcvf: replace irq_request/free with helpers in vDPA core.
...vf_request_irq(struct ifcvf_adapter *adapter) > pci_name(pdev), i); > vector = i + IFCVF_MSI_QUEUE_OFF; > irq = pci_irq_vector(pdev, vector); > - ret = devm_request_irq(&pdev->dev, irq, > + ret = vdpa_alloc_vq_irq(&pdev->dev, vdpa, irq, > ifcvf_intr_handler, 0, > vf->vring[i].msix_name, > - &vf->vring[i]); > + &vf->vring[i], i); > if (ret) { > - IFCVF_ERR(pdev, > - "Failed to request irq for vq %d\n", i); > ifcvf_free_irq(adapter, i); > > r...
2020 Jul 17
0
[PATCH V2 5/6] ifcvf: replace irq_request/free with vDPA helpers
...vf_request_irq(struct ifcvf_adapter *adapter) > pci_name(pdev), i); > vector = i + IFCVF_MSI_QUEUE_OFF; > irq = pci_irq_vector(pdev, vector); > - ret = devm_request_irq(&pdev->dev, irq, > + ret = vdpa_alloc_vq_irq(&pdev->dev, vdpa, irq, > ifcvf_intr_handler, 0, > vf->vring[i].msix_name, > - &vf->vring[i]); > + &vf->vring[i], i); > if (ret) { > - IFCVF_ERR(pdev, > - "Failed to request irq for vq %d\n", i); > ifcvf_free_irq(adapter, i); > > r...
2020 Apr 26
0
[PATCH V3 2/2] vdpa: implement config interrupt in IFCVF
...> +static irqreturn_t ifcvf_config_changed(int irq, void *arg) > +{ > + struct ifcvf_hw *vf = arg; > + > + if (vf->config_cb.callback) > + return vf->config_cb.callback(vf->config_cb.private); > + > + return IRQ_HANDLED; > +} > + > static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > { > struct vring_info *vring = arg; > @@ -256,7 +266,10 @@ static void ifcvf_vdpa_set_config(struct vdpa_device *vdpa_dev, > static void ifcvf_vdpa_set_config_cb(struct vdpa_device *vdpa_dev, > struct vdpa_callback *cb) > { > - /* We...
2019 Oct 16
0
[RFC 2/2] vhost: IFC VF vdpa layer
...ude <linux/pci.h> > +#include <linux/sysfs.h> > + > +#include "ifcvf_base.h" > + > +#define VERSION_STRING "0.1" > +#define DRIVER_AUTHOR "Intel Corporation" > +#define IFCVF_DRIVER_NAME "ifcvf" > + > +static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > +{ > + struct vring_info *vring = arg; > + > + if (vring->cb.callback) > + return vring->cb.callback(vring->cb.private); > + > + return IRQ_HANDLED; > +} > + > +static u64 ifcvf_mdev_get_features(struct mdev_device *mdev) > +{ >...
2019 Nov 06
0
[PATCH 2/2] IFC VDPA layer
...VF_DRIVER_NAME "ifcvf" > + > +static struct ifcvf_hw *mdev_to_vf(struct mdev_device *mdev) > +{ > + struct ifcvf_asapter *adapter = mdev_get_drvdata(mdev); > + struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter); > + > + return vf; > +} > + > +static irqreturn_t ifcvf_intr_handler(int irq, void *arg) > +{ > + struct vring_info *vring = arg; > + > + if (vring->cb.callback) > + return vring->cb.callback(vring->cb.private); > + > + return IRQ_HANDLED; > +} > + > +static u64 ifcvf_mdev_get_features(struct mdev_device *mdev) > +{ >...