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>
This commit is contained in:
@@ -123,6 +123,20 @@ extern int __must_check
|
|||||||
request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,
|
request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,
|
||||||
const char *name, void *dev);
|
const char *name, void *dev);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Special function to avoid ifdeffery in kernel/irq/devres.c which
|
||||||
|
* gets magically built by GENERIC_HARDIRQS=n architectures (sparc,
|
||||||
|
* m68k). I really love these $@%#!* obvious Makefile references:
|
||||||
|
* ../../../kernel/irq/devres.o
|
||||||
|
*/
|
||||||
|
static inline int __must_check
|
||||||
|
request_threaded_irq(unsigned int irq, irq_handler_t handler,
|
||||||
|
irq_handler_t thread_fn,
|
||||||
|
unsigned long flags, const char *name, void *dev)
|
||||||
|
{
|
||||||
|
return request_irq(irq, handler, flags, name, dev);
|
||||||
|
}
|
||||||
|
|
||||||
static inline void exit_irq_thread(void) { }
|
static inline void exit_irq_thread(void) { }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user