diff options
Diffstat (limited to 'drivers/serial/serial_txx9.c')
-rw-r--r-- | drivers/serial/serial_txx9.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/drivers/serial/serial_txx9.c b/drivers/serial/serial_txx9.c index 37b2ef297cbe..3f1051a4a13f 100644 --- a/drivers/serial/serial_txx9.c +++ b/drivers/serial/serial_txx9.c | |||
@@ -350,18 +350,9 @@ receive_chars(struct uart_txx9_port *up, unsigned int *status, struct pt_regs *r | |||
350 | } | 350 | } |
351 | if (uart_handle_sysrq_char(&up->port, ch, regs)) | 351 | if (uart_handle_sysrq_char(&up->port, ch, regs)) |
352 | goto ignore_char; | 352 | goto ignore_char; |
353 | if ((disr & up->port.ignore_status_mask) == 0) { | 353 | |
354 | tty_insert_flip_char(tty, ch, flag); | 354 | uart_insert_char(&up->port, disr, TXX9_SIDISR_UOER, ch, flag); |
355 | } | 355 | |
356 | if ((disr & TXX9_SIDISR_UOER) && | ||
357 | tty->flip.count < TTY_FLIPBUF_SIZE) { | ||
358 | /* | ||
359 | * Overrun is special, since it's reported | ||
360 | * immediately, and doesn't affect the current | ||
361 | * character. | ||
362 | */ | ||
363 | tty_insert_flip_char(tty, 0, TTY_OVERRUN); | ||
364 | } | ||
365 | ignore_char: | 356 | ignore_char: |
366 | disr = sio_in(up, TXX9_SIDISR); | 357 | disr = sio_in(up, TXX9_SIDISR); |
367 | } while (!(disr & TXX9_SIDISR_UVALID) && (max_count-- > 0)); | 358 | } while (!(disr & TXX9_SIDISR_UVALID) && (max_count-- > 0)); |