From 3493e650510d08cdb097f4b6123be83798f8c218 Mon Sep 17 00:00:00 2001 From: Russ Meyerriecks Date: Fri, 2 Dec 2011 22:48:39 +0000 Subject: wct4xxp: Handle incorrect vpm module/card pairings Signed-off-by: Russ Meyerriecks Acked-by: Shaun Ruffell git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10364 a0bf4364-ded3-4de4-8d8a-66a801d63aff --- drivers/dahdi/wct4xxp/base.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) 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) || -- cgit v1.2.3