diff options
author | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-08-18 14:47:16 +0200 |
---|---|---|
committer | Geert Uytterhoeven <geert@linux-m68k.org> | 2011-11-08 22:35:52 +0100 |
commit | a03010ed9b399fdbc28ac8836e0a6d4b15403f9f (patch) | |
tree | ea82d48efa6e8af9d8f759c77e004da29dd5c558 /arch | |
parent | dda7535912255015ecf7264c1d6691a09f8ba487 (diff) |
m68k/q40: Convert Q40/Q60 to genirq
q40_irq_handler() must be kept to translate ISA IRQs to the range 1-15.
q40_probe_irq_o{ff,n}() become unused.
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Richard Zidlicky <rz@linux-m68k.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/m68k/Kconfig | 1 | ||||
-rw-r--r-- | arch/m68k/include/asm/q40ints.h | 2 | ||||
-rw-r--r-- | arch/m68k/q40/q40ints.c | 8 |
3 files changed, 9 insertions, 2 deletions
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig index 290f9c838b3..06198ced224 100644 --- a/arch/m68k/Kconfig +++ b/arch/m68k/Kconfig @@ -87,7 +87,6 @@ config MMU_SUN3 config USE_GENERIC_HARDIRQS bool "Use genirq" depends on MMU - depends on !Q40 select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW diff --git a/arch/m68k/include/asm/q40ints.h b/arch/m68k/include/asm/q40ints.h index 3d970afb708..01cdbb4da46 100644 --- a/arch/m68k/include/asm/q40ints.h +++ b/arch/m68k/include/asm/q40ints.h @@ -25,5 +25,7 @@ #define Q40_IRQ14_MASK (1<<6) #define Q40_IRQ15_MASK (1<<7) +#ifndef CONFIG_GENERIC_HARDIRQS extern unsigned long q40_probe_irq_on (void); extern int q40_probe_irq_off (unsigned long irqs); +#endif diff --git a/arch/m68k/q40/q40ints.c b/arch/m68k/q40/q40ints.c index afe600c0365..f1e5288f043 100644 --- a/arch/m68k/q40/q40ints.c +++ b/arch/m68k/q40/q40ints.c @@ -15,10 +15,14 @@ #include <linux/kernel.h> #include <linux/errno.h> #include <linux/interrupt.h> +#ifdef CONFIG_GENERIC_HARDIRQS +#include <linux/irq.h> +#else +#include <asm/irq.h> +#endif #include <asm/ptrace.h> #include <asm/system.h> -#include <asm/irq.h> #include <asm/traps.h> #include <asm/q40_master.h> @@ -326,6 +330,7 @@ void q40_irq_disable(struct irq_data *data) } } +#ifndef CONFIG_GENERIC_HARDIRQS unsigned long q40_probe_irq_on(void) { printk("irq probing not working - reconfigure the driver to avoid this\n"); @@ -335,3 +340,4 @@ int q40_probe_irq_off(unsigned long irqs) { return -1; } +#endif |