Merged from sys/dev/sio/sio.c revision 1.378.

This commit is contained in:
Yoshihiro Takahashi 2002-09-16 07:14:02 +00:00
parent 49e387d30b
commit 14955691c1
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=103380
2 changed files with 12 additions and 2 deletions

View file

@ -1948,6 +1948,7 @@ sioopen(dev, flag, mode, td)
* XXX we should goto open_top if comparam() slept.
*/
if (com->hasfifo) {
int i;
/*
* (Re)enable and drain fifos.
*
@ -1959,7 +1960,7 @@ sioopen(dev, flag, mode, td)
* and to handle races between enabling and fresh
* input.
*/
while (TRUE) {
for (i = 0; i < 500; i++) {
sio_setreg(com, com_fifo,
FIFO_RCV_RST | FIFO_XMT_RST
| com->fifo_image);
@ -1992,6 +1993,10 @@ sioopen(dev, flag, mode, td)
DELAY(50);
(void) inb(com->data_port);
}
if (i == 500) {
error = EIO;
goto out;
}
}
mtx_lock_spin(&sio_lock);

View file

@ -1948,6 +1948,7 @@ sioopen(dev, flag, mode, td)
* XXX we should goto open_top if comparam() slept.
*/
if (com->hasfifo) {
int i;
/*
* (Re)enable and drain fifos.
*
@ -1959,7 +1960,7 @@ sioopen(dev, flag, mode, td)
* and to handle races between enabling and fresh
* input.
*/
while (TRUE) {
for (i = 0; i < 500; i++) {
sio_setreg(com, com_fifo,
FIFO_RCV_RST | FIFO_XMT_RST
| com->fifo_image);
@ -1992,6 +1993,10 @@ sioopen(dev, flag, mode, td)
DELAY(50);
(void) inb(com->data_port);
}
if (i == 500) {
error = EIO;
goto out;
}
}
mtx_lock_spin(&sio_lock);