aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/controller/pci-xgene-msi.c
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2021-08-02 17:26:19 +0100
committerBjorn Helgaas <bhelgaas@google.com>2021-08-02 11:53:05 -0500
commitd21faba11693c10072ce3b96b696445175f49be2 (patch)
treef7a1957afc5a3db45f0e1456afffcbdd86e44b5c /drivers/pci/controller/pci-xgene-msi.c
parentLinux 5.14-rc1 (diff)
downloadlinux-dev-d21faba11693c10072ce3b96b696445175f49be2.tar.xz
linux-dev-d21faba11693c10072ce3b96b696445175f49be2.zip
PCI: Bulk conversion to generic_handle_domain_irq()
Wherever possible, replace constructs that match either generic_handle_irq(irq_find_mapping()) or generic_handle_irq(irq_linear_revmap()) to a single call to generic_handle_domain_irq(). Link: https://lore.kernel.org/r/20210802162630.2219813-4-maz@kernel.org Signed-off-by: Marc Zyngier <maz@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Diffstat (limited to 'drivers/pci/controller/pci-xgene-msi.c')
-rw-r--r--drivers/pci/controller/pci-xgene-msi.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/pci/controller/pci-xgene-msi.c b/drivers/pci/controller/pci-xgene-msi.c
index 1c34c897a7e2..f1624bbb9f83 100644
--- a/drivers/pci/controller/pci-xgene-msi.c
+++ b/drivers/pci/controller/pci-xgene-msi.c
@@ -291,8 +291,7 @@ static void xgene_msi_isr(struct irq_desc *desc)
struct irq_chip *chip = irq_desc_get_chip(desc);
struct xgene_msi_group *msi_groups;
struct xgene_msi *xgene_msi;
- unsigned int virq;
- int msir_index, msir_val, hw_irq;
+ int msir_index, msir_val, hw_irq, ret;
u32 intr_index, grp_select, msi_grp;
chained_irq_enter(chip, desc);
@@ -330,10 +329,8 @@ static void xgene_msi_isr(struct irq_desc *desc)
* CPU0
*/
hw_irq = hwirq_to_canonical_hwirq(hw_irq);
- virq = irq_find_mapping(xgene_msi->inner_domain, hw_irq);
- WARN_ON(!virq);
- if (virq != 0)
- generic_handle_irq(virq);
+ ret = generic_handle_domain_irq(xgene_msi->inner_domain, hw_irq);
+ WARN_ON_ONCE(ret);
msir_val &= ~(1 << intr_index);
}
grp_select &= ~(1 << msir_index);