summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/ic/rtl81x9.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/sys/dev/ic/rtl81x9.c b/sys/dev/ic/rtl81x9.c
index fcf63673fce..8e07123c8b2 100644
--- a/sys/dev/ic/rtl81x9.c
+++ b/sys/dev/ic/rtl81x9.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rtl81x9.c,v 1.53 2006/09/29 22:22:33 brad Exp $ */
+/* $OpenBSD: rtl81x9.c,v 1.54 2006/10/15 19:06:38 deraadt Exp $ */
/*
* Copyright (c) 1997, 1998
@@ -817,25 +817,19 @@ int rl_intr(arg)
break;
if (status != 0)
CSR_WRITE_2(sc, RL_ISR, status);
-
if ((status & RL_INTRS) == 0)
break;
-
- if ((status & RL_ISR_RX_OK) ||
- (status & RL_ISR_RX_ERR)) {
+ if (status & RL_ISR_RX_OK)
rl_rxeof(sc);
- claimed = 1;
- }
- if ((status & RL_ISR_TX_OK) ||
- (status & RL_ISR_TX_ERR)) {
+ if (status & RL_ISR_RX_ERR)
+ rl_rxeof(sc);
+ if ((status & RL_ISR_TX_OK) || (status & RL_ISR_TX_ERR))
rl_txeof(sc);
- claimed = 1;
- }
if (status & RL_ISR_SYSTEM_ERR) {
rl_reset(sc);
rl_init(sc);
- claimed = 1;
}
+ claimed = 1;
}
/* Re-enable interrupts. */