tty: serial: fsl_lpuart: fix the wrong return value in lpuart32_get_mctrl
authorSherry Sun <sherry.sun@nxp.com>
Thu, 29 Jul 2021 08:31:09 +0000 (16:31 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 29 Jul 2021 15:05:59 +0000 (17:05 +0200)
commit06e91df16f3e1ca1a1886968fb22d4258f3b6b6f
tree1f45f2efecd0972494c79f9f8da3d1338cf7e334
parent7f0909db761535aefafa77031062603a71557267
tty: serial: fsl_lpuart: fix the wrong return value in lpuart32_get_mctrl

Patch e60c2991f18b make the lpuart32_get_mctrl always return 0, actually
this will break the functions of device which use flow control such as
Bluetooth.
For lpuart32 plaform, the hardware can handle the CTS automatically.
So we should set TIOCM_CTS active. Also need to set CAR and DSR active.

Patch has been tested on lpuart32 platforms such as imx8qm and imx8ulp.

Fixes: e60c2991f18b ("serial: fsl_lpuart: remove RTSCTS handling from get_mctrl()")
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Sherry Sun <sherry.sun@nxp.com>
Link: https://lore.kernel.org/r/20210729083109.31541-1-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/fsl_lpuart.c