diff options
| author | Huang Shijie <[email protected]> | 2012-08-08 02:37:59 +0000 |
|---|---|---|
| committer | Greg Kroah-Hartman <[email protected]> | 2012-08-16 19:15:33 +0000 |
| commit | 00592021010ad86d3b26bac7034034f6af145a2c (patch) | |
| tree | ad64391844ab9a7cbfaf4a9b693ccd73586f75be /arch/powerpc/lib/code-patching.c | |
| parent | serial: ifx6x60: fix paging fault on spi_register_driver (diff) | |
| download | kernel-00592021010ad86d3b26bac7034034f6af145a2c.tar.gz kernel-00592021010ad86d3b26bac7034034f6af145a2c.zip | |
serial: mxs-auart: fix the wrong RTS hardware flow control
Without checking if the auart supports the hardware flow control or not,
the old mxs_auart_set_mctrl() asserted the RTS pin blindly.
This will causes the auart receives wrong data in the following case:
The far-end has already started the write operation, and wait for
the auart asserts the RTS pin. Then the auart starts the read operation,
but mxs_auart_set_mctrl() may be called before we set the RTSCTS in the
mxs_auart_settermios(). So the RTS pin is asserted in a wrong situation,
and we get the wrong data in the end.
This bug has been catched when I connect the mx23(DTE) to the mx53(DCE).
This patch also replaces the AUART_CTRL2_RTS with AUART_CTRL2_RTSEN.
We should use the real the hardware flow control, not the software-controled
hardware flow control.
Signed-off-by: Huang Shijie <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'arch/powerpc/lib/code-patching.c')
0 files changed, 0 insertions, 0 deletions
