From 3487b77acbb12f4174f46237f942918651b23aa7 Mon Sep 17 00:00:00 2001 From: Kurt Mahan 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 --- 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)