aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/sio
diff options
context:
space:
mode:
authorAndrey A. Chernov <ache@FreeBSD.org>1994-02-02 16:41:26 +0000
committerAndrey A. Chernov <ache@FreeBSD.org>1994-02-02 16:41:26 +0000
commit04af1a4e416a8e6eda333e16406f024704d2dcbe (patch)
tree7538fffd65a9b670b6120e0416ea7bacff440a35 /sys/dev/sio
parentf5645fe75be9d4ab4b6cc50238789928d64af7de (diff)
Notes
Diffstat (limited to 'sys/dev/sio')
-rw-r--r--sys/dev/sio/sio.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/dev/sio/sio.c b/sys/dev/sio/sio.c
index bd63fa30f1c42..fdb91f9727d23 100644
--- a/sys/dev/sio/sio.c
+++ b/sys/dev/sio/sio.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* from: @(#)com.c 7.5 (Berkeley) 5/16/91
- * $Id: sio.c,v 1.24 1994/01/31 08:52:12 ache Exp $
+ * $Id: sio.c,v 1.25 1994/01/31 19:07:59 ache Exp $
*/
#include "sio.h"
@@ -872,16 +872,15 @@ siointr(unit)
possibly_more_intrs = FALSE;
for (unit = 0; unit < NSIO; ++unit) {
com = com_addr(unit);
- if (com != NULL
- && (inb(com->int_id_port) & IIR_IMASK)
- != IIR_NOPEND) {
+ if (com != NULL) {
/*
* XXX call comintr1() instead of here from
* comwakeup(). The interrupt edge problem
* only exists for real interrupts.
*/
comintr1(com);
- possibly_more_intrs = TRUE;
+ if ((inb(com->int_id_port) & IIR_IMASK) != IIR_NOPEND)
+ possibly_more_intrs = TRUE;
}
}
} while (possibly_more_intrs);