diff options
author | Alexander Shiyan <shc_work@mail.ru> | 2014-06-03 16:54:43 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-07-10 02:29:38 +0200 |
commit | 1fdc31065fdf95ded3b1960d1426e1da43b297ef (patch) | |
tree | 1648ff6e5def90c44c2f592e27ac14fe92cf1820 | |
parent | serial: samsung: no more support for S5PC100 SoC (diff) | |
download | linux-1fdc31065fdf95ded3b1960d1426e1da43b297ef.tar.xz linux-1fdc31065fdf95ded3b1960d1426e1da43b297ef.zip |
serial: core: Make enable_ms() optional
This patch makes enable_ms() optional, so we can eliminate a lot of
empty enable_ms() implementations from driver code.
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/tty/serial/serial_core.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c index fbf6c5ad222f..a0e2f9d63b9d 100644 --- a/drivers/tty/serial/serial_core.c +++ b/drivers/tty/serial/serial_core.c @@ -1050,6 +1050,15 @@ static int uart_do_autoconfig(struct tty_struct *tty,struct uart_state *state) return ret; } +static void uart_enable_ms(struct uart_port *uport) +{ + /* + * Force modem status interrupts on + */ + if (uport->ops->enable_ms) + uport->ops->enable_ms(uport); +} + /* * Wait for any of the 4 modem inputs (DCD,RI,DSR,CTS) to change * - mask passed in arg for lines of interest @@ -1073,11 +1082,7 @@ uart_wait_modem_status(struct uart_state *state, unsigned long arg) */ spin_lock_irq(&uport->lock); memcpy(&cprev, &uport->icount, sizeof(struct uart_icount)); - - /* - * Force modem status interrupts on - */ - uport->ops->enable_ms(uport); + uart_enable_ms(uport); spin_unlock_irq(&uport->lock); add_wait_queue(&port->delta_msr_wait, &wait); @@ -1508,7 +1513,7 @@ static int uart_carrier_raised(struct tty_port *port) struct uart_port *uport = state->uart_port; int mctrl; spin_lock_irq(&uport->lock); - uport->ops->enable_ms(uport); + uart_enable_ms(uport); mctrl = uport->ops->get_mctrl(uport); spin_unlock_irq(&uport->lock); if (mctrl & TIOCM_CAR) |