aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorArjan van de Ven <arjan@linux.intel.com>2009-03-23 13:28:16 -0400
committerThomas Gleixner <tglx@linutronix.de>2009-03-24 07:15:23 -0400
commit935bd5b971f0df7c06d214d022cf8392e2f37952 (patch)
treea9edfeaa4621ce83d0de84f2c7b2ca0f741ede98 /include
parent3aa551c9b4c40018f0e261a178e3d25478dc04a9 (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')
-rw-r--r--include/linux/interrupt.h17
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
124struct device; 124struct device;
125 125
126extern int __must_check devm_request_irq(struct device *dev, unsigned int irq, 126extern int __must_check
127 irq_handler_t handler, unsigned long irqflags, 127devm_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
132static inline int __must_check
133devm_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
129extern void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id); 140extern void devm_free_irq(struct device *dev, unsigned int irq, void *dev_id);
130 141
131/* 142/*