diff options
| author | Thomas Gleixner <tglx@linutronix.de> | 2009-03-25 12:33:38 -0400 |
|---|---|---|
| committer | Thomas Gleixner <tglx@linutronix.de> | 2009-03-25 12:33:38 -0400 |
| commit | de18836e447c2dc30120c0919b8db8ddc0401cc4 (patch) | |
| tree | 9951d8673029a9d7edd7fff3ce022a1c3f52ae14 /include/linux | |
| parent | 3a38148f0488069cadb75c4a6909954072d648bf (diff) | |
genirq: fix devres.o build for GENERIC_HARDIRQS=n
kernel/irq/devres.c is built by sparc (32bit) and m68k via the obscure
../../../kernel/irq/devres.o reference in arch/[sparc/m68k]/kernel/Makefile
To avoid ifdeffery in devres.c provide request_threaded_irq as an
inline for these users.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/interrupt.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index 7e63b824833f..143192f48bf3 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h | |||
| @@ -123,6 +123,20 @@ extern int __must_check | |||
| 123 | request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, | 123 | request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, |
| 124 | const char *name, void *dev); | 124 | const char *name, void *dev); |
| 125 | 125 | ||
| 126 | /* | ||
| 127 | * Special function to avoid ifdeffery in kernel/irq/devres.c which | ||
| 128 | * gets magically built by GENERIC_HARDIRQS=n architectures (sparc, | ||
| 129 | * m68k). I really love these $@%#!* obvious Makefile references: | ||
| 130 | * ../../../kernel/irq/devres.o | ||
| 131 | */ | ||
| 132 | static inline int __must_check | ||
| 133 | request_threaded_irq(unsigned int irq, irq_handler_t handler, | ||
| 134 | irq_handler_t thread_fn, | ||
| 135 | unsigned long flags, const char *name, void *dev) | ||
| 136 | { | ||
| 137 | return request_irq(irq, handler, flags, name, dev); | ||
| 138 | } | ||
| 139 | |||
| 126 | static inline void exit_irq_thread(void) { } | 140 | static inline void exit_irq_thread(void) { } |
| 127 | #endif | 141 | #endif |
| 128 | 142 | ||
