aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2006-05-20 02:35:12 +0000
committerFelix Fietkau <nbd@openwrt.org>2006-05-20 02:35:12 +0000
commit477d47a0ea9df09b851859b5a2124a5ef285266a (patch)
treebf33594ad0cb3a4b96b49e7d779eed7af0edba40
parentbb453b384c4696524844f559293b38fe9faf4553 (diff)
downloadupstream-477d47a0ea9df09b851859b5a2124a5ef285266a.tar.gz
upstream-477d47a0ea9df09b851859b5a2124a5ef285266a.tar.bz2
upstream-477d47a0ea9df09b851859b5a2124a5ef285266a.zip
fix irq problem with the new brcm-2.4 system code
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@3803 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--openwrt/target/linux/brcm-2.4/patches/001-bcm47xx.patch21
1 files changed, 4 insertions, 17 deletions
diff --git a/openwrt/target/linux/brcm-2.4/patches/001-bcm47xx.patch b/openwrt/target/linux/brcm-2.4/patches/001-bcm47xx.patch
index a67c567742a..af82c3c770f 100644
--- a/openwrt/target/linux/brcm-2.4/patches/001-bcm47xx.patch
+++ b/openwrt/target/linux/brcm-2.4/patches/001-bcm47xx.patch
@@ -10087,7 +10087,7 @@ diff -urN linux.old/arch/mips/bcm947xx/prom.c linux.dev/arch/mips/bcm947xx/prom.
diff -urN linux.old/arch/mips/bcm947xx/sbmips.c linux.dev/arch/mips/bcm947xx/sbmips.c
--- linux.old/arch/mips/bcm947xx/sbmips.c 1970-01-01 01:00:00.000000000 +0100
+++ linux.dev/arch/mips/bcm947xx/sbmips.c 2006-05-02 04:43:13.000000000 +0200
-@@ -0,0 +1,1145 @@
+@@ -0,0 +1,1132 @@
+/*
+ * BCM47XX Sonics SiliconBackplane MIPS core routines
+ *
@@ -10162,8 +10162,8 @@ diff -urN linux.old/arch/mips/bcm947xx/sbmips.c linux.dev/arch/mips/bcm947xx/sbm
+ * Returns the MIPS IRQ assignment of the current core. If unassigned,
+ * 0 is returned.
+ */
-+static uint
-+sb_getirq(sb_t *sbh)
++uint
++sb_irq(sb_t *sbh)
+{
+ osl_t *osh;
+ uint idx;
@@ -10196,19 +10196,6 @@ diff -urN linux.old/arch/mips/bcm947xx/sbmips.c linux.dev/arch/mips/bcm947xx/sbm
+ return irq;
+}
+
-+/*
-+ * Return the MIPS IRQ assignment of the current core. If necessary
-+ * map cores sharing the MIPS hw IRQ0 to virtual dedicated OS IRQs.
-+ */
-+uint
-+sb_irq(sb_t *sbh)
-+{
-+ uint irq = sb_getirq(sbh);
-+ if (irq == 0 && shirq_map_base)
-+ irq = sb_getflag(sbh) + shirq_map_base;
-+ return irq;
-+}
-+
+/* Clears the specified MIPS IRQ. */
+static void
+BCMINITFN(sb_clearirq)(sb_t *sbh, uint irq)
@@ -10250,7 +10237,7 @@ diff -urN linux.old/arch/mips/bcm947xx/sbmips.c linux.dev/arch/mips/bcm947xx/sbm
+ regs = sb_setcore(sbh, coreid, coreunit);
+ ASSERT(regs);
+ flag = sb_getflag(sbh);
-+ oldirq = sb_getirq(sbh);
++ oldirq = sb_irq(sbh);
+ if (oldirq)
+ sb_clearirq(sbh, oldirq);
+