sunsu had been broken by ->stop_tx/->start_tx API changes.

Signed-off-by: Al Viro <[EMAIL PROTECTED]>
----
diff -urN RC13-git5-sata_qstor/drivers/serial/sunsu.c 
RC13-git5-sunsu/drivers/serial/sunsu.c
--- RC13-git5-sata_qstor/drivers/serial/sunsu.c 2005-09-05 07:05:15.000000000 
-0400
+++ RC13-git5-sunsu/drivers/serial/sunsu.c      2005-09-05 16:41:08.000000000 
-0400
@@ -269,7 +269,10 @@
 
        __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 @@
                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);
        }
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to