Skip to content

Commit f64e55d

Browse files
abresticralfbaechle
authored andcommitted
MIPS: Set vint handler when mapping CPU interrupts
When mapping an interrupt in the CPU IRQ domain, set the vint handler for that interrupt if the CPU uses vectored interrupt handling. Signed-off-by: Andrew Bresticker <abrestic@chromium.org> Reviewed-by: Qais Yousef <qais.yousef@imgtec.com> Tested-by: Qais Yousef <qais.yousef@imgtec.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Jason Cooper <jason@lakedaemon.net> Cc: Andrew Bresticker <abrestic@chromium.org> Cc: Jeffrey Deans <jeffrey.deans@imgtec.com> Cc: Markos Chandras <markos.chandras@imgtec.com> Cc: Paul Burton <paul.burton@imgtec.com> Cc: Qais Yousef <qais.yousef@imgtec.com> Cc: Jonas Gorski <jogo@openwrt.org> Cc: John Crispin <blogic@openwrt.org> Cc: David Daney <ddaney.cavm@gmail.com> Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/7802/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
1 parent 85f7cda commit f64e55d

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

arch/mips/kernel/irq_cpu.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
#include <asm/irq_cpu.h>
3737
#include <asm/mipsregs.h>
3838
#include <asm/mipsmtregs.h>
39+
#include <asm/setup.h>
3940

4041
static inline void unmask_mips_irq(struct irq_data *d)
4142
{
@@ -124,6 +125,9 @@ static int mips_cpu_intc_map(struct irq_domain *d, unsigned int irq,
124125
chip = &mips_cpu_irq_controller;
125126
}
126127

128+
if (cpu_has_vint)
129+
set_vi_handler(hw, plat_irq_dispatch);
130+
127131
irq_set_chip_and_handler(irq, chip, handle_percpu_irq);
128132

129133
return 0;

0 commit comments

Comments
 (0)