summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wct4xxp
diff options
context:
space:
mode:
authorRuss Meyerriecks <rmeyerreicks@digium.com>2010-09-08 21:50:48 +0000
committerRuss Meyerriecks <rmeyerreicks@digium.com>2010-09-08 21:50:48 +0000
commit555f5d1e9e7f36906c1bd70fe0b5ae7a13b56933 (patch)
tree5dbcbfa82efd2dc268c54712ea78801cafe00c00 /drivers/dahdi/wct4xxp
parent085b7fe02311a95c6d0e6cd0d0e57cecf3ae9f6d (diff)
wct4xxp: Update span-local struct with timing info
dahdi_tool was incorrectly reporting all spans to be in local timing mode. This is because the driver tracks which span it's timing syncs to, within the card local struct "wc". We have to manually go through and copy timing updates to the span local structs because this is what dahdi_tool actually reads. dahdi-526 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@9312 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/wct4xxp')
-rw-r--r--drivers/dahdi/wct4xxp/base.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/dahdi/wct4xxp/base.c b/drivers/dahdi/wct4xxp/base.c
index 6dfc8cb..946631e 100644
--- a/drivers/dahdi/wct4xxp/base.c
+++ b/drivers/dahdi/wct4xxp/base.c
@@ -2396,7 +2396,7 @@ found:
static void __t4_set_timing_source_auto(struct t4 *wc)
{
- int x;
+ int x, i;
int firstprio, secondprio;
firstprio = secondprio = 4;
@@ -2455,6 +2455,13 @@ static void __t4_set_timing_source_auto(struct t4 *wc)
__t4_set_rclk_src(wc, 0);
__t4_set_sclk_src(wc, WC_SELF, 0, 0);
}
+
+ /* Propagate sync selection to dahdi_span struct
+ * this is read by dahdi_tool to display the span's
+ * master/slave sync information */
+ for (i = 0; i < wc->numspans; i++) {
+ wc->tspans[i]->span.syncsrc = wc->syncsrc + 1;
+ }
}
}