__raw_readl return 32bit, but MPU have 16 bit registers
example:
MPU isr=0x0001, but __raw_readl() return isr=0x00010001 -> virtual interrupt 16
desc_handle_irq(0, d, regs) - handled ok
desc_handle_irq(16, d, regs) - interrupt handler = NULL
u32 isr_saved, level_mask = 0;
isr_saved = isr = __raw_readl(isr_reg);
+
+ if (cpu_is_omap15xx() && (bank->method == METHOD_MPUIO))
+ isr &= 0x0000ffff;
+
if (cpu_is_omap24xx())
level_mask =
__raw_readl(bank->base +