summaryrefslogtreecommitdiff
path: root/drivers/tty
diff options
context:
space:
mode:
authorVikram Pandita <vikram.pandita@ti.com>2011-12-05 12:06:42 +0530
committerAndy Green <andy.green@linaro.org>2012-06-07 09:55:52 +0800
commit5809932e0c92388050113354d369672a7d0c150e (patch)
treea536296397a3bffcddfd425fb05e77ae82683f6f /drivers/tty
parentbf6db800449145b509cfc09b374379a02acf1cb0 (diff)
tty: serial: omap-serial: fix software flow control
Software flow control register bits were not defined correctly. Also clarify the IXON and IXOFF logic to reflect what userspace wants. Signed-off-by: Vikram Pandita <vikram.pandita@ti.com> Signed-off-by: Govindraj.R <govindraj.raja@ti.com>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/omap-serial.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
index bfd7ec5862e0..fc1c033bf7a2 100644
--- a/drivers/tty/serial/omap-serial.c
+++ b/drivers/tty/serial/omap-serial.c
@@ -649,19 +649,19 @@ serial_omap_configure_xonxoff
/*
* IXON Flag:
- * Enable XON/XOFF flow control on output.
- * Transmit XON1, XOFF1
+ * Flow control for OMAP.TX
+ * OMAP.RX should listen for XON/XOFF
*/
if (termios->c_iflag & IXON)
- up->efr |= OMAP_UART_SW_TX;
+ up->efr |= OMAP_UART_SW_RX;
/*
* IXOFF Flag:
- * Enable XON/XOFF flow control on input.
- * Receiver compares XON1, XOFF1.
+ * Flow control for OMAP.RX
+ * OMAP.TX should send XON/XOFF
*/
if (termios->c_iflag & IXOFF)
- up->efr |= OMAP_UART_SW_RX;
+ up->efr |= OMAP_UART_SW_TX;
serial_out(up, UART_EFR, up->efr | UART_EFR_ECB);
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);