diff options
-rw-r--r-- | zaptel-base.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/zaptel-base.c b/zaptel-base.c index bf8c2ba..84b956b 100644 --- a/zaptel-base.c +++ b/zaptel-base.c @@ -593,6 +593,8 @@ static int zaptel_proc_read(char *page, char **start, off_t off, int count, int len += sprintf(page + len, "\tFAS error count: %d\n", spans[span]->fascount); if (spans[span]->irqmisses) len += sprintf(page + len, "\tIRQ misses: %d\n", spans[span]->irqmisses); + if (spans[span]->timingslips) + len += sprintf(page + len, "\tTiming slips: %d\n", spans[span]->timingslips); len += sprintf(page + len, "\n"); @@ -4780,7 +4782,8 @@ int zt_unregister(struct zt_span *span) #ifdef CONFIG_ZAP_UDEV for (x = 0; x < span->channels; x++) { - class_device_destroy(zap_class, MKDEV(ZT_MAJOR, span->chans[x].channo)); + if (span->chans[x].channo < 250) + class_device_destroy(zap_class, MKDEV(ZT_MAJOR, span->chans[x].channo)); } #endif /* CONFIG_ZAP_UDEV */ @@ -6424,7 +6427,7 @@ static inline void __zt_putbuf_chunk(struct zt_chan *ss, unsigned char *rxb) __putbuf_chunk(ss, rxb, ZT_CHUNKSIZE); } -void __zt_hdlc_abort(struct zt_chan *ss, int event) +static void __zt_hdlc_abort(struct zt_chan *ss, int event) { if (ss->inreadbuf >= 0) ss->readidx[ss->inreadbuf] = 0; @@ -6800,6 +6803,10 @@ int zt_transmit(struct zt_span *span) int x,y,z; unsigned long flags; +#ifdef ZAPTEL_SYNC_TICK + if (span->sync_tick) + span->sync_tick(span, span == master); +#endif #if 1 for (x=0;x<span->channels;x++) { spin_lock_irqsave(&span->chans[x].lock, flags); |