diff options
| author | Bruce Evans <bde@FreeBSD.org> | 2003-11-17 07:21:19 +0000 |
|---|---|---|
| committer | Bruce Evans <bde@FreeBSD.org> | 2003-11-17 07:21:19 +0000 |
| commit | c0952034c3cd5058ac188c365b1237d9ec37bdc4 (patch) | |
| tree | 62b6d7428521dfbd2ef4aa5f1f6f7c60c8d273b8 | |
| parent | 170f8503435ebb3108c61d1a878716973d979a7a (diff) | |
Notes
| -rw-r--r-- | sys/dev/sio/sio.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/dev/sio/sio.c b/sys/dev/sio/sio.c index 42c285b9af71..1e06b59fdc69 100644 --- a/sys/dev/sio/sio.c +++ b/sys/dev/sio/sio.c @@ -1868,6 +1868,10 @@ if (com->iptr - com->ibuf == 8) CE_RECORD(com, CE_OVERRUN); } cont: + if (line_status & LSR_TXRDY + && com->state >= (CS_BUSY | CS_TTGO | CS_ODEVREADY)) + goto txrdy; + /* * "& 0x7F" is to avoid the gcc-1.40 generating a slow * jump from the top of the loop to here @@ -1905,6 +1909,7 @@ cont: } } +txrdy: /* output queued and everything ready? */ if (line_status & LSR_TXRDY && com->state >= (CS_BUSY | CS_TTGO | CS_ODEVREADY)) { |
