summaryrefslogtreecommitdiffstats
path: root/target/linux/atheros-2.6/files/arch/mips/atheros/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/atheros-2.6/files/arch/mips/atheros/board.c')
-rw-r--r--target/linux/atheros-2.6/files/arch/mips/atheros/board.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/target/linux/atheros-2.6/files/arch/mips/atheros/board.c b/target/linux/atheros-2.6/files/arch/mips/atheros/board.c
index d26eda4d08..1ea66c0c19 100644
--- a/target/linux/atheros-2.6/files/arch/mips/atheros/board.c
+++ b/target/linux/atheros-2.6/files/arch/mips/atheros/board.c
@@ -23,6 +23,7 @@
#include <linux/serial.h>
#include <linux/serial_core.h>
#include <asm/bootinfo.h>
+#include <asm/irq_cpu.h>
#include <asm/io.h>
#include "ar531x.h"
@@ -189,4 +190,18 @@ void __init plat_timer_setup(struct irqaction *irq)
write_c0_compare(count + 1000);
}
+asmlinkage void plat_irq_dispatch(void)
+{
+ DO_AR5312(ar5312_irq_dispatch();)
+ DO_AR5315(ar5315_irq_dispatch();)
+}
+void __init arch_init_irq(void)
+{
+ clear_c0_status(ST0_IM);
+ mips_cpu_irq_init();
+
+ /* Initialize interrupt controllers */
+ DO_AR5312(ar5312_misc_intr_init(AR531X_MISC_IRQ_BASE);)
+ DO_AR5315(ar5315_misc_intr_init(AR531X_MISC_IRQ_BASE);)
+}