OSDN Git Service

serial: imx: preserve characters with parity or framing errors
authorEric Nelson <eric.nelson@boundarydevices.com>
Thu, 18 Dec 2014 19:37:13 +0000 (12:37 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 9 Jan 2015 22:28:17 +0000 (14:28 -0800)
If IGNPAR/INPCK are clear in termios->c_iflag,  characters
received with parity or framing errors should be preserved
and passed to the upper layers of the tty stack.

Specifically, the decision of whether to set the character
value to zero should be made by n_tty.c/n_tty_receive_parity_error().

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/imx.c

index 72b800b..6ac22d7 100644 (file)
@@ -733,7 +733,7 @@ static irqreturn_t imx_rxint(int irq, void *dev_id)
                                continue;
                        }
 
-                       rx &= sport->port.read_status_mask;
+                       rx &= (sport->port.read_status_mask | 0xFF);
 
                        if (rx & URXD_BRK)
                                flg = TTY_BREAK;