Merge tag 'docs-5.15' of git://git.lwn.net/linux
[linux-2.6-microblaze.git] / arch / mips / pci / pci-ar2315.c
index c1a655a..9a4bfb4 100644 (file)
@@ -337,14 +337,12 @@ static void ar2315_pci_irq_handler(struct irq_desc *desc)
        struct ar2315_pci_ctrl *apc = irq_desc_get_handler_data(desc);
        u32 pending = ar2315_pci_reg_read(apc, AR2315_PCI_ISR) &
                      ar2315_pci_reg_read(apc, AR2315_PCI_IMR);
-       unsigned pci_irq = 0;
+       int ret = 0;
 
        if (pending)
-               pci_irq = irq_find_mapping(apc->domain, __ffs(pending));
+               ret = generic_handle_domain_irq(apc->domain, __ffs(pending));
 
-       if (pci_irq)
-               generic_handle_irq(pci_irq);
-       else
+       if (!pending || ret)
                spurious_interrupt();
 }