diff options
author | Michael Spiceland <mspiceland@digium.com> | 2010-06-24 16:13:44 +0000 |
---|---|---|
committer | Michael Spiceland <mspiceland@digium.com> | 2010-06-24 16:13:44 +0000 |
commit | dd1204872ea20627d488773cd6987c340c23001d (patch) | |
tree | 2de62234a7f1c23f41abb75589fd03b31e8a854e /drivers/dahdi/wct4xxp/base.c | |
parent | b43e887ffd54f3bef9e1d3ff90d72663193fa96b (diff) |
Impliments a workaround for an errata in the qfalc v3.1 chip which caused
RBS modes to be broken when using AMI coding. DAHDI-647.
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8801 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/wct4xxp/base.c')
-rw-r--r-- | drivers/dahdi/wct4xxp/base.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/dahdi/wct4xxp/base.c b/drivers/dahdi/wct4xxp/base.c index ae3b94a..4a52c13 100644 --- a/drivers/dahdi/wct4xxp/base.c +++ b/drivers/dahdi/wct4xxp/base.c @@ -2204,7 +2204,11 @@ static void __t4_configure_t1(struct t4 *wc, int unit, int lineconfig, int txlev /* Configure line interface */ if (lineconfig & DAHDI_CONFIG_AMI) { line = "AMI"; - fmr0 = 0xa0; + /* workaround for errata #2 in ES v3 09-10-16 */ + if (wc->falc31) + fmr0 = 0xb0; + else + fmr0 = 0xa0; } else { line = "B8ZS"; fmr0 = 0xf0; @@ -2296,7 +2300,11 @@ static void __t4_configure_e1(struct t4 *wc, int unit, int lineconfig) /* Configure line interface */ if (lineconfig & DAHDI_CONFIG_AMI) { line = "AMI"; - fmr0 = 0xa0; + /* workaround for errata #2 in ES v3 09-10-16 */ + if (wc->falc31) + fmr0 = 0xb0; + else + fmr0 = 0xa0; } else { line = "HDB3"; fmr0 = 0xf0; |