1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-11 11:01:53 +02:00
openwrt-xburst/target/linux/coldfire/patches/050-mcfv4e_irq_magic_bit.patch
kaloz 343c185b7d 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
2009-06-23 21:04:37 +00:00

32 lines
824 B
Diff

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)