summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Meyerriecks <rmeyerreicks@digium.com>2011-12-02 22:48:39 +0000
committerRuss Meyerriecks <rmeyerreicks@digium.com>2011-12-02 22:48:39 +0000
commit3493e650510d08cdb097f4b6123be83798f8c218 (patch)
tree24a6085794acccd01e6d798fabca89b082ed77e9
parent2eda662e8d15f68c8829a4f0718cde04215cdcb8 (diff)
wct4xxp: Handle incorrect vpm module/card pairings
Signed-off-by: Russ Meyerriecks <rmeyerriecks@digium.com> Acked-by: Shaun Ruffell <sruffell@digium.com> git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10364 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-rw-r--r--drivers/dahdi/wct4xxp/base.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/dahdi/wct4xxp/base.c b/drivers/dahdi/wct4xxp/base.c
index 1731eaa..bc9a06d 100644
--- a/drivers/dahdi/wct4xxp/base.c
+++ b/drivers/dahdi/wct4xxp/base.c
@@ -4185,7 +4185,15 @@ static void t4_vpm450_init(struct t4 *wc)
laws[x] = 1;
}
- switch ((vpm_capacity = get_vpm450m_capacity(wc))) {
+ vpm_capacity = get_vpm450m_capacity(wc);
+ if (vpm_capacity != wc->numspans * 32) {
+ dev_info(&wc->dev->dev, "Disabling VPMOCT%03d. TE%dXXP"\
+ " requires a VPMOCT%03d", vpm_capacity,
+ wc->numspans, wc->numspans*32);
+ return;
+ }
+
+ switch (vpm_capacity) {
case 64:
#if defined(HOTPLUG_FIRMWARE)
if ((request_firmware(&firmware, oct064_firmware, &wc->dev->dev) != 0) ||