summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wcte12xp/base.c
diff options
context:
space:
mode:
authorRuss Meyerriecks <rmeyerreicks@digium.com>2010-03-08 23:22:54 +0000
committerRuss Meyerriecks <rmeyerreicks@digium.com>2010-03-08 23:22:54 +0000
commit59fce3f780a759de7286ec399d4c1d75143f7f33 (patch)
tree07cfacd3224e4a476e0eacc70afaf5b32aec5ece /drivers/dahdi/wcte12xp/base.c
parentc2715f7534f6880fb371a284c0a30fcd9e1c7bac (diff)
wct4xxp, wcte12xp: Fixed broken E1 and unsupported function bugs
* Fixed the bug where the card could not be brought out of local loopback in E1 mode. * Fixed a bunch of issues where the drivers didn't report unsupported maintenance functions correctly. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8291 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/wcte12xp/base.c')
-rw-r--r--drivers/dahdi/wcte12xp/base.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/dahdi/wcte12xp/base.c b/drivers/dahdi/wcte12xp/base.c
index b7f8dc8..3ac2727 100644
--- a/drivers/dahdi/wcte12xp/base.c
+++ b/drivers/dahdi/wcte12xp/base.c
@@ -1111,6 +1111,7 @@ static int t1xxp_maint(struct dahdi_span *span, int cmd)
switch (cmd) {
case DAHDI_MAINT_NONE:
t1_info(wc, "Clearing all maint modes\n");
+ t1xxp_clear_maint(span);
break;
case DAHDI_MAINT_LOCALLOOP:
t1xxp_clear_maint(span);
@@ -1122,10 +1123,10 @@ static int t1xxp_maint(struct dahdi_span *span, int cmd)
case DAHDI_MAINT_LOOPDOWN:
case DAHDI_MAINT_LOOPSTOP:
t1_info(wc, "Only local loop supported in E1 mode\n");
- break;
+ return -ENOSYS;
default:
t1_info(wc, "Unknown E1 maint command: %d\n", cmd);
- break;
+ return -ENOSYS;
}
} else {
switch (cmd) {
@@ -1161,7 +1162,7 @@ static int t1xxp_maint(struct dahdi_span *span, int cmd)
break;
default:
t1_info(wc, "Unknown T1 maint command: %d\n", cmd);
- break;
+ return -ENOSYS;
}
}