mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-03 07:38:10 +00:00
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: René Bürgel <r.buergel@unicontrol.de> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
This commit is contained in:
parent
e51f47a5c6
commit
b65149880d
1 changed files with 8 additions and 2 deletions
|
@ -752,10 +752,15 @@ mpc52xx_uart_int_rx_chars(struct uart_port *port)
|
||||||
if (status & MPC52xx_PSC_SR_RB) {
|
if (status & MPC52xx_PSC_SR_RB) {
|
||||||
flag = TTY_BREAK;
|
flag = TTY_BREAK;
|
||||||
uart_handle_break(port);
|
uart_handle_break(port);
|
||||||
} else if (status & MPC52xx_PSC_SR_PE)
|
port->icount.brk++;
|
||||||
|
} else if (status & MPC52xx_PSC_SR_PE) {
|
||||||
flag = TTY_PARITY;
|
flag = TTY_PARITY;
|
||||||
else if (status & MPC52xx_PSC_SR_FE)
|
port->icount.parity++;
|
||||||
|
}
|
||||||
|
else if (status & MPC52xx_PSC_SR_FE) {
|
||||||
flag = TTY_FRAME;
|
flag = TTY_FRAME;
|
||||||
|
port->icount.frame++;
|
||||||
|
}
|
||||||
|
|
||||||
/* Clear error condition */
|
/* Clear error condition */
|
||||||
out_8(&PSC(port)->command, MPC52xx_PSC_RST_ERR_STAT);
|
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
|
* affect the current character
|
||||||
*/
|
*/
|
||||||
tty_insert_flip_char(tty, 0, TTY_OVERRUN);
|
tty_insert_flip_char(tty, 0, TTY_OVERRUN);
|
||||||
|
port->icount.overrun++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue