summaryrefslogtreecommitdiffstats
path: root/target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch
diff options
context:
space:
mode:
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-06-23 21:04:37 +0000
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-06-23 21:04:37 +0000
commit343c185b7d7383b1f5b5144e837045af28afc42b (patch)
tree6d3382662fa3ad4119d3a3cda223c53949ca4894 /target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch
parent145f9652a593d19b149d2f25febd4aa0c1ab57d1 (diff)
use broken-out patches for the coldfire to make it easier to follow differences against the bsp
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16547 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch')
-rw-r--r--target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch b/target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch
new file mode 100644
index 000000000..61d746b70
--- /dev/null
+++ b/target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch
@@ -0,0 +1,31 @@
+From 3487b77acbb12f4174f46237f942918651b23aa7 Mon Sep 17 00:00:00 2001
+From: Kurt Mahan <kmahan@freescale.com>
+Date: Tue, 15 Apr 2008 17:14:55 -0600
+Subject: [PATCH] Fix setting low 31 interrupts to deal with magic bit 0
+ of the IMRL register.
+
+LTIBName: mcfv4e-irq-magic-bit
+Signed-off-by: Kurt Mahan <kmahan@freescale.com>
+---
+ arch/m68k/coldfire/ints.c | 9 ++++++---
+ 1 files changed, 6 insertions(+), 3 deletions(-)
+
+--- a/arch/m68k/coldfire/ints.c
++++ b/arch/m68k/coldfire/ints.c
+@@ -420,10 +420,13 @@ void m547x_8x_irq_enable(unsigned int ir
+ }
+ #endif
+
+- if (irq < 32)
+- MCF_IMRL &= ~(1 << irq);
+- else
++ if (irq < 32) {
++ /* *grumble* don't set low bit of IMRL */
++ MCF_IMRL &= (~(1 << irq) & 0xfffffffe);
++ }
++ else {
+ MCF_IMRH &= ~(1 << (irq - 32));
++ }
+ }
+
+ void m547x_8x_irq_disable(unsigned int irq)