microblaze: Do not show error message for 32 interrupt lines
authorMichal Simek <monstr@monstr.eu>
Wed, 27 Jul 2011 08:45:32 +0000 (10:45 +0200)
committerMichal Simek <monstr@monstr.eu>
Wed, 27 Jul 2011 09:02:00 +0000 (11:02 +0200)
When interrupt controller uses 32 interrupts lines the kernel
show error message about mismatch in kind-of-intr parameter
because it exceeds u32. Recast fixs this issue.

Signed-off-by: Michal Simek <monstr@monstr.eu>
arch/microblaze/kernel/intc.c

index c88f066f41bda9bfc0e9a323fb15b8a279c75e5f..eb41441c7fd0288a84e8f7e38c3dfddfae5b55bd 100644 (file)
@@ -134,7 +134,7 @@ void __init init_IRQ(void)
        intr_type =
                be32_to_cpup(of_get_property(intc,
                                                "xlnx,kind-of-intr", NULL));
-       if (intr_type >= (1 << (nr_irq + 1)))
+       if (intr_type > (u32)((1ULL << nr_irq) - 1))
                printk(KERN_INFO " ERROR: Mismatch in kind-of-intr param\n");
 
 #ifdef CONFIG_SELFMOD_INTC