diff options
| author | Jeff Garzik <jeff@garzik.org> | 2007-10-19 01:42:14 -0400 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2007-10-23 19:53:15 -0400 |
| commit | 3f2e40df0e1d7694224c3083b0bebd129039a40a (patch) | |
| tree | 3d0d8c2a9dd1f873e5638a132abc5d40c6ff583b /include/linux | |
| parent | 01e7ae8c13bb06a2ce622ebace33bb7e28ef596c (diff) | |
[PARPORT] Consolidate code copies into a single generic irq handler
Several arches used the exact same code for their parport irq handling.
Make that code generic, in parport_irq_handler().
Also, s/__inline__/inline/ in include/linux/parport.h.
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/parport.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/parport.h b/include/linux/parport.h index ec3f76598327..66026eab10c7 100644 --- a/include/linux/parport.h +++ b/include/linux/parport.h | |||
| @@ -100,6 +100,7 @@ typedef enum { | |||
| 100 | #include <linux/proc_fs.h> | 100 | #include <linux/proc_fs.h> |
| 101 | #include <linux/spinlock.h> | 101 | #include <linux/spinlock.h> |
| 102 | #include <linux/wait.h> | 102 | #include <linux/wait.h> |
| 103 | #include <linux/irqreturn.h> | ||
| 103 | #include <asm/system.h> | 104 | #include <asm/system.h> |
| 104 | #include <asm/ptrace.h> | 105 | #include <asm/ptrace.h> |
| 105 | #include <asm/semaphore.h> | 106 | #include <asm/semaphore.h> |
| @@ -366,6 +367,9 @@ extern void parport_unregister_driver (struct parport_driver *); | |||
| 366 | extern struct parport *parport_find_number (int); | 367 | extern struct parport *parport_find_number (int); |
| 367 | extern struct parport *parport_find_base (unsigned long); | 368 | extern struct parport *parport_find_base (unsigned long); |
| 368 | 369 | ||
| 370 | /* generic irq handler, if it suits your needs */ | ||
| 371 | extern irqreturn_t parport_irq_handler(int irq, void *dev_id); | ||
| 372 | |||
| 369 | /* Reference counting for ports. */ | 373 | /* Reference counting for ports. */ |
| 370 | extern struct parport *parport_get_port (struct parport *); | 374 | extern struct parport *parport_get_port (struct parport *); |
| 371 | extern void parport_put_port (struct parport *); | 375 | extern void parport_put_port (struct parport *); |
| @@ -514,7 +518,7 @@ extern void parport_daisy_deselect_all (struct parport *port); | |||
| 514 | extern int parport_daisy_select (struct parport *port, int daisy, int mode); | 518 | extern int parport_daisy_select (struct parport *port, int daisy, int mode); |
| 515 | 519 | ||
| 516 | /* Lowlevel drivers _can_ call this support function to handle irqs. */ | 520 | /* Lowlevel drivers _can_ call this support function to handle irqs. */ |
| 517 | static __inline__ void parport_generic_irq(int irq, struct parport *port) | 521 | static inline void parport_generic_irq(int irq, struct parport *port) |
| 518 | { | 522 | { |
| 519 | parport_ieee1284_interrupt (irq, port); | 523 | parport_ieee1284_interrupt (irq, port); |
| 520 | read_lock(&port->cad_lock); | 524 | read_lock(&port->cad_lock); |
