Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6514988 authored by René Bürgel's avatar René Bürgel Committed by Grant Likely
Browse files

powerpc/mpc5200: Make PSC UART driver update serial errors counters



This patch adds the capability to the mpc52xx-uart to report framing
errors, parity errors, breaks and overruns to userspace. These values
may be requested in userspace by using the ioctl TIOCGICOUNT.

Signed-off-by: default avatarRené Bürgel <r.buergel@unicontrol.de>
Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
parent e51f47a5
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -752,10 +752,15 @@ mpc52xx_uart_int_rx_chars(struct uart_port *port)
			if (status & MPC52xx_PSC_SR_RB) {
				flag = TTY_BREAK;
				uart_handle_break(port);
			} else if (status & MPC52xx_PSC_SR_PE)
				port->icount.brk++;
			} else if (status & MPC52xx_PSC_SR_PE) {
				flag = TTY_PARITY;
			else if (status & MPC52xx_PSC_SR_FE)
				port->icount.parity++;
			}
			else if (status & MPC52xx_PSC_SR_FE) {
				flag = TTY_FRAME;
				port->icount.frame++;
			}

			/* Clear error condition */
			out_8(&PSC(port)->command, MPC52xx_PSC_RST_ERR_STAT);
@@ -769,6 +774,7 @@ mpc52xx_uart_int_rx_chars(struct uart_port *port)
			 * affect the current character
			 */
			tty_insert_flip_char(tty, 0, TTY_OVERRUN);
			port->icount.overrun++;
		}
	}