serial: 8250_dw: Fix get_mctrl behaviour
authorDesmond Liu <desmondl@broadcom.com>
Fri, 27 Feb 2015 00:35:57 +0000 (16:35 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 7 Mar 2015 02:06:51 +0000 (03:06 +0100)
commitdfd37668ea6d5029fb5d8a66ea5e202d0655fad7
tree5756f16796a97d4061fe9a3396b08b4781610afd
parent7cf91108d44dbef3d48766fd0e7f7347c2e48bda
serial: 8250_dw: Fix get_mctrl behaviour

Fixed behaviour of get_mctrl() serial driver function as documented in:
https://www.kernel.org/doc/Documentation/serial/driver

Added device-tree properties 'dcd-override', 'dsr-override',
'cts-override', and 'ri-override' specific to the Synopsis 8250
DesignWare UART driver. Allows one to force Data Carrier Detect,
Clear To Send, and Data Set Ready signals to permanently be reported as
active. The Ring indicator can be forced to be reported as inactive.

It is possible that if modem control signalling is enabled on a port
that doesn't have these pins (e.g. - a simple two wire Tx/Rx port), the
driver can hang indefinitely waiting for the state to change. The new
DT properties allow the driver to ignore the state of these pins on
serial ports that don't support them, as recommended in the kernel
documentation.

Reviewed-by: JD (Jiandong) Zheng <jdzheng@broadcom.com>
Signed-off-by: Jonathan Richardson <jonathar@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/devicetree/bindings/serial/snps-dw-apb-uart.txt
drivers/tty/serial/8250/8250_dw.c