aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJamie Iles <jamie@jamieiles.com>2011-08-15 05:17:51 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-08-23 13:52:58 -0400
commita74036f51272975e9538e80cd1bb64dce164b208 (patch)
treefd2cf8d07497836aee616467d3fa410d33b78db0
parent2a8d7bddf273477d6aa81405c9b4bae223e11ed9 (diff)
tty: serial: allow ports to override the irq handler
Some serial ports may have unusal requirements for interrupt handling (e.g. the Synopsys DesignWare 8250-alike port and it's busy detect interrupt). Add a .handle_irq callback that can be used for platforms to override the interrupt behaviour in a similar fashion to the .serial_out and .serial_in callbacks. Signed-off-by: Jamie Iles <jamie@jamieiles.com> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--include/linux/serial_core.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
index 76e110363745..c31ae43c073d 100644
--- a/include/linux/serial_core.h
+++ b/include/linux/serial_core.h
@@ -300,6 +300,7 @@ struct uart_port {
300 void (*set_termios)(struct uart_port *, 300 void (*set_termios)(struct uart_port *,
301 struct ktermios *new, 301 struct ktermios *new,
302 struct ktermios *old); 302 struct ktermios *old);
303 int (*handle_irq)(struct uart_port *);
303 void (*pm)(struct uart_port *, unsigned int state, 304 void (*pm)(struct uart_port *, unsigned int state,
304 unsigned int old); 305 unsigned int old);
305 unsigned int irq; /* irq number */ 306 unsigned int irq; /* irq number */