Hi Ralf, This patch has fixed the wrong conversion of plat_irq_dispatch() for vr41xx. Please apply. Yoichi Signed-off-by: Yoichi Yuasa <yoichi_yuasa@xxxxxxxxxxxxxx> diff -pruN -X mips/Documentation/dontdiff mips-orig/arch/mips/vr41xx/common/irq.c mips/arch/mips/vr41xx/common/irq.c --- mips-orig/arch/mips/vr41xx/common/irq.c 2006-04-06 11:26:29.216597750 +0900 +++ mips/arch/mips/vr41xx/common/irq.c 2006-04-06 11:57:42.581675750 +0900 @@ -91,23 +91,16 @@ asmlinkage void plat_irq_dispatch(struct if (pending & CAUSEF_IP7) do_IRQ(7, regs); else if (pending & 0x7800) { - if (pending & CAUSEF_IP3) { + if (pending & CAUSEF_IP3) irq_dispatch(3, regs); - return; - } else if (pending & CAUSEF_IP4) { + else if (pending & CAUSEF_IP4) irq_dispatch(4, regs); - return; - } else if (pending & CAUSEF_IP5) { + else if (pending & CAUSEF_IP5) irq_dispatch(5, regs); - return; - } else if (pending & CAUSEF_IP6) { + else if (pending & CAUSEF_IP6) irq_dispatch(6, regs); - return; - } - } - - if (pending & CAUSEF_IP2) - do_IRQ(2, regs); + } else if (pending & CAUSEF_IP2) + irq_dispatch(2, regs); else if (pending & CAUSEF_IP0) do_IRQ(0, regs); else if (pending & CAUSEF_IP1)