MIPS: smp-mt,smp-cmp: Enable all HW IRQs on secondary CPUs
authorJames Hogan <james.hogan@imgtec.com>
Fri, 16 Jan 2015 11:10:46 +0000 (11:10 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 16 Jan 2015 12:02:40 +0000 (13:02 +0100)
commitc3f134fb395d3903f4c7cad53a9a844b2673ce9f
tree74356424db54fc823a2cf59ea58a5d8b3f12c62c
parente967ef022e00bb7c2e5b1a42007abfdd52055050
MIPS: smp-mt,smp-cmp: Enable all HW IRQs on secondary CPUs

Commit 18743d2781d0 ("irqchip: mips-gic: Stop using per-platform mapping
tables") in v3.19-rc1 changed the routing of IPIs through the GIC to go
to the HW0 IRQ pin along with the rest of the GIC interrupts, rather
than to HW1 and HW2 pins.

This breaks SMP boot using the CMP or MT SMP implementations because HW0
doesn't get unmasked when secondary CPUs are initialised so the IPIs
will never interrupt secondary CPUs (nor any other interrupts routed
through the GIC).

Commit ff1e29ade4c6 ("MIPS: smp-cps: Enable all hardware interrupts on
secondary CPUs") fixed this in advance for the CPS SMP implementation by
unmasking all hardware interrupt lines for secondary CPUs, so lets do
the same for the CMP and MT implementations.

Fixes: 18743d2781d0 ("irqchip: mips-gic: Stop using per-platform mapping tables")
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Andrew Bresticker <abrestic@chromium.org>
Cc: Qais Yousef <qais.yousef@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/9025/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/smp-cmp.c
arch/mips/kernel/smp-mt.c