diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2005-09-05 23:35:05 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-09-05 23:35:05 -0700 |
commit | 3d9c994840f0e217c391871ddbb84a506d275658 (patch) | |
tree | 982de5c45f41b6372f722fc3339f28be84c2efe9 /drivers/serial/sunsu.c | |
parent | e5e259466f2fe68251b1e1092949ef3d4dabb254 (diff) | |
download | op-kernel-dev-3d9c994840f0e217c391871ddbb84a506d275658.zip op-kernel-dev-3d9c994840f0e217c391871ddbb84a506d275658.tar.gz |
[SUNSU]: Compile fixes.
sunsu had been broken by ->stop_tx/->start_tx API changes.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/serial/sunsu.c')
-rw-r--r-- | drivers/serial/sunsu.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c index 0cc879e..5959e67 100644 --- a/drivers/serial/sunsu.c +++ b/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); } |