can: kvaser_pciefd: Call request_irq() before enabling interrupts
commit 84762d8da89d29ba842317eb842973e628c27391 upstream.
Make sure the interrupt handler is registered before enabling interrupts.
Fixes: 26ad340e58 ("can: kvaser_pciefd: Add driver for Kvaser PCIEcan devices")
Cc: stable@vger.kernel.org
Signed-off-by: Jimmy Assarsson <extja@kvaser.com>
Link: https://lore.kernel.org/r/20230516134318.104279-4-extja@kvaser.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
3bbeba3ce1
commit
03714e9c04
@@ -1825,6 +1825,11 @@ static int kvaser_pciefd_probe(struct pci_dev *pdev,
|
|||||||
if (err)
|
if (err)
|
||||||
goto err_teardown_can_ctrls;
|
goto err_teardown_can_ctrls;
|
||||||
|
|
||||||
|
err = request_irq(pcie->pci->irq, kvaser_pciefd_irq_handler,
|
||||||
|
IRQF_SHARED, KVASER_PCIEFD_DRV_NAME, pcie);
|
||||||
|
if (err)
|
||||||
|
goto err_teardown_can_ctrls;
|
||||||
|
|
||||||
iowrite32(KVASER_PCIEFD_SRB_IRQ_DPD0 | KVASER_PCIEFD_SRB_IRQ_DPD1,
|
iowrite32(KVASER_PCIEFD_SRB_IRQ_DPD0 | KVASER_PCIEFD_SRB_IRQ_DPD1,
|
||||||
pcie->reg_base + KVASER_PCIEFD_SRB_IRQ_REG);
|
pcie->reg_base + KVASER_PCIEFD_SRB_IRQ_REG);
|
||||||
|
|
||||||
@@ -1845,11 +1850,6 @@ static int kvaser_pciefd_probe(struct pci_dev *pdev,
|
|||||||
iowrite32(KVASER_PCIEFD_SRB_CMD_RDB1,
|
iowrite32(KVASER_PCIEFD_SRB_CMD_RDB1,
|
||||||
pcie->reg_base + KVASER_PCIEFD_SRB_CMD_REG);
|
pcie->reg_base + KVASER_PCIEFD_SRB_CMD_REG);
|
||||||
|
|
||||||
err = request_irq(pcie->pci->irq, kvaser_pciefd_irq_handler,
|
|
||||||
IRQF_SHARED, KVASER_PCIEFD_DRV_NAME, pcie);
|
|
||||||
if (err)
|
|
||||||
goto err_teardown_can_ctrls;
|
|
||||||
|
|
||||||
err = kvaser_pciefd_reg_candev(pcie);
|
err = kvaser_pciefd_reg_candev(pcie);
|
||||||
if (err)
|
if (err)
|
||||||
goto err_free_irq;
|
goto err_free_irq;
|
||||||
|
|||||||
Reference in New Issue
Block a user