aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2007-10-19 01:42:14 -0400
committerJeff Garzik <jeff@garzik.org>2007-10-23 19:53:15 -0400
commit3f2e40df0e1d7694224c3083b0bebd129039a40a (patch)
tree3d0d8c2a9dd1f873e5638a132abc5d40c6ff583b /include
parent01e7ae8c13bb06a2ce622ebace33bb7e28ef596c (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')
-rw-r--r--include/linux/parport.h6
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 *);
366extern struct parport *parport_find_number (int); 367extern struct parport *parport_find_number (int);
367extern struct parport *parport_find_base (unsigned long); 368extern struct parport *parport_find_base (unsigned long);
368 369
370/* generic irq handler, if it suits your needs */
371extern irqreturn_t parport_irq_handler(int irq, void *dev_id);
372
369/* Reference counting for ports. */ 373/* Reference counting for ports. */
370extern struct parport *parport_get_port (struct parport *); 374extern struct parport *parport_get_port (struct parport *);
371extern void parport_put_port (struct parport *); 375extern void parport_put_port (struct parport *);
@@ -514,7 +518,7 @@ extern void parport_daisy_deselect_all (struct parport *port);
514extern int parport_daisy_select (struct parport *port, int daisy, int mode); 518extern 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. */
517static __inline__ void parport_generic_irq(int irq, struct parport *port) 521static 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);