diff options
Diffstat (limited to 'wct1xxp.c')
-rwxr-xr-x | wct1xxp.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -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; } |