summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaun Ruffell <sruffell@digium.com>2011-01-21 05:27:24 +0000
committerShaun Ruffell <sruffell@digium.com>2011-01-21 05:27:24 +0000
commitd1bb25c741db6b4bc8b560808c97bdb1b33ec588 (patch)
treef004f8bc0f57010befb0d8911a9bce486088ccf1
parent8dacb7c86f5ab0cb151470a895ce3e3fb79f990e (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 Origin: http://svnview.digium.com/svn/dahdi?view=rev&rev=9312 git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/branches/2.4@9654 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-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;
+ }
}
}