From 383a059a123b1e0e5aab76423db47846e329f095 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Fri, 2 Mar 2018 15:02:57 +0100 Subject: Revert "Generate the S_L_INP_TEI_UP signal earlier." This reverts commit faf0982ae20001519cf20c5d6345dad490a135f2, as it introduces a severe regression: No more BCCH FILL / SACCH INFO are sent upon RSL establishment to the BTS. See OS#2719 for more details Change-Id: I8a4f3be9928bc3a0b61f23dc3e41200105204651 Related: OS#2719 --- src/libbsc/bts_ipaccess_nanobts.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'src/libbsc/bts_ipaccess_nanobts.c') diff --git a/src/libbsc/bts_ipaccess_nanobts.c b/src/libbsc/bts_ipaccess_nanobts.c index 99e178d54..cf859618c 100644 --- a/src/libbsc/bts_ipaccess_nanobts.c +++ b/src/libbsc/bts_ipaccess_nanobts.c @@ -438,11 +438,6 @@ ipaccess_sign_link_up(void *unit_data, struct e1inp_line *line, bts->oml_tei, 0); rc = clock_gettime(CLOCK_MONOTONIC, &tp); bts->uptime = (rc < 0) ? 0 : tp.tv_sec; /* we don't need sub-second precision for uptime */ - if (!(sign_link->trx->bts->ip_access.flags & OML_UP)) { - e1inp_event(sign_link->ts, S_L_INP_TEI_UP, - sign_link->tei, sign_link->sapi); - sign_link->trx->bts->ip_access.flags |= OML_UP; - } break; case E1INP_SIGN_RSL: { struct e1inp_ts *ts; @@ -463,13 +458,6 @@ ipaccess_sign_link_up(void *unit_data, struct e1inp_line *line, e1inp_sign_link_create(ts, E1INP_SIGN_RSL, trx, trx->rsl_tei, 0); trx->rsl_link->ts->sign.delay = 0; - if (!(sign_link->trx->bts->ip_access.flags & - (RSL_UP << sign_link->trx->nr))) { - e1inp_event(sign_link->ts, S_L_INP_TEI_UP, - sign_link->tei, sign_link->sapi); - sign_link->trx->bts->ip_access.flags |= - (RSL_UP << sign_link->trx->nr); - } break; } default: @@ -502,12 +490,25 @@ static int ipaccess_sign_link(struct msgb *msg) { int ret = 0; struct e1inp_sign_link *link = msg->dst; + struct e1inp_ts *e1i_ts = link->ts; switch (link->type) { case E1INP_SIGN_RSL: + if (!(link->trx->bts->ip_access.flags & + (RSL_UP << link->trx->nr))) { + e1inp_event(e1i_ts, S_L_INP_TEI_UP, + link->tei, link->sapi); + link->trx->bts->ip_access.flags |= + (RSL_UP << link->trx->nr); + } ret = abis_rsl_rcvmsg(msg); break; case E1INP_SIGN_OML: + if (!(link->trx->bts->ip_access.flags & OML_UP)) { + e1inp_event(e1i_ts, S_L_INP_TEI_UP, + link->tei, link->sapi); + link->trx->bts->ip_access.flags |= OML_UP; + } ret = abis_nm_rcvmsg(msg); break; default: -- cgit v1.2.3