serial: imx: Fix issue in software flow control

After send out x_char in UART driver, x_char needs to be cleared
by UART driver itself, otherwise data in TXFIFO can no longer be
sent out.
Also tx counter needs to be increased to keep track of correct
number of transmitted data.

Signed-off-by: Jiada Wang <jiada_wang@mentor.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Jiada Wang 2014-12-09 18:11:35 +09:00 committed by Greg Kroah-Hartman
parent 6f026d6b7c
commit 7e2fb5aa8d

View File

@ -471,6 +471,8 @@ static inline void imx_transmit_buffer(struct imx_port *sport)
if (sport->port.x_char) {
/* Send next char */
writel(sport->port.x_char, sport->port.membase + URTX0);
sport->port.icount.tx++;
sport->port.x_char = 0;
return;
}