diff options
author | Arjan van de Ven <arjan@linux.intel.com> | 2009-03-23 13:28:16 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2009-03-24 07:15:23 -0400 |
commit | 935bd5b971f0df7c06d214d022cf8392e2f37952 (patch) | |
tree | a9edfeaa4621ce83d0de84f2c7b2ca0f741ede98 /include/linux/interrupt.h | |
parent | 3aa551c9b4c40018f0e261a178e3d25478dc04a9 (diff) |
genirq: add support for threaded interrupts to devres
Some devices use devres_request_irq() for to install their interrupt
handler. Add support for threaded interrupts to devres as well.
[tglx - simplified and adapted to latest threadirq version]
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux/interrupt.h')
-rw-r--r-- | include/linux/interrupt.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index 6fc2b720c231..dbf6a6fd116c 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h | |||
@@ -123,9 +123,20 @@ extern void free_irq(unsigned int, void *); | |||
123 | 123 | ||
124 | struct device; | 124 | struct device; |
125 | 125 | ||
126 | extern int __must_check devm_request_irq(struct device *dev, unsigned int irq, | 126 | extern int __must_check |
127 | irq_handler_t handler, unsigned long irqflags, | 127 | devm_request_threaded_irq(struct device *dev, unsigned int irq, |
128 | const char *devname, void *dev_id); | 128 | irq_handler_t handler, irq_handler_t thread_fn, |
129 | unsigned long irqflags, const char *devname, | ||
130 | void *dev_id); | ||
131 | |||
132 | static inline int __must_check | ||
133 | devm_request_irq(struct device *dev, unsigned int irq, irq_handler_t handler, | ||
134 | unsigned long irqflags, const char *devname, void *dev_id) | ||
135 | { | ||
136 | return devm_request_threaded_irq(dev, irq, handler, NULL, irqflags, | ||
137 | devname, dev_id); | ||
138 | } | ||
139 | |||
129 | extern void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id); | 140 | extern void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id); |
130 | 141 | ||
131 | /* | 142 | /* |