• Paul Burton's avatar
    irqchip: mips-cpu: Prepare for non-legacy IRQ domains · 131735af
    Paul Burton authored
    The various struct irq_chip callbacks in the MIPS CPU interrupt
    controller driver have been calculating the hardware interrupt number by
    subtracting MIPS_CPU_IRQ_BASE from the virq number. This presumes a
    linear mapping beginning from MIPS_CPU_IRQ_BASE, and this will not hold
    once an IPI IRQ domain is introduced. Switch to using the hwirq field of
    struct irq_data which already contains the hardware interrupt number
    instead of attempting to calculate it.
    
    Similarly, plat_irq_dispatch calculated the virq number by adding
    MIPS_CPU_IRQ_BASE to the hardware interrupt number. Ready this for the
    introduction of an IPI IRQ domain by instead using irq_linear_revmap.
    Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
    Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Cc: Jason Cooper <jason@lakedaemon.net>
    Cc: Marc Zyngier <marc.zyngier@arm.com>
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/15835/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    131735af
irq-mips-cpu.c 4.34 KB