wctdm24xxp: Setup all VPMADT032 channels on hybrid cards.

r10160 "wctdm24xxp: Probe for and configure modules in parallel."
did not properly setup the VPMADT032 for all ports on hybrid cards.
The most immediate sympton being that spans 3 and up on a hybrid
card would not come up in Asterisk even though they were out of
alarm. This was because the echo canceler was blocking messages on
the dchannels.

This does not affect any previously released versions of DAHDI-Linux
or users of the VPMOCT032.

Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Acked-by: Michael Spiceland <mspiceland@digium.com>
Acked-by: Russ Meyerriecks <rmeyerriecks@digium.com>

git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10228 a0bf4364-ded3-4de4-8d8a-66a801d63aff
This commit is contained in:
Shaun Ruffell 2011-10-20 20:51:53 +00:00
parent f02b476fee
commit 534c7e7547
1 changed files with 9 additions and 1 deletions

View File

@ -4596,7 +4596,15 @@ static int wctdm_initialize_vpmadt032(struct wctdm *wc)
options.vpmnlptype = vpmnlptype;
options.vpmnlpthresh = vpmnlpthresh;
options.vpmnlpmaxsupp = vpmnlpmaxsupp;
options.channels = wc->desc->ports;
if (is_hx8(wc)) {
/* Hybrid cards potentially have 3 channels of EC on their
* ports since they may be BRI spans. */
options.channels = 3 * wc->desc->ports;
} else {
options.channels = wc->desc->ports;
}
BUG_ON(options.channels > 24);
wc->vpmadt032 = vpmadt032_alloc(&options);
if (!wc->vpmadt032)