diff options
author | Russ Meyerriecks <rmeyerreicks@digium.com> | 2011-12-02 22:48:39 +0000 |
---|---|---|
committer | Russ Meyerriecks <rmeyerreicks@digium.com> | 2011-12-02 22:48:39 +0000 |
commit | 3493e650510d08cdb097f4b6123be83798f8c218 (patch) | |
tree | 24a6085794acccd01e6d798fabca89b082ed77e9 | |
parent | 2eda662e8d15f68c8829a4f0718cde04215cdcb8 (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.c | 10 |
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) || |