diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-10-07 16:25:43 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2014-10-07 16:35:20 +0200 |
commit | 77dd9a4f8a5ef1c6c0356aa8e10bdae46997681b (patch) | |
tree | 7082679df016dfc2614b4f1403c1c73061e93851 /cpukit/libnetworking/net | |
parent | libchip/serial: Task driven mode for NS16550 (diff) | |
download | rtems-77dd9a4f8a5ef1c6c0356aa8e10bdae46997681b.tar.bz2 |
ppp: Nothing to transmit hint for Termios driver
Diffstat (limited to 'cpukit/libnetworking/net')
-rw-r--r-- | cpukit/libnetworking/net/ppp_tty.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cpukit/libnetworking/net/ppp_tty.c b/cpukit/libnetworking/net/ppp_tty.c index 85a336cbf4..10510488f8 100644 --- a/cpukit/libnetworking/net/ppp_tty.c +++ b/cpukit/libnetworking/net/ppp_tty.c @@ -577,6 +577,10 @@ pppstart(struct rtems_termios_tty *tp) /* Ready with PPP_FLAG Character ? */ if(sc->sc_outflag & SC_TX_LASTCHAR){ sc->sc_outflag &= ~(SC_TX_BUSY | SC_TX_FCS | SC_TX_LASTCHAR); + + /* Notify driver that we have nothing to transmit */ + (*tp->handler.write)(ctx, NULL, 0); + rtems_event_send(sc->sc_txtask, TX_TRANSMIT); /* Ready for the next Packet */ return(0); } @@ -647,10 +651,15 @@ pppstart(struct rtems_termios_tty *tp) (*tp->handler.write)(ctx, (char *)sendBegin, (ioffset > 0) ? ioffset : 1); sc->sc_stats.ppp_obytes += (ioffset > 0) ? ioffset : 1; sc->sc_outoff += ioffset; + + return (0); } } - return ( 0 ); + /* Notify driver that we have nothing to transmit */ + (*tp->handler.write)(ctx, NULL, 0); + + return (0); } #ifdef XXX_XXX |