2020-07-18 13:33:30

by Suraj Upadhyay

[permalink] [raw]
Subject: [PATCH] staging: media: ipu3: Replace depracated MSI API.

Replace depracated psi_enable_msi with pci_alloc_irq_vectors.
And as a result modify how the returned value is handled.

Signed-off-by: Suraj Upadhyay <[email protected]>
---
drivers/staging/media/ipu3/ipu3.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/media/ipu3/ipu3.c b/drivers/staging/media/ipu3/ipu3.c
index ee1bba6bdcac..54690e7442be 100644
--- a/drivers/staging/media/ipu3/ipu3.c
+++ b/drivers/staging/media/ipu3/ipu3.c
@@ -602,9 +602,9 @@ static irqreturn_t imgu_isr(int irq, void *imgu_ptr)
static int imgu_pci_config_setup(struct pci_dev *dev)
{
u16 pci_command;
- int r = pci_enable_msi(dev);
+ int r = pci_alloc_irq_vectors(dev, 1, 1, PCI_IRQ_MSI);

- if (r) {
+ if (r < 0) {
dev_err(&dev->dev, "failed to enable MSI (%d)\n", r);
return r;
}
--
2.17.1


Attachments:
(No filename) (852.00 B)
signature.asc (849.00 B)
Download all attachments

2020-07-20 02:16:07

by Bingbu Cao

[permalink] [raw]
Subject: Re: [PATCH] staging: media: ipu3: Replace depracated MSI API.

Upadhyay,

Thanks for your patch. Please correct the typo in message.

On 7/18/20 9:32 PM, Suraj Upadhyay wrote:
> Replace depracated psi_enable_msi with pci_alloc_irq_vectors.
> And as a result modify how the returned value is handled.
>
> Signed-off-by: Suraj Upadhyay <[email protected]>
> ---
> drivers/staging/media/ipu3/ipu3.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/ipu3/ipu3.c b/drivers/staging/media/ipu3/ipu3.c
> index ee1bba6bdcac..54690e7442be 100644
> --- a/drivers/staging/media/ipu3/ipu3.c
> +++ b/drivers/staging/media/ipu3/ipu3.c
> @@ -602,9 +602,9 @@ static irqreturn_t imgu_isr(int irq, void *imgu_ptr)
> static int imgu_pci_config_setup(struct pci_dev *dev)
> {
> u16 pci_command;
> - int r = pci_enable_msi(dev);
> + int r = pci_alloc_irq_vectors(dev, 1, 1, PCI_IRQ_MSI);
>
> - if (r) {
> + if (r < 0) {
> dev_err(&dev->dev, "failed to enable MSI (%d)\n", r);
> return r;
> }
>

--
Best regards,
Bingbu Cao

2020-08-13 21:41:53

by Sakari Ailus

[permalink] [raw]
Subject: Re: [PATCH] staging: media: ipu3: Replace depracated MSI API.

Hi Suraj,

Thanks for the patch.

On Sat, Jul 18, 2020 at 07:02:38PM +0530, Suraj Upadhyay wrote:
> Replace depracated psi_enable_msi with pci_alloc_irq_vectors.
> And as a result modify how the returned value is handled.
>
> Signed-off-by: Suraj Upadhyay <[email protected]>
> ---
> drivers/staging/media/ipu3/ipu3.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/media/ipu3/ipu3.c b/drivers/staging/media/ipu3/ipu3.c
> index ee1bba6bdcac..54690e7442be 100644
> --- a/drivers/staging/media/ipu3/ipu3.c
> +++ b/drivers/staging/media/ipu3/ipu3.c
> @@ -602,9 +602,9 @@ static irqreturn_t imgu_isr(int irq, void *imgu_ptr)
> static int imgu_pci_config_setup(struct pci_dev *dev)
> {
> u16 pci_command;
> - int r = pci_enable_msi(dev);
> + int r = pci_alloc_irq_vectors(dev, 1, 1, PCI_IRQ_MSI);
>
> - if (r) {
> + if (r < 0) {
> dev_err(&dev->dev, "failed to enable MSI (%d)\n", r);
> return r;
> }

I believe fixing this requires also releasing it, i.e. a call to
pci_free_irq_vectors(). This seems to have been missing.

--
Kind regards,

Sakari Ailus