diff options
Diffstat (limited to 'include/asm-m68k/serial.h')
-rw-r--r-- | include/asm-m68k/serial.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/include/asm-m68k/serial.h b/include/asm-m68k/serial.h index 191c5d551..a5f0abeb3 100644 --- a/include/asm-m68k/serial.h +++ b/include/asm-m68k/serial.h @@ -336,9 +336,21 @@ static __inline__ void rs_receive_char( struct m68k_async_struct *info, if (tty->flip.count >= TTY_FLIPBUF_SIZE) return; tty->flip.count++; - if (err == TTY_BREAK) { + switch(err) { + case TTY_BREAK: + info->icount.brk++; if (info->flags & ASYNC_SAK) do_SAK(tty); + break; + case TTY_PARITY: + info->icount.parity++; + break; + case TTY_OVERRUN: + info->icount.overrun++; + break; + case TTY_FRAME: + info->icount.frame++; + break; } *tty->flip.flag_buf_ptr++ = err; *tty->flip.char_buf_ptr++ = ch; |