This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
fixeria gerrit-no-reply at lists.osmocom.orgfixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/19511 )
Change subject: pcu_sock: separate trx / ts filling from pcu_tx_info_ind()
......................................................................
pcu_sock: separate trx / ts filling from pcu_tx_info_ind()
This would allow to avoid further nasting in 'for' loops.
Change-Id: Idb102c77751ccf77fd246f538e62fd7acf6ee88b
---
M src/common/pcu_sock.c
1 file changed, 35 insertions(+), 26 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/11/19511/1
diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c
index ca8dd15..392900a 100644
--- a/src/common/pcu_sock.c
+++ b/src/common/pcu_sock.c
@@ -112,6 +112,39 @@
}
}
+static void info_ind_fill_trx(struct gsm_pcu_if_info_trx *trx_info,
+ const struct gsm_bts_trx *trx)
+{
+ unsigned int tn;
+
+ trx_info->pdch_mask = 0;
+ trx_info->arfcn = trx->arfcn;
+ trx_info->hlayer1 = trx_get_hlayer1(trx);
+
+ if (trx->mo.nm_state.operational != NM_OPSTATE_ENABLED ||
+ trx->mo.nm_state.administrative != NM_STATE_UNLOCKED) {
+ LOGPTRX(trx, DPCU, LOGL_INFO, "unavailable for PCU (op=%s adm=%s)\n",
+ abis_nm_opstate_name(trx->mo.nm_state.operational),
+ abis_nm_admin_name(trx->mo.nm_state.administrative));
+ return;
+ }
+
+ for (tn = 0; tn < 8; tn++) {
+ const struct gsm_bts_trx_ts *ts = &trx->ts[tn];
+
+ if (ts->mo.nm_state.operational != NM_OPSTATE_ENABLED)
+ continue;
+ if (!ts_should_be_pdch(ts))
+ continue;
+
+ trx_info->pdch_mask |= (1 << tn);
+ trx_info->tsc[tn] = gsm_ts_tsc(ts);
+
+ LOGP(DPCU, LOGL_INFO, "(trx=%u,ts=%u) PDCH available (tsc=%u arfcn=%u)\n",
+ trx->nr, ts->nr, trx_info->tsc[tn], trx->arfcn);
+ }
+}
+
int pcu_tx_info_ind(void)
{
struct gsm_network *net = &bts_gsmnet;
@@ -122,8 +155,7 @@
struct gprs_rlc_cfg *rlcc;
struct gsm_bts_gprs_nsvc *nsvc;
struct gsm_bts_trx *trx;
- struct gsm_bts_trx_ts *ts;
- int i, j;
+ int i;
LOGP(DPCU, LOGL_INFO, "Sending info\n");
@@ -223,30 +255,7 @@
continue;
}
- info_ind->trx[trx->nr].pdch_mask = 0;
- info_ind->trx[trx->nr].arfcn = trx->arfcn;
- info_ind->trx[trx->nr].hlayer1 = trx_get_hlayer1(trx);
- if (trx->mo.nm_state.operational != NM_OPSTATE_ENABLED ||
- trx->mo.nm_state.administrative != NM_STATE_UNLOCKED) {
- LOGPTRX(trx, DPCU, LOGL_INFO, "unavailable for PCU (op=%s adm=%s)\n",
- abis_nm_opstate_name(trx->mo.nm_state.operational),
- abis_nm_admin_name(trx->mo.nm_state.administrative));
- continue;
- }
- for (j = 0; j < 8; j++) {
- ts = &trx->ts[j];
- if (ts->mo.nm_state.operational == NM_OPSTATE_ENABLED
- && ts_should_be_pdch(ts)) {
- info_ind->trx[trx->nr].pdch_mask |= (1 << j);
- info_ind->trx[trx->nr].tsc[j] = gsm_ts_tsc(ts);
-
- LOGP(DPCU, LOGL_INFO, "trx=%d ts=%d: "
- "available (tsc=%d arfcn=%d)\n",
- trx->nr, ts->nr,
- info_ind->trx[trx->nr].tsc[j],
- info_ind->trx[trx->nr].arfcn);
- }
- }
+ info_ind_fill_trx(&info_ind->trx[trx->nr], trx);
}
return pcu_sock_send(net, msg);
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/19511
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idb102c77751ccf77fd246f538e62fd7acf6ee88b
Gerrit-Change-Number: 19511
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200802/93fd8ee6/attachment.htm>