diff options
author | John Crispin <blogic@openwrt.org> | 2013-04-03 09:58:44 +0000 |
---|---|---|
committer | John Crispin <blogic@openwrt.org> | 2013-04-03 09:58:44 +0000 |
commit | 84238ad24d5bdf6b95cc3d972908d699502764ab (patch) | |
tree | 6438279d1866fffb0c66b568f2ee3e64f2aa89b0 /target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c | |
parent | fd1af44d07b5c0eccd58bf24805810d2f0077936 (diff) | |
download | master-187ad058-84238ad24d5bdf6b95cc3d972908d699502764ab.tar.gz master-187ad058-84238ad24d5bdf6b95cc3d972908d699502764ab.tar.bz2 master-187ad058-84238ad24d5bdf6b95cc3d972908d699502764ab.zip |
[ramips] move files to files-3.7
Signed-off-by: John Crispin <blogic@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36161 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c')
-rw-r--r-- | target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c b/target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c deleted file mode 100644 index fcac2dd860..0000000000 --- a/target/linux/ramips/files/arch/mips/ralink/rt305x/irq.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Ralink RT305x SoC specific interrupt handling - * - * Copyright (C) 2009 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - */ - -#include <linux/kernel.h> -#include <linux/init.h> -#include <linux/interrupt.h> -#include <linux/irq.h> - -#include <asm/irq_cpu.h> -#include <asm/mipsregs.h> - -#include <asm/mach-ralink/common.h> -#include <asm/mach-ralink/rt305x.h> -#include <asm/mach-ralink/rt305x_regs.h> - -static void rt305x_intc_irq_dispatch(void) -{ - u32 pending; - - pending = ramips_intc_get_status(); - - if (pending & RT305X_INTC_INT_TIMER0) - do_IRQ(RT305X_INTC_IRQ_TIMER0); - - else if (pending & RT305X_INTC_INT_TIMER1) - do_IRQ(RT305X_INTC_IRQ_TIMER1); - - else if (pending & RT305X_INTC_INT_UART0) - do_IRQ(RT305X_INTC_IRQ_UART0); - - else if (pending & RT305X_INTC_INT_UART1) - do_IRQ(RT305X_INTC_IRQ_UART1); - - else if (pending & RT305X_INTC_INT_PERFC) - do_IRQ(RT305X_INTC_IRQ_PERFC); - - else if (pending & RT305X_INTC_INT_OTG) - do_IRQ(RT305X_INTC_IRQ_OTG); - - /* TODO: handle PIO interrupts as well */ - - else - spurious_interrupt(); -} - -asmlinkage void plat_irq_dispatch(void) -{ - unsigned long pending; - - pending = read_c0_status() & read_c0_cause() & ST0_IM; - - if (pending & STATUSF_IP7) - do_IRQ(RT305X_CPU_IRQ_COUNTER); - - else if (pending & STATUSF_IP5) - do_IRQ(RT305X_CPU_IRQ_FE); - - else if (pending & STATUSF_IP6) - do_IRQ(RT305X_CPU_IRQ_WNIC); - - else if (pending & STATUSF_IP2) - rt305x_intc_irq_dispatch(); - - else - spurious_interrupt(); -} - -void __init arch_init_irq(void) -{ - mips_cpu_irq_init(); - ramips_intc_irq_init(RT305X_INTC_BASE, RT305X_CPU_IRQ_INTC, - RT305X_INTC_IRQ_BASE); - - cp0_perfcount_irq = RT305X_INTC_IRQ_PERFC; -} |