serial: imx: Update cached mctrl value when changing RTS
authorIan Jamison <ian.dev@arkver.com>
Thu, 21 Sep 2017 08:13:12 +0000 (10:13 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 3 Oct 2017 18:23:38 +0000 (20:23 +0200)
commita0983c742a5885f82afb282166f83f1d3d8addf4
tree370d1373d957b4b961b511609053d3f2c709c0d9
parent8b25deb18ba3f9b1af1ff9395b8de2bdb9d9fdbf
serial: imx: Update cached mctrl value when changing RTS

UART core function uart_update_mctrl relies on a cached value of
modem control lines. This was used but not updated by local RTS
control functions within imx.c. These are used for RS485 line
driver enable signalling. Having an out-of-date value in the cached
mctrl can result in the transmitter being enabled when it shouldn't
be.

Fix this by updating the mctrl value before applying it.

Signed-off-by: Ian Jamison <ian.dev@arkver.com>
Origin: id:8195c96e674517b82a6ff7fe914c7ba0f86e702b.1505375165.git.ian.dev@arkver.com
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Tested-by: Clemens Gruber <clemens.gruber@pqgruber.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/imx.c