diff options
author | Shaun Ruffell <sruffell@digium.com> | 2008-09-28 06:43:51 +0000 |
---|---|---|
committer | Shaun Ruffell <sruffell@digium.com> | 2008-09-28 06:43:51 +0000 |
commit | 01c1ed9a15ca81e2732c801c6697491046a0db9d (patch) | |
tree | 7fd2a5afe48a45c291739412ed511ddfa17169b0 /drivers | |
parent | fe97d6eadaf396c69e659e50ccfe548b0ed585fa (diff) |
Fixes failure of modular echo cancelers in DAHDI.
Reported by lots of people, fix suggested by mattf.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@5002 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/dahdi/dahdi-base.c | 2 | ||||
-rw-r--r-- | drivers/dahdi/dahdi_echocan_kb1.c | 1 | ||||
-rw-r--r-- | drivers/dahdi/dahdi_echocan_mg2.c | 1 | ||||
-rw-r--r-- | drivers/dahdi/dahdi_echocan_sec.c | 1 | ||||
-rw-r--r-- | drivers/dahdi/dahdi_echocan_sec2.c | 1 |
5 files changed, 5 insertions, 1 deletions
diff --git a/drivers/dahdi/dahdi-base.c b/drivers/dahdi/dahdi-base.c index b9661aa..34668cf 100644 --- a/drivers/dahdi/dahdi-base.c +++ b/drivers/dahdi/dahdi-base.c @@ -6484,7 +6484,7 @@ static inline void __dahdi_ec_chunk(struct dahdi_chan *ss, unsigned char *rxchun rxlins[x] = DAHDI_XLAW(rxchunk[x], ss); txlins[x] = DAHDI_XLAW(txchunk[x], ss); } - ss->ec_current->echo_can_array_update(ss->ec_state, rxlins, txlins); + ss->ec_current->echo_can_array_update(ss->ec_state, txlins, rxlins); for (x = 0; x < DAHDI_CHUNKSIZE; x++) rxchunk[x] = DAHDI_LIN2X((int) rxlins[x], ss); } diff --git a/drivers/dahdi/dahdi_echocan_kb1.c b/drivers/dahdi/dahdi_echocan_kb1.c index 2291261..b610d45 100644 --- a/drivers/dahdi/dahdi_echocan_kb1.c +++ b/drivers/dahdi/dahdi_echocan_kb1.c @@ -591,6 +591,7 @@ static void echo_can_update(struct echo_can_state *ec, short *iref, short *isig) for (x = 0; x < DAHDI_CHUNKSIZE; x++) { result = sample_update(ec, *iref, *isig); *isig++ = result; + ++iref; } } diff --git a/drivers/dahdi/dahdi_echocan_mg2.c b/drivers/dahdi/dahdi_echocan_mg2.c index c73001d..b365f78 100644 --- a/drivers/dahdi/dahdi_echocan_mg2.c +++ b/drivers/dahdi/dahdi_echocan_mg2.c @@ -728,6 +728,7 @@ static void echo_can_update(struct echo_can_state *ec, short *iref, short *isig) for (x = 0; x < DAHDI_CHUNKSIZE; x++) { result = sample_update(ec, *iref, *isig); *isig++ = result; + ++iref; } } diff --git a/drivers/dahdi/dahdi_echocan_sec.c b/drivers/dahdi/dahdi_echocan_sec.c index af85ca4..5dc80e0 100644 --- a/drivers/dahdi/dahdi_echocan_sec.c +++ b/drivers/dahdi/dahdi_echocan_sec.c @@ -280,6 +280,7 @@ static void echo_can_update(struct echo_can_state *ec, short *iref, short *isig) for (x = 0; x < DAHDI_CHUNKSIZE; x++) { result = sample_update(ec, *iref, *isig); *isig++ = result; + ++iref; } } /*- End of function --------------------------------------------------------*/ diff --git a/drivers/dahdi/dahdi_echocan_sec2.c b/drivers/dahdi/dahdi_echocan_sec2.c index 656a4e1..fa19b4c 100644 --- a/drivers/dahdi/dahdi_echocan_sec2.c +++ b/drivers/dahdi/dahdi_echocan_sec2.c @@ -287,6 +287,7 @@ static void echo_can_update(struct echo_can_state *ec, short *iref, short *isig) for (x = 0; x < DAHDI_CHUNKSIZE; x++) { result = sample_update(ec, *iref, *isig); *isig++ = result; + ++iref; } } /*- End of function --------------------------------------------------------*/ |