aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/serial_core.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-10-29 13:17:52 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-10-29 13:17:52 -0400
commit37cc6bb8f28aee667835a97b4d00e6a20e0e4b62 (patch)
tree86c8ad77595af96b5c9123a8664448956beb59a8 /drivers/tty/serial/serial_core.c
parent9af6f26a1a7f152f7736c0c20247eef0ab3df190 (diff)
parentd0f4bce2bce7e998abc906f3590e9032af7a41ba (diff)
Merge tag 'tty-4.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Pull tty/serial driver fixes from Greg KH: "Here are a number of small tty and serial driver fixes for reported issues for 4.9-rc3. Nothing major, but they do resolve a bunch of problems with the tty core changes that are in 4.9-rc1, and finally the atmel serial driver is back working properly. All have been in linux-next with no reported issues" * tag 'tty-4.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: tty: serial_core: fix NULL struct tty pointer access in uart_write_wakeup tty: serial_core: Fix serial console crash on port shutdown tty/serial: at91: fix hardware handshake on Atmel platforms vt: clear selection before resizing sc16is7xx: always write state when configuring GPIO as an output sh-sci: document R8A7743/5 support tty: serial: 8250: 8250_core: NXP SC16C2552 workaround tty: limit terminal size to 4M chars tty: serial: fsl_lpuart: Fix Tx DMA edge case serial: 8250_lpss: enable MSI for sure serial: core: fix console problems on uart_close serial: 8250_uniphier: fix clearing divisor latch access bit serial: 8250_uniphier: fix more unterminated string serial: pch_uart: add terminate entry for dmi_system_id tables devicetree: bindings: uart: Add new compatible string for ZynqMP serial: xuartps: Add new compatible string for ZynqMP serial: SERIAL_STM32 should depend on HAS_DMA serial: stm32: Fix comparisons with undefined register tty: vt, fix bogus division in csi_J
Diffstat (limited to 'drivers/tty/serial/serial_core.c')
-rw-r--r--drivers/tty/serial/serial_core.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
index 6e4f63627479..f2303f390345 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
@@ -111,7 +111,7 @@ void uart_write_wakeup(struct uart_port *port)
111 * closed. No cookie for you. 111 * closed. No cookie for you.
112 */ 112 */
113 BUG_ON(!state); 113 BUG_ON(!state);
114 tty_wakeup(state->port.tty); 114 tty_port_tty_wakeup(&state->port);
115} 115}
116 116
117static void uart_stop(struct tty_struct *tty) 117static void uart_stop(struct tty_struct *tty)
@@ -632,7 +632,7 @@ static void uart_flush_buffer(struct tty_struct *tty)
632 if (port->ops->flush_buffer) 632 if (port->ops->flush_buffer)
633 port->ops->flush_buffer(port); 633 port->ops->flush_buffer(port);
634 uart_port_unlock(port, flags); 634 uart_port_unlock(port, flags);
635 tty_wakeup(tty); 635 tty_port_tty_wakeup(&state->port);
636} 636}
637 637
638/* 638/*
@@ -2746,8 +2746,6 @@ int uart_add_one_port(struct uart_driver *drv, struct uart_port *uport)
2746 uport->cons = drv->cons; 2746 uport->cons = drv->cons;
2747 uport->minor = drv->tty_driver->minor_start + uport->line; 2747 uport->minor = drv->tty_driver->minor_start + uport->line;
2748 2748
2749 port->console = uart_console(uport);
2750
2751 /* 2749 /*
2752 * If this port is a console, then the spinlock is already 2750 * If this port is a console, then the spinlock is already
2753 * initialised. 2751 * initialised.
@@ -2761,6 +2759,8 @@ int uart_add_one_port(struct uart_driver *drv, struct uart_port *uport)
2761 2759
2762 uart_configure_port(drv, state, uport); 2760 uart_configure_port(drv, state, uport);
2763 2761
2762 port->console = uart_console(uport);
2763
2764 num_groups = 2; 2764 num_groups = 2;
2765 if (uport->attr_group) 2765 if (uport->attr_group)
2766 num_groups++; 2766 num_groups++;