aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2006-10-05 08:06:34 -0400
committerDavid Howells <dhowells@warthog.cambridge.redhat.com>2006-10-05 08:28:27 -0400
commitda482792a6d1a3fbaaa25fae867b343fb4db3246 (patch)
tree138c187e669bbaf997780a999299fbc977568e1c
parent57a58a9435aef3e0342ba4b2c97e0ddfea6f2c7f (diff)
IRQ: Typedef the IRQ handler function type
Typedef the IRQ handler function type. Signed-Off-By: David Howells <dhowells@redhat.com> (cherry picked from 1356d1e5fd256997e3d3dce0777ab787d0515c7a commit)
-rw-r--r--include/linux/interrupt.h7
-rw-r--r--kernel/irq/manage.c4
2 files changed, 5 insertions, 6 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index 1f97e3d92639..19782350dcc8 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
@@ -64,8 +64,10 @@
64#define SA_TRIGGER_RISING IRQF_TRIGGER_RISING 64#define SA_TRIGGER_RISING IRQF_TRIGGER_RISING
65#define SA_TRIGGER_MASK IRQF_TRIGGER_MASK 65#define SA_TRIGGER_MASK IRQF_TRIGGER_MASK
66 66
67typedef irqreturn_t (*irq_handler_t)(int, void *, struct pt_regs *);
68
67struct irqaction { 69struct irqaction {
68 irqreturn_t (*handler)(int, void *, struct pt_regs *); 70 irq_handler_t handler;
69 unsigned long flags; 71 unsigned long flags;
70 cpumask_t mask; 72 cpumask_t mask;
71 const char *name; 73 const char *name;
@@ -76,8 +78,7 @@ struct irqaction {
76}; 78};
77 79
78extern irqreturn_t no_action(int cpl, void *dev_id, struct pt_regs *regs); 80extern irqreturn_t no_action(int cpl, void *dev_id, struct pt_regs *regs);
79extern int request_irq(unsigned int, 81extern int request_irq(unsigned int, irq_handler_t handler,
80 irqreturn_t (*handler)(int, void *, struct pt_regs *),
81 unsigned long, const char *, void *); 82 unsigned long, const char *, void *);
82extern void free_irq(unsigned int, void *); 83extern void free_irq(unsigned int, void *);
83 84
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 92be519eff26..6879202afe9a 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -427,8 +427,7 @@ EXPORT_SYMBOL(free_irq);
427 * IRQF_SAMPLE_RANDOM The interrupt can be used for entropy 427 * IRQF_SAMPLE_RANDOM The interrupt can be used for entropy
428 * 428 *
429 */ 429 */
430int request_irq(unsigned int irq, 430int request_irq(unsigned int irq, irq_handler_t handler,
431 irqreturn_t (*handler)(int, void *, struct pt_regs *),
432 unsigned long irqflags, const char *devname, void *dev_id) 431 unsigned long irqflags, const char *devname, void *dev_id)
433{ 432{
434 struct irqaction *action; 433 struct irqaction *action;
@@ -475,4 +474,3 @@ int request_irq(unsigned int irq,
475 return retval; 474 return retval;
476} 475}
477EXPORT_SYMBOL(request_irq); 476EXPORT_SYMBOL(request_irq);
478