serial: imx: allow waking up on RTSD
authorEduardo Valentin <edubezval@gmail.com>
Tue, 11 Aug 2015 17:21:22 +0000 (10:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 15 Aug 2015 00:23:25 +0000 (17:23 -0700)
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>
drivers/tty/serial/imx.c

index 3c2b0ac..167dea1 100644 (file)
@@ -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)