aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/cell/spider-pic.c
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2021-08-02 17:26:28 +0100
committerMichael Ellerman <mpe@ellerman.id.au>2021-08-10 23:15:02 +1000
commit1bce54250045443d55659b0b23be51e87ed2b919 (patch)
treef9cbca21ea85aa6a3f66c7bdf4370c131a6232a9 /arch/powerpc/platforms/cell/spider-pic.c
parentKVM: PPC: Book3S HV: XIVE: Add support for automatic save-restore (diff)
downloadlinux-dev-1bce54250045443d55659b0b23be51e87ed2b919.tar.xz
linux-dev-1bce54250045443d55659b0b23be51e87ed2b919.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> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20210802162630.2219813-13-maz@kernel.org
Diffstat (limited to '')
-rw-r--r--arch/powerpc/platforms/cell/spider-pic.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c
index 210785f59271..8af75867cb42 100644
--- a/arch/powerpc/platforms/cell/spider-pic.c
+++ b/arch/powerpc/platforms/cell/spider-pic.c
@@ -190,16 +190,11 @@ static void spider_irq_cascade(struct irq_desc *desc)
{
struct irq_chip *chip = irq_desc_get_chip(desc);
struct spider_pic *pic = irq_desc_get_handler_data(desc);
- unsigned int cs, virq;
+ unsigned int cs;
cs = in_be32(pic->regs + TIR_CS) >> 24;
- if (cs == SPIDER_IRQ_INVALID)
- virq = 0;
- else
- virq = irq_linear_revmap(pic->host, cs);
-
- if (virq)
- generic_handle_irq(virq);
+ if (cs != SPIDER_IRQ_INVALID)
+ generic_handle_domain_irq(pic->host, cs);
chip->irq_eoi(&desc->irq_data);
}