Index: target/linux/rt288x/files/include/asm-mips/mach-rt288x/rt288x.h =================================================================== --- target/linux/rt288x/files/include/asm-mips/mach-rt288x/rt288x.h (revision 237) +++ target/linux/rt288x/files/include/asm-mips/mach-rt288x/rt288x.h (revision 238) @@ -38,6 +38,9 @@ #define RT288X_GPIO_IRQ_BASE 40 #define RT288X_CPU_IRQ_INTC (RT288X_CPU_IRQ_BASE + 2) +#define RT288X_CPU_IRQ_PCI (RT288X_CPU_IRQ_BASE + 4) +#define RT288X_CPU_IRQ_FE (RT288X_CPU_IRQ_BASE + 5) +#define RT288X_CPU_IRQ_WNIC (RT288X_CPU_IRQ_BASE + 6) #define RT288X_CPU_IRQ_COUNTER (RT288X_CPU_IRQ_BASE + 7) #define RT2880_INTC_IRQ_TIMER0 (RT288X_INTC_IRQ_BASE + 0) Index: target/linux/rt288x/files/arch/mips/rt288x/irq.c =================================================================== --- target/linux/rt288x/files/arch/mips/rt288x/irq.c (revision 237) +++ target/linux/rt288x/files/arch/mips/rt288x/irq.c (revision 238) @@ -105,6 +105,15 @@ if (pending & STATUSF_IP7) do_IRQ(RT288X_CPU_IRQ_COUNTER); + else if (pending & STATUSF_IP4) + do_IRQ(RT288X_CPU_IRQ_PCI); + + else if (pending & STATUSF_IP5) + do_IRQ(RT288X_CPU_IRQ_FE); + + else if (pending & STATUSF_IP6) + do_IRQ(RT288X_CPU_IRQ_WNIC); + else if (pending & STATUSF_IP2) rt288x_intc_irq_dispatch();