summaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial
diff options
context:
space:
mode:
authorEduardo Valentin2015-08-11 19:21:22 +0200
committerGreg Kroah-Hartman2015-08-15 02:23:25 +0200
commitbc85734b126f813ba46265c2d3a84c8839cb2e54 (patch)
treee8afe1708ace1d91d542335b71f49923a5d27628 /drivers/tty/serial
parentserial: imx: introduce serial_imx_enable_wakeup() (diff)
downloadkernel-qcow2-linux-bc85734b126f813ba46265c2d3a84c8839cb2e54.tar.gz
kernel-qcow2-linux-bc85734b126f813ba46265c2d3a84c8839cb2e54.tar.xz
kernel-qcow2-linux-bc85734b126f813ba46265c2d3a84c8839cb2e54.zip
serial: imx: allow waking up on RTSD
This patch sets RTSDEN bit when going into idle (Stop mode). We add the RTSDEN for the case RTS is sent from the remote connection. This way we allow the system to wakeup when RTS is received. Cc: Fabio Stevam <festevam@gmail.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jiri Slaby <jslaby@suse.com> Cc: linux-serial@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Eduardo Valentin <edubezval@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial')
-rw-r--r--drivers/tty/serial/imx.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 3c2b0aca7d0e..167dea1adf90 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1982,6 +1982,13 @@ static void serial_imx_enable_wakeup(struct imx_port *sport, bool on)
else
val &= ~UCR3_AWAKEN;
writel(val, sport->port.membase + UCR3);
+
+ val = readl(sport->port.membase + UCR1);
+ if (on)
+ val |= UCR1_RTSDEN;
+ else
+ val &= ~UCR1_RTSDEN;
+ writel(val, sport->port.membase + UCR1);
}
static int imx_serial_port_suspend_noirq(struct device *dev)