Kernel: bump to 4.4.44
[openwrt/openwrt.git] / target / linux / imx6 / patches-4.4 / 110-serial-imx-repair-and-complete-handshaking.patch
index 0a117f668fac536faf9ec0a3ec9e06977be4fddf..82715b0cda9098b1a3f7cec3a5f55ac0f448b3fd 100644 (file)
@@ -19,8 +19,6 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
  drivers/tty/serial/imx.c | 23 +++++++++++++++++------
  1 file changed, 17 insertions(+), 6 deletions(-)
 
-diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
-index 76818f5..086675e 100644
 --- a/drivers/tty/serial/imx.c
 +++ b/drivers/tty/serial/imx.c
 @@ -148,8 +148,11 @@
@@ -35,7 +33,7 @@ index 76818f5..086675e 100644
  #define USR2_RTSF      (1<<4)  /* RTS edge interrupt flag */
  #define USR2_TXDC      (1<<3)  /* Transmitter complete */
  #define USR2_BRCD      (1<<2)  /* Break condition */
-@@ -804,16 +807,19 @@ static unsigned int imx_tx_empty(struct uart_port *port)
+@@ -804,16 +807,19 @@ static unsigned int imx_tx_empty(struct
  static unsigned int imx_get_mctrl(struct uart_port *port)
  {
        struct imx_port *sport = (struct imx_port *)port;
@@ -49,19 +47,20 @@ index 76818f5..086675e 100644
  
 -      if (readl(sport->port.membase + UCR2) & UCR2_CTS)
 -              tmp |= TIOCM_RTS;
+-
+-      if (readl(sport->port.membase + uts_reg(sport)) & UTS_LOOP)
+-              tmp |= TIOCM_LOOP;
 +      /* in DCE mode DCDIN is always 0 */
 +      if (!(usr1 & USR2_DCDIN))
 +              tmp |= TIOCM_CAR;
--      if (readl(sport->port.membase + uts_reg(sport)) & UTS_LOOP)
--              tmp |= TIOCM_LOOP;
++
 +      /* in DCE mode RIIN is always 0 */
 +      if (readl(sport->port.membase + USR2) & USR2_RIIN)
 +              tmp |= TIOCM_RI;
  
        return tmp;
  }
-@@ -831,6 +837,11 @@ static void imx_set_mctrl(struct uart_port *port, unsigned int mctrl)
+@@ -831,6 +837,11 @@ static void imx_set_mctrl(struct uart_po
                writel(temp, sport->port.membase + UCR2);
        }
  
@@ -73,6 +72,3 @@ index 76818f5..086675e 100644
        temp = readl(sport->port.membase + uts_reg(sport)) & ~UTS_LOOP;
        if (mctrl & TIOCM_LOOP)
                temp |= UTS_LOOP;
--- 
-1.9.1
-