[ar71xx] add patches for 2.6.31
[openwrt.git] / target / linux / coldfire / patches / 050-mcfv4e_irq_magic_bit.patch
1 From 3487b77acbb12f4174f46237f942918651b23aa7 Mon Sep 17 00:00:00 2001
2 From: Kurt Mahan <kmahan@freescale.com>
3 Date: Tue, 15 Apr 2008 17:14:55 -0600
4 Subject: [PATCH] Fix setting low 31 interrupts to deal with magic bit 0
5  of the IMRL register.
6
7 LTIBName: mcfv4e-irq-magic-bit
8 Signed-off-by: Kurt Mahan <kmahan@freescale.com>
9 ---
10  arch/m68k/coldfire/ints.c |    9 ++++++---
11  1 files changed, 6 insertions(+), 3 deletions(-)
12
13 --- a/arch/m68k/coldfire/ints.c
14 +++ b/arch/m68k/coldfire/ints.c
15 @@ -420,10 +420,13 @@ void m547x_8x_irq_enable(unsigned int ir
16         }
17  #endif
18  
19 -       if (irq < 32)
20 -               MCF_IMRL &= ~(1 << irq);
21 -       else
22 +       if (irq < 32) {
23 +               /* *grumble* don't set low bit of IMRL */
24 +               MCF_IMRL &= (~(1 << irq) & 0xfffffffe);
25 +       }
26 +       else {
27                 MCF_IMRH &= ~(1 << (irq - 32));
28 +       }
29  }
30  
31  void m547x_8x_irq_disable(unsigned int irq)