SERIAL: omap: simplify
We have the sequence: - LCR mode B - write EFR with ECB clear - LCR mode normal - if s/w flow - LCR mode B - write EFR with ECB clear ... - LCR mode B - write EFR with ECB clear - LCR mode normal This can be simplified to: - if s/w flow - LCR mode B - write EFR with ECB clear ... - LCR mode B - write EFR with ECB clear - LCR mode normal Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
1fe8aa8803
commit
18f360f865
|
@ -917,19 +917,11 @@ serial_omap_set_termios(struct uart_port *port, struct ktermios *termios,
|
||||||
|
|
||||||
/* Disable access to TCR/TLR */
|
/* Disable access to TCR/TLR */
|
||||||
serial_out(up, UART_MCR, up->mcr);
|
serial_out(up, UART_MCR, up->mcr);
|
||||||
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
|
||||||
serial_out(up, UART_EFR, up->efr);
|
|
||||||
serial_out(up, UART_LCR, cval);
|
|
||||||
} else {
|
} else {
|
||||||
/* Disable AUTORTS and AUTOCTS */
|
/* Disable AUTORTS and AUTOCTS */
|
||||||
up->efr &= ~(UART_EFR_CTS | UART_EFR_RTS);
|
up->efr &= ~(UART_EFR_CTS | UART_EFR_RTS);
|
||||||
|
|
||||||
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
|
||||||
serial_out(up, UART_EFR, up->efr);
|
|
||||||
serial_out(up, UART_LCR, cval);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Software Flow Control Configuration */
|
|
||||||
if (up->port.flags & UPF_SOFT_FLOW) {
|
if (up->port.flags & UPF_SOFT_FLOW) {
|
||||||
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
||||||
serial_out(up, UART_EFR, up->efr);
|
serial_out(up, UART_EFR, up->efr);
|
||||||
|
@ -975,11 +967,12 @@ serial_omap_set_termios(struct uart_port *port, struct ktermios *termios,
|
||||||
serial_out(up, UART_TI752_TCR, OMAP_UART_TCR_TRIG);
|
serial_out(up, UART_TI752_TCR, OMAP_UART_TCR_TRIG);
|
||||||
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);
|
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_A);
|
||||||
serial_out(up, UART_MCR, up->mcr);
|
serial_out(up, UART_MCR, up->mcr);
|
||||||
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
|
||||||
serial_out(up, UART_EFR, up->efr);
|
|
||||||
serial_out(up, UART_LCR, up->lcr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
serial_out(up, UART_LCR, UART_LCR_CONF_MODE_B);
|
||||||
|
serial_out(up, UART_EFR, up->efr);
|
||||||
|
serial_out(up, UART_LCR, up->lcr);
|
||||||
|
|
||||||
serial_omap_set_mctrl(&up->port, up->port.mctrl);
|
serial_omap_set_mctrl(&up->port, up->port.mctrl);
|
||||||
|
|
||||||
spin_unlock_irqrestore(&up->port.lock, flags);
|
spin_unlock_irqrestore(&up->port.lock, flags);
|
||||||
|
|
Loading…
Reference in New Issue