diff options
Diffstat (limited to '')
-rw-r--r-- | cpukit/libcsupport/src/termios.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/cpukit/libcsupport/src/termios.c b/cpukit/libcsupport/src/termios.c index 829c2bf158..fe006219dd 100644 --- a/cpukit/libcsupport/src/termios.c +++ b/cpukit/libcsupport/src/termios.c @@ -4,16 +4,11 @@ */ /* - * Author: - * W. Eric Norum - * Saskatchewan Accelerator Laboratory - * University of Saskatchewan - * Saskatoon, Saskatchewan, CANADA - * eric@skatter.usask.ca + * Copyright (c) 1997 Eric Norum <eric@norum.ca> * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.org/license/LICENSE. */ #ifdef HAVE_CONFIG_H @@ -1969,6 +1964,7 @@ rtems_termios_dequeue_characters (void *ttyp, int len) /* * send wake up to transmitter task */ + tty->txTaskCharsDequeued = len; sc = rtems_event_send(tty->txTaskId, TERMIOS_TX_START_EVENT); if (sc != RTEMS_SUCCESSFUL) rtems_fatal_error_occurred (sc); @@ -1980,7 +1976,7 @@ rtems_termios_dequeue_characters (void *ttyp, int len) * call PPP line discipline start function */ if (rtems_termios_linesw[tty->t_line].l_start != NULL) { - rtems_termios_linesw[tty->t_line].l_start(tty); + rtems_termios_linesw[tty->t_line].l_start(tty, len); } return 0; /* nothing to output in IRQ... */ } @@ -2015,7 +2011,7 @@ static rtems_task rtems_termios_txdaemon(rtems_task_argument argument) * call any line discipline start function */ if (rtems_termios_linesw[tty->t_line].l_start != NULL) { - rtems_termios_linesw[tty->t_line].l_start(tty); + rtems_termios_linesw[tty->t_line].l_start(tty, tty->txTaskCharsDequeued); if (tty->t_line == PPPDISC) { /* |