diff options
-rw-r--r-- | tor2.c | 7 | ||||
-rw-r--r-- | torisa.c | 7 | ||||
-rw-r--r-- | wct1xxp.c | 6 | ||||
-rw-r--r-- | wct4xxp/base.c | 6 | ||||
-rw-r--r-- | wcte11xp.c | 6 | ||||
-rw-r--r-- | wcte12xp.c | 4 | ||||
-rw-r--r-- | zaptel-base.c | 8 |
7 files changed, 16 insertions, 28 deletions
@@ -202,11 +202,7 @@ static int tor2_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) if (debug) printk("Tor2: Configuring span %d\n", span->spanno); - /* XXX We assume lineconfig is okay and shouldn't XXX */ - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; + span->syncsrc = p->tor->syncsrc; /* remove this span number from the current sync sources, if there */ @@ -225,6 +221,7 @@ static int tor2_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) /* If we're already running, then go ahead and apply the changes */ if (span->flags & ZT_FLAG_RUNNING) return tor2_startup(span); + return 0; } @@ -603,11 +603,7 @@ static int torisa_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) { if (debug) printk("TorISA: Configuring span %d\n", span->spanno); - /* XXX We assume lineconfig is okay and shouldn't XXX */ - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; + span->syncsrc = syncsrc; /* remove this span number from the current sync sources, if there */ @@ -619,6 +615,7 @@ static int torisa_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) /* If we're already running, then go ahead and apply the changes */ if (span->flags & ZT_FLAG_RUNNING) return torisa_startup(span); + return 0; } @@ -737,15 +737,13 @@ static int t1xxp_chanconfig(struct zt_chan *chan, int sigtype) static int t1xxp_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) { struct t1xxp *wc = span->pvt; - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; + /* Do we want to SYNC on receive or not */ wc->sync = lc->sync; /* If already running, apply changes immediately */ if (span->flags & ZT_FLAG_RUNNING) return t1xxp_startup(span); + return 0; } static int t1xxp_software_init(struct t1xxp *wc) diff --git a/wct4xxp/base.c b/wct4xxp/base.c index 9f0a3f1..45a8d32 100644 --- a/wct4xxp/base.c +++ b/wct4xxp/base.c @@ -1414,11 +1414,7 @@ static int t4_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) printk("About to enter spanconfig!\n"); if (debug & DEBUG_MAIN) printk("TE%dXXP: Configuring span %d\n", wc->numspans, span->spanno); - /* XXX We assume lineconfig is okay and shouldn't XXX */ - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; + if (lc->sync < 0) lc->sync = 0; if (lc->sync > 4) @@ -945,15 +945,13 @@ static int t1xxp_chanconfig(struct zt_chan *chan, int sigtype) static int t1xxp_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) { struct t1 *wc = span->pvt; - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; + /* Do we want to SYNC on receive or not */ wc->sync = lc->sync; /* If already running, apply changes immediately */ if (span->flags & ZT_FLAG_RUNNING) return t1xxp_startup(span); + return 0; } @@ -1041,10 +1041,6 @@ static int t1xxp_spanconfig(struct zt_span *span, struct zt_lineconfig *lc) { struct t1 *wc = span->pvt; - span->lineconfig = lc->lineconfig; - span->lbo = lc->lbo; - span->txlevel = lc->lbo; - span->rxlevel = 0; /* Do we want to SYNC on receive or not */ wc->sync = lc->sync; if (wc->sync) diff --git a/zaptel-base.c b/zaptel-base.c index b1fb873..007e073 100644 --- a/zaptel-base.c +++ b/zaptel-base.c @@ -3312,8 +3312,14 @@ static int zt_ctl_ioctl(struct inode *inode, struct file *file, unsigned int cmd VALID_SPAN(lc.span); if ((lc.lineconfig & 0x07f0 & spans[lc.span]->linecompat) != (lc.lineconfig & 0x07f0)) return -EINVAL; - if (spans[lc.span]->spanconfig) + if (spans[lc.span]->spanconfig) { + spans[lc.span]->lineconfig = lc.lineconfig; + spans[lc.span]->lbo = lc.lbo; + spans[lc.span]->txlevel = lc.lbo; + spans[lc.span]->rxlevel = 0; + return spans[lc.span]->spanconfig(spans[lc.span], &lc); + } return 0; case ZT_STARTUP: CHECK_VALID_SPAN(j); |