summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTzafrir Cohen <tzafrir.cohen@xorcom.com>2010-01-10 09:53:34 +0000
committerTzafrir Cohen <tzafrir.cohen@xorcom.com>2010-01-10 09:53:34 +0000
commit9d629f9af9d5ebb8829793e2a7f5252cd10b8fb3 (patch)
tree9284562f787df6c3e50b0288a382155a54d9b27e
parent8ed48876305e23ca69723aba8fa5f1465a794d9d (diff)
xpp: fixes for drift calculation.
Should help for the case of multiple quad-PRI Astribanks on a single system. xpp rev: 7666. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@7807 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-rw-r--r--drivers/dahdi/xpp/xbus-pcm.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/dahdi/xpp/xbus-pcm.c b/drivers/dahdi/xpp/xbus-pcm.c
index fb41761..d16ca3a 100644
--- a/drivers/dahdi/xpp/xbus-pcm.c
+++ b/drivers/dahdi/xpp/xbus-pcm.c
@@ -213,9 +213,10 @@ static void xpp_drift_step(xbus_t *xbus, const struct timeval *tv)
lost_ticks,
(abs(lost_ticks) > 1) ? "s": "");
}
- xbus_drift_clear(xbus);
- if(abs(lost_ticks) > 100)
+ if(abs(lost_ticks) > 100) {
+ xbus_drift_clear(xbus);
ticker->count = ref_ticker->count;
+ }
} else {
/* Sample a delta */
usec_delta = (long)usec_diff(