diff options
author | Shaun Ruffell <sruffell@digium.com> | 2011-01-21 05:27:24 +0000 |
---|---|---|
committer | Shaun Ruffell <sruffell@digium.com> | 2011-01-21 05:27:24 +0000 |
commit | d1bb25c741db6b4bc8b560808c97bdb1b33ec588 (patch) | |
tree | f004f8bc0f57010befb0d8911a9bce486088ccf1 | |
parent | 8dacb7c86f5ab0cb151470a895ce3e3fb79f990e (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.c | 9 |
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; + } } } |