1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00

Fixes for new TTY_BI & TTY_OE

This commit is contained in:
Andrey A. Chernov 1995-03-29 21:26:37 +00:00
parent 736277a951
commit bb34201c6a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=7476

View File

@ -782,16 +782,21 @@ int cxrinta (cx_chan_t *c)
if (risr & RIS_BUSERR)
printf ("cx%d.%d: receive bus error\n", c->board->num, c->num);
if (risr & (RIS_OVERRUN | RISA_PARERR | RISA_FRERR)) {
print (("cx%d.%d: receive error\n", c->board->num, c->num));
if (tp && (tp->t_state & TS_ISOPEN))
(*linesw[tp->t_line].l_rint) (' ' |
(risr & RISA_FRERR) ? TTY_FE : TTY_PE, tp);
}
if (risr & (RIS_OVERRUN | RISA_PARERR | RISA_FRERR | RISA_BREAK)) {
int err = 0;
/* Handle line break condition. */
if ((risr & RISA_BREAK) && tp && (tp->t_state & TS_ISOPEN))
(*linesw[tp->t_line].l_rint) (TTY_FE, tp);
if (risr & RISA_OVERRUN)
err |= TTY_OE;
if (risr & RISA_PARERR)
err |= TTY_PE;
if (risr & RISA_FRERR)
err |= TTY_FE;
if (risr & RISA_BREAK)
err |= TTY_BI;
print (("cx%d.%d: receive error %x\n", c->board->num, c->num, err));
if (tp && (tp->t_state & TS_ISOPEN))
(*linesw[tp->t_line].l_rint) (err, tp);
}
/* Discard exception characters. */
if ((risr & RISA_SCMASK) && (tp->t_iflag & IXON))