aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/serial_8250.h
diff options
context:
space:
mode:
authorPaul Gortmaker <paul.gortmaker@windriver.com>2011-12-04 18:42:20 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2011-12-09 22:14:13 -0500
commit3986fb2ba67bb30cac18b0cff48c88d69ad37681 (patch)
treeca29a9b2338245a681a8956d94557a9022f38155 /include/linux/serial_8250.h
parent0690f41fddd285c3473e4af2a42d15bce7ff3e68 (diff)
serial: export the key functions for an 8250 IRQ handler
For drivers that need to construct their own IRQ handler, the three components are seen in the current handle_port -- i.e. Rx, Tx and modem_status. Make these exported symbols so that "almost" 8250 UARTs can construct their own IRQ handler with these shared components, while working around their own unique errata issues. The function names are given a serial8250 prefix, since they are now entering the global namespace. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/serial_8250.h')
-rw-r--r--include/linux/serial_8250.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/serial_8250.h b/include/linux/serial_8250.h
index 1f05bbeac01e..b44034eca123 100644
--- a/include/linux/serial_8250.h
+++ b/include/linux/serial_8250.h
@@ -66,6 +66,7 @@ enum {
66 * dependent on the 8250 driver. 66 * dependent on the 8250 driver.
67 */ 67 */
68struct uart_port; 68struct uart_port;
69struct uart_8250_port;
69 70
70int serial8250_register_port(struct uart_port *); 71int serial8250_register_port(struct uart_port *);
71void serial8250_unregister_port(int line); 72void serial8250_unregister_port(int line);
@@ -82,6 +83,9 @@ extern void serial8250_do_set_termios(struct uart_port *port,
82extern void serial8250_do_pm(struct uart_port *port, unsigned int state, 83extern void serial8250_do_pm(struct uart_port *port, unsigned int state,
83 unsigned int oldstate); 84 unsigned int oldstate);
84int serial8250_handle_irq(struct uart_port *port, unsigned int iir); 85int serial8250_handle_irq(struct uart_port *port, unsigned int iir);
86unsigned char serial8250_rx_chars(struct uart_8250_port *up, unsigned char lsr);
87void serial8250_tx_chars(struct uart_8250_port *up);
88unsigned int serial8250_modem_status(struct uart_8250_port *up);
85 89
86extern void serial8250_set_isa_configurator(void (*v) 90extern void serial8250_set_isa_configurator(void (*v)
87 (int port, struct uart_port *up, 91 (int port, struct uart_port *up,