From 520e990873485a6338eb17cf67f83c383aa6408c Mon Sep 17 00:00:00 2001 From: Russell King Date: Sat, 6 Oct 2012 09:34:36 +0100 Subject: [PATCH] --- yaml --- r: 339177 b: refs/heads/master c: c533e51b228020142cd2c4d5f21e8db4683ce457 h: refs/heads/master i: 339175: eeb6a8fa9ea1eba820d67b3131a7708fb75159ed v: v3 --- [refs] | 2 +- trunk/drivers/tty/serial/omap-serial.c | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 7c188b1e97d7..aa2a88865e9a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c7d059cae31f328bbe2be6ab737226d338f22486 +refs/heads/master: c533e51b228020142cd2c4d5f21e8db4683ce457 diff --git a/trunk/drivers/tty/serial/omap-serial.c b/trunk/drivers/tty/serial/omap-serial.c index 7180ffc847e8..0d2671e66da4 100644 --- a/trunk/drivers/tty/serial/omap-serial.c +++ b/trunk/drivers/tty/serial/omap-serial.c @@ -898,16 +898,20 @@ serial_omap_set_termios(struct uart_port *port, struct ktermios *termios, else serial_out(up, UART_OMAP_MDR1, up->mdr1); - /* Enable access to TCR/TLR */ + /* Configure flow control */ serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B); + + /* XON1/XOFF1 accessible mode B, TCRTLR=0, ECB=0 */ + serial_out(up, UART_XON1, termios->c_cc[VSTART]); + serial_out(up, UART_XOFF1, termios->c_cc[VSTOP]); + + /* Enable access to TCR/TLR */ serial_out(up, UART_EFR, up->efr | UART_EFR_ECB); serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A); serial_out(up, UART_MCR, up->mcr | UART_MCR_TCRTLR); serial_out(up, UART_TI752_TCR, OMAP_UART_TCR_TRIG); - /* Hardware Flow Control Configuration */ - if (termios->c_cflag & CRTSCTS && up->port.flags & UPF_HARD_FLOW) { /* Enable AUTORTS and AUTOCTS */ up->efr |= UART_EFR_CTS | UART_EFR_RTS; @@ -925,9 +929,6 @@ serial_omap_set_termios(struct uart_port *port, struct ktermios *termios, serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B); serial_out(up, UART_EFR, up->efr); - serial_out(up, UART_XON1, termios->c_cc[VSTART]); - serial_out(up, UART_XOFF1, termios->c_cc[VSTOP]); - /* clear SW control mode bits */ up->efr &= OMAP_UART_SW_CLR;