aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/powernv/opal-irqchip.c
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2021-05-04 17:42:18 +0100
committerMarc Zyngier <maz@kernel.org>2021-08-12 11:39:41 +0100
commit2c8996583013a2e2fa09a2c4ddebe6692c45a9c2 (patch)
treeb706670e543e4d07b6a8117892177435a40f5413 /arch/powerpc/platforms/powernv/opal-irqchip.c
parentnios2: Bulk conversion to generic_handle_domain_irq() (diff)
downloadlinux-dev-2c8996583013a2e2fa09a2c4ddebe6692c45a9c2.tar.xz
linux-dev-2c8996583013a2e2fa09a2c4ddebe6692c45a9c2.zip
powerpc: 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(). Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'arch/powerpc/platforms/powernv/opal-irqchip.c')
-rw-r--r--arch/powerpc/platforms/powernv/opal-irqchip.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/arch/powerpc/platforms/powernv/opal-irqchip.c b/arch/powerpc/platforms/powernv/opal-irqchip.c
index c164419e254d..d55652b5f6fa 100644
--- a/arch/powerpc/platforms/powernv/opal-irqchip.c
+++ b/arch/powerpc/platforms/powernv/opal-irqchip.c
@@ -46,18 +46,15 @@ void opal_handle_events(void)
e = READ_ONCE(last_outstanding_events) & opal_event_irqchip.mask;
again:
while (e) {
- int virq, hwirq;
+ int hwirq;
hwirq = fls64(e) - 1;
e &= ~BIT_ULL(hwirq);
local_irq_disable();
- virq = irq_find_mapping(opal_event_irqchip.domain, hwirq);
- if (virq) {
- irq_enter();
- generic_handle_irq(virq);
- irq_exit();
- }
+ irq_enter();
+ generic_handle_domain_irq(opal_event_irqchip.domain, hwirq);
+ irq_exit();
local_irq_enable();
cond_resched();