summaryrefslogtreecommitdiffstats
path: root/arch/mips/ar7
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2019-01-06 19:44:11 +0100
committerPaul Burton <paul.burton@mips.com>2019-01-07 13:38:19 -0800
commit2b4dba55b04b212a7fd1f0395b41d79ee3a9801b (patch)
tree095c85813d9bce74edd3385006cbda3dc4daaf17 /arch/mips/ar7
parentbfeffd155283772bbe78c6a05dec7c0128ee500c (diff)
downloadblackbird-obmc-linux-2b4dba55b04b212a7fd1f0395b41d79ee3a9801b.tar.gz
blackbird-obmc-linux-2b4dba55b04b212a7fd1f0395b41d79ee3a9801b.zip
MIPS: lantiq: Fix IPI interrupt handling
This makes SMP on the vrx200 work again, by removing all the MIPS CPU interrupt specific code and making it fully use the generic MIPS CPU interrupt controller. The mti,cpu-interrupt-controller from irq-mips-cpu.c now handles the CPU interrupts and also the IPI interrupts which are used to communication between the CPUs in a SMP system. The generic interrupt code was already used before but the interrupt vectors were overwritten again when we called set_vi_handler() in the lantiq interrupt driver and we also provided our own plat_irq_dispatch() function which overwrote the weak generic implementation. Now the code uses the generic handler for the MIPS CPU interrupts including the IPI interrupts and registers a handler for the CPU interrupts which are handled by the lantiq ICU with irq_set_chained_handler() which was already called before. Calling the set_c0_status() function is also not needed any more because the generic MIPS CPU interrupt already activates the needed bits. Fixes: 1eed40043579 ("MIPS: smp-mt: Use CPU interrupt controller IPI IRQ domain support") Cc: stable@kernel.org # v4.12 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: jhogan@kernel.org Cc: ralf@linux-mips.org Cc: john@phrozen.org Cc: linux-mips@linux-mips.org Cc: linux-mips@vger.kernel.org
Diffstat (limited to 'arch/mips/ar7')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud