drivers/accel/amdxdna/aie2_pci.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)
The device is managed so pci_free_irq_vectors() is called automatically
no need to do it manually.
Signed-off-by: Salah Triki <salah.triki@gmail.com>
---
drivers/accel/amdxdna/aie2_pci.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers/accel/amdxdna/aie2_pci.c
index c6cf7068d23c..3474a8d4e560 100644
--- a/drivers/accel/amdxdna/aie2_pci.c
+++ b/drivers/accel/amdxdna/aie2_pci.c
@@ -520,14 +520,14 @@ static int aie2_init(struct amdxdna_dev *xdna)
if (!ndev->psp_hdl) {
XDNA_ERR(xdna, "failed to create psp");
ret = -ENOMEM;
- goto free_irq;
+ goto release_fw;
}
xdna->dev_handle = ndev;
ret = aie2_hw_start(xdna);
if (ret) {
XDNA_ERR(xdna, "start npu failed, ret %d", ret);
- goto free_irq;
+ goto release_fw;
}
ret = aie2_mgmt_fw_query(ndev);
@@ -578,8 +578,6 @@ static int aie2_init(struct amdxdna_dev *xdna)
aie2_error_async_events_free(ndev);
stop_hw:
aie2_hw_stop(xdna);
-free_irq:
- pci_free_irq_vectors(pdev);
release_fw:
release_firmware(fw);
@@ -588,12 +586,10 @@ static int aie2_init(struct amdxdna_dev *xdna)
static void aie2_fini(struct amdxdna_dev *xdna)
{
- struct pci_dev *pdev = to_pci_dev(xdna->ddev.dev);
struct amdxdna_dev_hdl *ndev = xdna->dev_handle;
aie2_hw_stop(xdna);
aie2_error_async_events_free(ndev);
- pci_free_irq_vectors(pdev);
}
static int aie2_get_aie_status(struct amdxdna_client *client,
--
2.43.0
Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com> On 7/19/2025 8:33 AM, Salah Triki wrote: > The device is managed so pci_free_irq_vectors() is called automatically > no need to do it manually. > > Signed-off-by: Salah Triki <salah.triki@gmail.com> > --- > drivers/accel/amdxdna/aie2_pci.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers/accel/amdxdna/aie2_pci.c > index c6cf7068d23c..3474a8d4e560 100644 > --- a/drivers/accel/amdxdna/aie2_pci.c > +++ b/drivers/accel/amdxdna/aie2_pci.c > @@ -520,14 +520,14 @@ static int aie2_init(struct amdxdna_dev *xdna) > if (!ndev->psp_hdl) { > XDNA_ERR(xdna, "failed to create psp"); > ret = -ENOMEM; > - goto free_irq; > + goto release_fw; > } > xdna->dev_handle = ndev; > > ret = aie2_hw_start(xdna); > if (ret) { > XDNA_ERR(xdna, "start npu failed, ret %d", ret); > - goto free_irq; > + goto release_fw; > } > > ret = aie2_mgmt_fw_query(ndev); > @@ -578,8 +578,6 @@ static int aie2_init(struct amdxdna_dev *xdna) > aie2_error_async_events_free(ndev); > stop_hw: > aie2_hw_stop(xdna); > -free_irq: > - pci_free_irq_vectors(pdev); > release_fw: > release_firmware(fw); > > @@ -588,12 +586,10 @@ static int aie2_init(struct amdxdna_dev *xdna) > > static void aie2_fini(struct amdxdna_dev *xdna) > { > - struct pci_dev *pdev = to_pci_dev(xdna->ddev.dev); > struct amdxdna_dev_hdl *ndev = xdna->dev_handle; > > aie2_hw_stop(xdna); > aie2_error_async_events_free(ndev); > - pci_free_irq_vectors(pdev); > } > > static int aie2_get_aie_status(struct amdxdna_client *client,
Pushed to drm-misc-next. Thanks. Lizhi On 7/22/25 00:55, Jacek Lawrynowicz wrote: > Reviewed-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com> > > On 7/19/2025 8:33 AM, Salah Triki wrote: >> The device is managed so pci_free_irq_vectors() is called automatically >> no need to do it manually. >> >> Signed-off-by: Salah Triki <salah.triki@gmail.com> >> --- >> drivers/accel/amdxdna/aie2_pci.c | 8 ++------ >> 1 file changed, 2 insertions(+), 6 deletions(-) >> >> diff --git a/drivers/accel/amdxdna/aie2_pci.c b/drivers/accel/amdxdna/aie2_pci.c >> index c6cf7068d23c..3474a8d4e560 100644 >> --- a/drivers/accel/amdxdna/aie2_pci.c >> +++ b/drivers/accel/amdxdna/aie2_pci.c >> @@ -520,14 +520,14 @@ static int aie2_init(struct amdxdna_dev *xdna) >> if (!ndev->psp_hdl) { >> XDNA_ERR(xdna, "failed to create psp"); >> ret = -ENOMEM; >> - goto free_irq; >> + goto release_fw; >> } >> xdna->dev_handle = ndev; >> >> ret = aie2_hw_start(xdna); >> if (ret) { >> XDNA_ERR(xdna, "start npu failed, ret %d", ret); >> - goto free_irq; >> + goto release_fw; >> } >> >> ret = aie2_mgmt_fw_query(ndev); >> @@ -578,8 +578,6 @@ static int aie2_init(struct amdxdna_dev *xdna) >> aie2_error_async_events_free(ndev); >> stop_hw: >> aie2_hw_stop(xdna); >> -free_irq: >> - pci_free_irq_vectors(pdev); >> release_fw: >> release_firmware(fw); >> >> @@ -588,12 +586,10 @@ static int aie2_init(struct amdxdna_dev *xdna) >> >> static void aie2_fini(struct amdxdna_dev *xdna) >> { >> - struct pci_dev *pdev = to_pci_dev(xdna->ddev.dev); >> struct amdxdna_dev_hdl *ndev = xdna->dev_handle; >> >> aie2_hw_stop(xdna); >> aie2_error_async_events_free(ndev); >> - pci_free_irq_vectors(pdev); >> } >> >> static int aie2_get_aie_status(struct amdxdna_client *client,
© 2016 - 2025 Red Hat, Inc.