summaryrefslogtreecommitdiffstats
path: root/include/asm-m68k/serial.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-m68k/serial.h')
-rw-r--r--include/asm-m68k/serial.h14
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;