diff options
author | Jonas Gorski <jogo@openwrt.org> | 2013-05-02 15:28:26 +0000 |
---|---|---|
committer | Jonas Gorski <jogo@openwrt.org> | 2013-05-02 15:28:26 +0000 |
commit | d11efa14286ba8b6e6bfa3af0f3c16e1f8492682 (patch) | |
tree | e3e2bf83875e77ee741919ed9d7bcf368fa3fd7e /target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch | |
parent | 8f15326acca2d34200d3b1142bb4c184fa6c1e07 (diff) | |
download | upstream-d11efa14286ba8b6e6bfa3af0f3c16e1f8492682.tar.gz upstream-d11efa14286ba8b6e6bfa3af0f3c16e1f8492682.tar.bz2 upstream-d11efa14286ba8b6e6bfa3af0f3c16e1f8492682.zip |
bcm63xx: add SMP support for BCM6362 and BCM6368
BCM6358 requires further work due to its shared TLB.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 36526
Diffstat (limited to 'target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch')
-rw-r--r-- | target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch b/target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch new file mode 100644 index 0000000000..f08c7ef4fa --- /dev/null +++ b/target/linux/brcm63xx/patches-3.8/311-MIPS-BCM63XX-Handle-SW-IRQs-0-1.patch @@ -0,0 +1,28 @@ +From 8e0bd819cc0f8815cad99feea98664172c0b1fe4 Mon Sep 17 00:00:00 2001 +From: Kevin Cernekee <cernekee@gmail.com> +Date: Mon, 31 Oct 2011 11:52:10 -0700 +Subject: [PATCH 02/13] MIPS: BCM63XX: Handle SW IRQs 0-1 + +MIPS software IRQs 0 and 1 are used for interprocessor signaling (IPI) +on BMIPS SMP. Make the board support code aware of them. + +Signed-off-by: Kevin Cernekee <cernekee@gmail.com> +[jogo@openwrt.org: move sw irqs behind timer irq] +Signed-off-by: Jonas Gorski <jogo@openwrt.org> +--- + arch/mips/bcm63xx/irq.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/arch/mips/bcm63xx/irq.c ++++ b/arch/mips/bcm63xx/irq.c +@@ -294,6 +294,10 @@ asmlinkage void plat_irq_dispatch(void) + + if (cause & CAUSEF_IP7) + do_IRQ(7); ++ if (cause & CAUSEF_IP0) ++ do_IRQ(0); ++ if (cause & CAUSEF_IP1) ++ do_IRQ(1); + if (cause & CAUSEF_IP2) + dispatch_internal(); + if (!is_ext_irq_cascaded) { |