diff options
Diffstat (limited to 'ztdynamic.c')
-rwxr-xr-x | ztdynamic.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ztdynamic.c b/ztdynamic.c index c931246..149fdbe 100755 --- a/ztdynamic.c +++ b/ztdynamic.c @@ -201,11 +201,16 @@ static void ztdynamic_run(void) { long flags; struct zt_dynamic *z; + int y; spin_lock_irqsave(&dlock, flags); z = dspans; while(z) { if (!z->dead) { /* Ignore dead spans */ + for (y=0;y<z->span.channels;y++) { + /* Echo cancel double buffered data */ + zt_ec_chunk(&z->span.chans[y], z->span.chans[y].readchunk, z->span.chans[y].writechunk); + } zt_receive(&z->span); zt_transmit(&z->span); /* Handle all transmissions now */ |