summaryrefslogtreecommitdiff
path: root/wct1xxp.c
diff options
context:
space:
mode:
Diffstat (limited to 'wct1xxp.c')
-rwxr-xr-xwct1xxp.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/wct1xxp.c b/wct1xxp.c
index a90a19b..9dee855 100755
--- a/wct1xxp.c
+++ b/wct1xxp.c
@@ -1020,8 +1020,9 @@ static void __t1xxp_check_alarms(struct t1xxp *wc)
__t1_set_reg(wc, 0x0a, 0x40); /* Remote Loop */
wc->span.maintstat = ZT_MAINT_REMOTELOOP;
}
- } else
+ } else {
wc->loopupcnt = 0;
+ }
/* Same for loopdown code */
if ((!wc->span.mainttimer) && (c & 0x40)) {
/* Loop-down code detected */
@@ -1155,7 +1156,9 @@ static void t1xxp_interrupt(int irq, void *dev_id, struct pt_regs *regs)
__t1xxp_check_sigbits(wc, x);
break;
case 4:
- __t1xxp_check_alarms(wc);
+ /* Check alarms 1/4 as frequently */
+ if (!(wc->intcount & 0x30))
+ __t1xxp_check_alarms(wc);
break;
}