From 72ebd88f1b541a42d347423c7c717355ee1f6a0c Mon Sep 17 00:00:00 2001 From: Al Viro Date: Mon, 5 Sep 2005 23:35:05 -0700 Subject: [PATCH] --- yaml --- r: 7135 b: refs/heads/master c: 3d9c994840f0e217c391871ddbb84a506d275658 h: refs/heads/master i: 7133: 2bf98c3c9a177529366e241516ffba5fd05423e9 7131: a65e1a89548bf41be9335f62998bc9f98a4a537e 7127: 4893215dc24656a5e07643abfe53b654ced512c4 7119: 6d56ee153ef344663de8a6266af1ea57429dd6c1 7103: b31ab85450fd4c505b25ca44f8a83dd79a3dd457 v: v3 --- [refs] | 2 +- trunk/drivers/serial/sunsu.c | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 4c1eff7a1487..4744f0658681 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e5e259466f2fe68251b1e1092949ef3d4dabb254 +refs/heads/master: 3d9c994840f0e217c391871ddbb84a506d275658 diff --git a/trunk/drivers/serial/sunsu.c b/trunk/drivers/serial/sunsu.c index 0cc879eb1c02..5959e6755a81 100644 --- a/trunk/drivers/serial/sunsu.c +++ b/trunk/drivers/serial/sunsu.c @@ -269,7 +269,10 @@ static void sunsu_stop_tx(struct uart_port *port) __stop_tx(up); - if (up->port.type == PORT_16C950 && tty_stop /*FIXME*/) { + /* + * We really want to stop the transmitter from sending. + */ + if (up->port.type == PORT_16C950) { up->acr |= UART_ACR_TXDIS; serial_icr_write(up, UART_ACR, up->acr); } @@ -283,10 +286,11 @@ static void sunsu_start_tx(struct uart_port *port) up->ier |= UART_IER_THRI; serial_out(up, UART_IER, up->ier); } + /* - * We only do this from uart_start + * Re-enable the transmitter if we disabled it. */ - if (tty_start && up->port.type == PORT_16C950 /*FIXME*/) { + if (up->port.type == PORT_16C950 && up->acr & UART_ACR_TXDIS) { up->acr &= ~UART_ACR_TXDIS; serial_icr_write(up, UART_ACR, up->acr); }