lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

April 2023

  • 1 participants
  • 2252 discussions
[S] Change in osmo-ci[master]: obs: add --conflict-pkgname arg
by laforge 06 Apr '23

06 Apr '23
Attention is currently required from: osmith. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ci/+/32227 ) Change subject: obs: add --conflict-pkgname arg ...................................................................... Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/32227 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-Change-Id: I58e33bb003e2a4af9e9a7b53e5f79a91c3b541eb Gerrit-Change-Number: 32227 Gerrit-PatchSet: 2 Gerrit-Owner: osmith <osmith(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: osmith <osmith(a)sysmocom.de> Gerrit-Comment-Date: Thu, 06 Apr 2023 21:03:37 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
[S] Change in osmo-bts[master]: nm: Document current state of SW_ACT in TRX related objects
by pespin 06 Apr '23

06 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/32242 ) Change subject: nm: Document current state of SW_ACT in TRX related objects ...................................................................... nm: Document current state of SW_ACT in TRX related objects Change-Id: Ie24503b25b9c8042edae696d5b002933c73d00fb --- M src/common/bts.c M src/common/nm_bts_fsm.c 2 files changed, 23 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/42/32242/1 diff --git a/src/common/bts.c b/src/common/bts.c index 0dd830a..1154c6a 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -414,10 +414,17 @@ LOGP(DOML, LOGL_INFO, "Main link established, sending NM Status.\n"); - /* BTS SITE MGR becomes Offline (tx SW ACT Report), BTS, NSE, etc. is DEPENDENCY */ + /* BTS SITE MGR becomes Offline (tx SW ACT Report) and dispatches same + * event to its children objects (except TRX level and below, see comment + * below) + */ osmo_fsm_inst_dispatch(bts->site_mgr->mo.fi, NM_EV_SW_ACT, NULL); - /* All other objects start off-line until the BTS Model code says otherwise */ + /* TRX objects are SW_ACTed by the lower layers (bts_model) when they + * become available. Since that may happen before the OML link becomes + * established, we need to manually trigger tx of state reports to the BSC + * so it learns current state and can go on bringing them up. + */ for (i = 0; i < bts->num_trx; i++) { struct gsm_bts_trx *trx = gsm_bts_trx_num(bts, i); diff --git a/src/common/nm_bts_fsm.c b/src/common/nm_bts_fsm.c index 13a4727..451530f 100644 --- a/src/common/nm_bts_fsm.c +++ b/src/common/nm_bts_fsm.c @@ -93,6 +93,11 @@ } nm_bts_fsm_state_chg(fi, NM_BTS_ST_OP_DISABLED_OFFLINE); + + /* Avoid submitting NM_EV_SW_ACT to children NM objects + * (RCARRIER, BBTRANSC), the lower layers (bts_model) are in charge + * of submitting them once the TRX becomes available + */ return; default: OSMO_ASSERT(0); -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32242 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ie24503b25b9c8042edae696d5b002933c73d00fb Gerrit-Change-Number: 32242 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in osmo-bts[master]: Drop NM_EV_BBTRANSC_INSTALLED in favour of generic NM_EV_SW_ACT
by pespin 06 Apr '23

06 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/32241 ) Change subject: Drop NM_EV_BBTRANSC_INSTALLED in favour of generic NM_EV_SW_ACT ...................................................................... Drop NM_EV_BBTRANSC_INSTALLED in favour of generic NM_EV_SW_ACT All the other objects already use that one; there's no need to have a specific one for the NM Channel FSM. Change-Id: Ic5fd37367b500c75a0a53b1d868ba2aed3edef1b --- M include/osmo-bts/nm_common_fsm.h M src/common/nm_bb_transc_fsm.c M src/common/nm_channel_fsm.c M src/common/nm_common_fsm.c 4 files changed, 15 insertions(+), 10 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/41/32241/1 diff --git a/include/osmo-bts/nm_common_fsm.h b/include/osmo-bts/nm_common_fsm.h index 85db0de..4d44402 100644 --- a/include/osmo-bts/nm_common_fsm.h +++ b/include/osmo-bts/nm_common_fsm.h @@ -41,7 +41,6 @@ NM_EV_PHYLINK_UP, /* RadioCarrier and BaseBand Transceiver only */ NM_EV_PHYLINK_DOWN, /* RadioCarrier and BaseBand Transceiver only */ NM_EV_DISABLE, /* RadioCarrier and BaseBand Transceiver only */ - NM_EV_BBTRANSC_INSTALLED, /* Radio Channel only */ NM_EV_BBTRANSC_ENABLED, /* Radio Channel only */ NM_EV_BBTRANSC_DISABLED, /* Radio Channel only */ NM_EV_RCARRIER_ENABLED, /* Radio Channel only */ diff --git a/src/common/nm_bb_transc_fsm.c b/src/common/nm_bb_transc_fsm.c index e51a151..6fdddbe 100644 --- a/src/common/nm_bb_transc_fsm.c +++ b/src/common/nm_bb_transc_fsm.c @@ -70,17 +70,12 @@ static void st_op_disabled_notinstalled(struct osmo_fsm_inst *fi, uint32_t event, void *data) { struct gsm_bts_bb_trx *bb_transc = (struct gsm_bts_bb_trx *)fi->priv; - struct gsm_bts_trx *trx = gsm_bts_bb_trx_get_trx(bb_transc); - int i; switch (event) { case NM_EV_SW_ACT: oml_mo_tx_sw_act_rep(&bb_transc->mo); nm_bb_transc_fsm_state_chg(fi, NM_BBTRANSC_ST_OP_DISABLED_OFFLINE); - for (i = 0; i < TRX_NR_TS; i++) { - struct gsm_bts_trx_ts *ts = &trx->ts[i]; - osmo_fsm_inst_dispatch(ts->mo.fi, NM_EV_BBTRANSC_INSTALLED, NULL); - } + ev_dispatch_children(bb_transc, event); return; case NM_EV_RSL_UP: return; diff --git a/src/common/nm_channel_fsm.c b/src/common/nm_channel_fsm.c index 252df83..9e22fee 100644 --- a/src/common/nm_channel_fsm.c +++ b/src/common/nm_channel_fsm.c @@ -71,7 +71,7 @@ struct gsm_bts_trx_ts *ts = (struct gsm_bts_trx_ts *)fi->priv; switch (event) { - case NM_EV_BBTRANSC_INSTALLED: + case NM_EV_SW_ACT: oml_mo_tx_sw_act_rep(&ts->mo); if (ts_can_be_enabled(ts)) nm_chan_fsm_state_chg(fi, NM_CHAN_ST_OP_DISABLED_OFFLINE); @@ -227,7 +227,7 @@ static struct osmo_fsm_state nm_chan_fsm_states[] = { [NM_CHAN_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_BBTRANSC_INSTALLED), + X(NM_EV_SW_ACT), .out_state_mask = X(NM_CHAN_ST_OP_DISABLED_NOTINSTALLED) | X(NM_CHAN_ST_OP_DISABLED_OFFLINE) | diff --git a/src/common/nm_common_fsm.c b/src/common/nm_common_fsm.c index f742357..220ac76 100644 --- a/src/common/nm_common_fsm.c +++ b/src/common/nm_common_fsm.c @@ -36,7 +36,6 @@ { NM_EV_PHYLINK_UP, "PHYLINK_UP" }, { NM_EV_PHYLINK_DOWN, "PHYLINK_DOWN" }, { NM_EV_DISABLE, "DISABLE" }, - { NM_EV_BBTRANSC_INSTALLED, "BBTRANSC_INSTALLED" }, { NM_EV_BBTRANSC_ENABLED, "BBTRANSC_ENABLED" }, { NM_EV_BBTRANSC_DISABLED, "BBTRANSC_DISABLED" }, { NM_EV_RCARRIER_ENABLED, "RCARRIER_ENABLED" }, -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32241 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ic5fd37367b500c75a0a53b1d868ba2aed3edef1b Gerrit-Change-Number: 32241 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[M] Change in osmo-bts[master]: Properly report all states through NM FSM upon OML link up
by pespin 06 Apr '23

06 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/32243 ) Change subject: Properly report all states through NM FSM upon OML link up ...................................................................... Properly report all states through NM FSM upon OML link up Change-Id: Ic3358629d17baab46f467a1ab82eea1837ad7390 --- M include/osmo-bts/nm_common_fsm.h M src/common/bts.c M src/common/bts_trx.c M src/common/nm_bb_transc_fsm.c M src/common/nm_bts_fsm.c M src/common/nm_bts_sm_fsm.c M src/common/nm_channel_fsm.c M src/common/nm_common_fsm.c M src/common/nm_gprs_cell_fsm.c M src/common/nm_gprs_nse_fsm.c M src/common/nm_gprs_nsvc_fsm.c M src/common/nm_radio_carrier_fsm.c 12 files changed, 75 insertions(+), 45 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/43/32243/1 diff --git a/include/osmo-bts/nm_common_fsm.h b/include/osmo-bts/nm_common_fsm.h index 4d44402..2735ede 100644 --- a/include/osmo-bts/nm_common_fsm.h +++ b/include/osmo-bts/nm_common_fsm.h @@ -36,6 +36,7 @@ NM_EV_OPSTART_NACK, NM_EV_SHUTDOWN_START, NM_EV_SHUTDOWN_FINISH, + NM_EV_OML_UP, NM_EV_RSL_UP, /* RadioCarrier and BaseBand Transceiver only */ NM_EV_RSL_DOWN, /* RadioCarrier and BaseBand Transceiver only */ NM_EV_PHYLINK_UP, /* RadioCarrier and BaseBand Transceiver only */ diff --git a/src/common/bts.c b/src/common/bts.c index 1154c6a..72c29f8 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -410,33 +410,13 @@ /* main link is established, send status report */ int bts_link_estab(struct gsm_bts *bts) { - int i, j; + LOGP(DOML, LOGL_INFO, "Main link established, sending NM Status\n"); - LOGP(DOML, LOGL_INFO, "Main link established, sending NM Status.\n"); - - /* BTS SITE MGR becomes Offline (tx SW ACT Report) and dispatches same - * event to its children objects (except TRX level and below, see comment - * below) + /* Signal OML UP to BTS SITE MGR. It will automatically SW_ACT repoort + * and become Disabled-Offline, then dispatch same event to its children + * objects. */ - osmo_fsm_inst_dispatch(bts->site_mgr->mo.fi, NM_EV_SW_ACT, NULL); - - /* TRX objects are SW_ACTed by the lower layers (bts_model) when they - * become available. Since that may happen before the OML link becomes - * established, we need to manually trigger tx of state reports to the BSC - * so it learns current state and can go on bringing them up. - */ - for (i = 0; i < bts->num_trx; i++) { - struct gsm_bts_trx *trx = gsm_bts_trx_num(bts, i); - - oml_tx_state_changed(&trx->mo); - oml_tx_state_changed(&trx->bb_transc.mo); - - for (j = 0; j < ARRAY_SIZE(trx->ts); j++) { - struct gsm_bts_trx_ts *ts = &trx->ts[j]; - - oml_tx_state_changed(&ts->mo); - } - } + osmo_fsm_inst_dispatch(bts->site_mgr->mo.fi, NM_EV_OML_UP, NULL); return bts_model_oml_estab(bts); } diff --git a/src/common/bts_trx.c b/src/common/bts_trx.c index 089f228..251b673 100644 --- a/src/common/bts_trx.c +++ b/src/common/bts_trx.c @@ -84,6 +84,7 @@ trx->bb_transc.mo.fi->id, ts->nr); gsm_mo_init(&ts->mo, trx->bts, NM_OC_CHANNEL, trx->bts->nr, trx->nr, ts->nr); + oml_mo_state_init(&ts->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); gsm_bts_trx_ts_init_lchan(ts); } @@ -156,14 +157,14 @@ trx->mo.fi = osmo_fsm_inst_alloc(&nm_rcarrier_fsm, trx, trx, LOGL_INFO, NULL); osmo_fsm_inst_update_id_f(trx->mo.fi, "bts%d-trx%d", bts->nr, trx->nr); - gsm_mo_init(&trx->mo, bts, NM_OC_RADIO_CARRIER, - bts->nr, trx->nr, 0xff); + gsm_mo_init(&trx->mo, bts, NM_OC_RADIO_CARRIER, bts->nr, trx->nr, 0xff); + oml_mo_state_init(&trx->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); trx->bb_transc.mo.fi = osmo_fsm_inst_alloc(&nm_bb_transc_fsm, trx, &trx->bb_transc, LOGL_INFO, NULL); osmo_fsm_inst_update_id_f(trx->bb_transc.mo.fi, "bts%d-trx%d", bts->nr, trx->nr); - gsm_mo_init(&trx->bb_transc.mo, bts, NM_OC_BASEB_TRANSC, - bts->nr, trx->nr, 0xff); + gsm_mo_init(&trx->bb_transc.mo, bts, NM_OC_BASEB_TRANSC, bts->nr, trx->nr, 0xff); + oml_mo_state_init(&trx->bb_transc.mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); gsm_bts_trx_init_ts(trx); diff --git a/src/common/nm_bb_transc_fsm.c b/src/common/nm_bb_transc_fsm.c index 6fdddbe..d42130a 100644 --- a/src/common/nm_bb_transc_fsm.c +++ b/src/common/nm_bb_transc_fsm.c @@ -77,6 +77,11 @@ nm_bb_transc_fsm_state_chg(fi, NM_BBTRANSC_ST_OP_DISABLED_OFFLINE); ev_dispatch_children(bb_transc, event); return; + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&bb_transc->mo); + ev_dispatch_children(bb_transc, event); + return; case NM_EV_RSL_UP: return; case NM_EV_RSL_DOWN: @@ -120,6 +125,11 @@ int rc; switch (event) { + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&bb_transc->mo); + ev_dispatch_children(bb_transc, event); + return; case NM_EV_RX_SETATTR: setattr_data = (struct nm_fsm_ev_setattr_data *)data; rc = bts_model_apply_oml(trx->bts, setattr_data->msg, @@ -238,6 +248,7 @@ [NM_BBTRANSC_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = X(NM_EV_SW_ACT) | + X(NM_EV_OML_UP) | X(NM_EV_RSL_UP) | X(NM_EV_RSL_DOWN) | X(NM_EV_PHYLINK_UP) | @@ -252,6 +263,7 @@ }, [NM_BBTRANSC_ST_OP_DISABLED_OFFLINE] = { .in_event_mask = + X(NM_EV_OML_UP) | X(NM_EV_RX_SETATTR) | X(NM_EV_RX_OPSTART) | X(NM_EV_OPSTART_ACK) | diff --git a/src/common/nm_bts_fsm.c b/src/common/nm_bts_fsm.c index 451530f..eeec8f8 100644 --- a/src/common/nm_bts_fsm.c +++ b/src/common/nm_bts_fsm.c @@ -76,7 +76,8 @@ struct gsm_bts_trx *trx; switch (event) { - case NM_EV_SW_ACT: + case NM_EV_OML_UP: + /* automatic SW_ACT upon OML link establishment: */ oml_mo_tx_sw_act_rep(&bts->mo); llist_for_each_entry(trx, &bts->trx_list, list) { @@ -93,11 +94,7 @@ } nm_bts_fsm_state_chg(fi, NM_BTS_ST_OP_DISABLED_OFFLINE); - - /* Avoid submitting NM_EV_SW_ACT to children NM objects - * (RCARRIER, BBTRANSC), the lower layers (bts_model) are in charge - * of submitting them once the TRX becomes available - */ + ev_dispatch_children(bts, event); return; default: OSMO_ASSERT(0); @@ -181,7 +178,7 @@ static struct osmo_fsm_state nm_bts_fsm_states[] = { [NM_BTS_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_OML_UP), .out_state_mask = X(NM_BTS_ST_OP_DISABLED_NOTINSTALLED) | X(NM_BTS_ST_OP_DISABLED_OFFLINE), diff --git a/src/common/nm_bts_sm_fsm.c b/src/common/nm_bts_sm_fsm.c index 01f5f99..b6242fd 100644 --- a/src/common/nm_bts_sm_fsm.c +++ b/src/common/nm_bts_sm_fsm.c @@ -69,7 +69,8 @@ struct gsm_bts_sm *site_mgr = (struct gsm_bts_sm *)fi->priv; switch (event) { - case NM_EV_SW_ACT: + case NM_EV_OML_UP: + /* automatic SW_ACT upon OML link establishment: */ oml_mo_tx_sw_act_rep(&site_mgr->mo); nm_bts_sm_fsm_state_chg(fi, NM_BTS_SM_ST_OP_DISABLED_OFFLINE); ev_dispatch_children(site_mgr, event); @@ -160,7 +161,7 @@ static struct osmo_fsm_state nm_bts_sm_fsm_states[] = { [NM_BTS_SM_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_OML_UP), .out_state_mask = X(NM_BTS_SM_ST_OP_DISABLED_NOTINSTALLED) | X(NM_BTS_SM_ST_OP_DISABLED_OFFLINE), diff --git a/src/common/nm_channel_fsm.c b/src/common/nm_channel_fsm.c index 9e22fee..7bc896a 100644 --- a/src/common/nm_channel_fsm.c +++ b/src/common/nm_channel_fsm.c @@ -71,6 +71,10 @@ struct gsm_bts_trx_ts *ts = (struct gsm_bts_trx_ts *)fi->priv; switch (event) { + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&ts->mo); + return; case NM_EV_SW_ACT: oml_mo_tx_sw_act_rep(&ts->mo); if (ts_can_be_enabled(ts)) @@ -97,6 +101,10 @@ int rc; switch (event) { + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&ts->mo); + return; case NM_EV_RX_SETATTR: setattr_data = (struct nm_fsm_ev_setattr_data *)data; rc = bts_model_apply_oml(ts->trx->bts, setattr_data->msg, @@ -150,6 +158,10 @@ int rc; switch (event) { + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&ts->mo); + return; case NM_EV_RX_SETATTR: setattr_data = (struct nm_fsm_ev_setattr_data *)data; rc = bts_model_apply_oml(ts->trx->bts, setattr_data->msg, @@ -227,7 +239,8 @@ static struct osmo_fsm_state nm_chan_fsm_states[] = { [NM_CHAN_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_SW_ACT) | + X(NM_EV_OML_UP), .out_state_mask = X(NM_CHAN_ST_OP_DISABLED_NOTINSTALLED) | X(NM_CHAN_ST_OP_DISABLED_OFFLINE) | @@ -238,6 +251,7 @@ }, [NM_CHAN_ST_OP_DISABLED_DEPENDENCY] = { .in_event_mask = + X(NM_EV_OML_UP) | X(NM_EV_RX_SETATTR) | X(NM_EV_RX_OPSTART) | /* backward compatibility, buggy BSC */ X(NM_EV_OPSTART_ACK) | /* backward compatibility, buggy BSC */ @@ -256,6 +270,7 @@ }, [NM_CHAN_ST_OP_DISABLED_OFFLINE] = { .in_event_mask = + X(NM_EV_OML_UP) | X(NM_EV_RX_SETATTR) | X(NM_EV_RX_OPSTART) | X(NM_EV_OPSTART_ACK) | diff --git a/src/common/nm_common_fsm.c b/src/common/nm_common_fsm.c index 220ac76..e7a2ffe 100644 --- a/src/common/nm_common_fsm.c +++ b/src/common/nm_common_fsm.c @@ -31,6 +31,7 @@ { NM_EV_OPSTART_NACK, "OPSTART_NACK" }, { NM_EV_SHUTDOWN_START, "SHUTDOWN_START" }, { NM_EV_SHUTDOWN_FINISH, "SHUTDOWN_FINISH" }, + { NM_EV_OML_UP, "OML_UP" }, { NM_EV_RSL_UP, "RSL_UP" }, { NM_EV_RSL_DOWN, "RSL_DOWN" }, { NM_EV_PHYLINK_UP, "PHYLINK_UP" }, diff --git a/src/common/nm_gprs_cell_fsm.c b/src/common/nm_gprs_cell_fsm.c index aaebe59..cc3ece6 100644 --- a/src/common/nm_gprs_cell_fsm.c +++ b/src/common/nm_gprs_cell_fsm.c @@ -68,7 +68,8 @@ struct gsm_gprs_cell *cell = (struct gsm_gprs_cell *)fi->priv; switch (event) { - case NM_EV_SW_ACT: + case NM_EV_OML_UP: + /* automatic SW_ACT upon OML link establishment: */ oml_mo_tx_sw_act_rep(&cell->mo); if (gprs_cell_can_be_enabled(cell)) nm_gprs_cell_fsm_state_chg(fi, NM_GPRS_CELL_ST_OP_DISABLED_OFFLINE); @@ -196,7 +197,7 @@ static struct osmo_fsm_state nm_gprs_cell_fsm_states[] = { [NM_GPRS_CELL_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_OML_UP), .out_state_mask = X(NM_GPRS_CELL_ST_OP_DISABLED_NOTINSTALLED) | X(NM_GPRS_CELL_ST_OP_DISABLED_DEPENDENCY) | diff --git a/src/common/nm_gprs_nse_fsm.c b/src/common/nm_gprs_nse_fsm.c index fa9c651..42f30d8 100644 --- a/src/common/nm_gprs_nse_fsm.c +++ b/src/common/nm_gprs_nse_fsm.c @@ -82,7 +82,8 @@ struct gsm_gprs_nse *nse = (struct gsm_gprs_nse *)fi->priv; switch (event) { - case NM_EV_SW_ACT: + case NM_EV_OML_UP: + /* automatic SW_ACT upon OML link establishment: */ oml_mo_tx_sw_act_rep(&nse->mo); ev_dispatch_children(nse, event); if (nse_can_be_enabled(nse)) @@ -216,7 +217,7 @@ static struct osmo_fsm_state nm_gprs_nse_fsm_states[] = { [NM_GPRS_NSE_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_OML_UP), .out_state_mask = X(NM_GPRS_NSE_ST_OP_DISABLED_NOTINSTALLED) | X(NM_GPRS_NSE_ST_OP_DISABLED_DEPENDENCY) | diff --git a/src/common/nm_gprs_nsvc_fsm.c b/src/common/nm_gprs_nsvc_fsm.c index 05d7ff1..2b45fc4 100644 --- a/src/common/nm_gprs_nsvc_fsm.c +++ b/src/common/nm_gprs_nsvc_fsm.c @@ -67,7 +67,8 @@ struct gsm_gprs_nsvc *nsvc = (struct gsm_gprs_nsvc *)fi->priv; switch (event) { - case NM_EV_SW_ACT: + case NM_EV_OML_UP: + /* automatic SW_ACT upon OML link establishment: */ oml_mo_tx_sw_act_rep(&nsvc->mo); if (gprs_nsvc_can_be_enabled(nsvc)) nm_gprs_nsvc_fsm_state_chg(fi, NM_GPRS_NSVC_ST_OP_DISABLED_OFFLINE); @@ -195,7 +196,7 @@ static struct osmo_fsm_state nm_gprs_nsvc_fsm_states[] = { [NM_GPRS_NSVC_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = - X(NM_EV_SW_ACT), + X(NM_EV_OML_UP), .out_state_mask = X(NM_GPRS_NSVC_ST_OP_DISABLED_NOTINSTALLED) | X(NM_GPRS_NSVC_ST_OP_DISABLED_DEPENDENCY) | diff --git a/src/common/nm_radio_carrier_fsm.c b/src/common/nm_radio_carrier_fsm.c index 0596a9c..d7590bc 100644 --- a/src/common/nm_radio_carrier_fsm.c +++ b/src/common/nm_radio_carrier_fsm.c @@ -65,6 +65,10 @@ oml_mo_tx_sw_act_rep(&trx->mo); nm_rcarrier_fsm_state_chg(fi, NM_RCARRIER_ST_OP_DISABLED_OFFLINE); return; + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&trx->mo); + return; case NM_EV_RSL_UP: return; case NM_EV_RSL_DOWN: @@ -106,6 +110,10 @@ int rc; switch (event) { + case NM_EV_OML_UP: + /* Report current state: */ + oml_tx_state_changed(&trx->mo); + return; case NM_EV_RX_SETATTR: setattr_data = (struct nm_fsm_ev_setattr_data *)data; rc = bts_model_apply_oml(trx->bts, setattr_data->msg, @@ -214,6 +222,7 @@ [NM_RCARRIER_ST_OP_DISABLED_NOTINSTALLED] = { .in_event_mask = X(NM_EV_SW_ACT) | + X(NM_EV_OML_UP) | X(NM_EV_RSL_UP) | X(NM_EV_RSL_DOWN) | X(NM_EV_PHYLINK_UP) | @@ -228,6 +237,7 @@ }, [NM_RCARRIER_ST_OP_DISABLED_OFFLINE] = { .in_event_mask = + X(NM_EV_OML_UP) | X(NM_EV_RX_SETATTR) | X(NM_EV_RX_OPSTART) | X(NM_EV_OPSTART_ACK) | -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32243 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ic3358629d17baab46f467a1ab82eea1837ad7390 Gerrit-Change-Number: 32243 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[L] Change in osmo-bts[master]: Merge gsm_network into gsm_bts_sm and place gsm_bts under it
by pespin 06 Apr '23

06 Apr '23
Attention is currently required from: pespin. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bts/+/32236 to look at the new patch set (#4). Change subject: Merge gsm_network into gsm_bts_sm and place gsm_bts under it ...................................................................... Merge gsm_network into gsm_bts_sm and place gsm_bts under it This way the data model in TS 12.21 (Figure 1) is followed, where there's a BTS Site Manager containing one or more BTS. In our case we only support 1 BTS (cell) so far. Change-Id: Ideb0d458ec631008223f861cf8b46d09524a1a21 Related: OS#5994 --- M include/osmo-bts/Makefile.am M include/osmo-bts/bts.h A include/osmo-bts/bts_sm.h M include/osmo-bts/gsm_data.h M include/osmo-bts/pcu_if.h M include/osmo-bts/vty.h M src/common/Makefile.am M src/common/abis_osmo.c M src/common/bts.c M src/common/bts_shutdown_fsm.c A src/common/bts_sm.c M src/common/main.c M src/common/nm_bts_sm_fsm.c M src/common/oml.c M src/common/pcu_sock.c M src/common/vty.c M src/osmo-bts-oc2g/oc2gbts_vty.c M src/osmo-bts-omldummy/main.c M tests/agch/agch_test.c M tests/cipher/cipher_test.c M tests/handover/handover_test.c M tests/meas/meas_test.c M tests/misc/misc_test.c M tests/paging/paging_test.c M tests/tx_power/tx_power_test.c 25 files changed, 271 insertions(+), 160 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/36/32236/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32236 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ideb0d458ec631008223f861cf8b46d09524a1a21 Gerrit-Change-Number: 32236 Gerrit-PatchSet: 4 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newpatchset
1 0
0 0
[S] Change in osmo-bts[master]: nm: Dispatch NM_EV_SW_ACT in cascade to BTS SiteMgr children
by pespin 06 Apr '23

06 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/32239 ) Change subject: nm: Dispatch NM_EV_SW_ACT in cascade to BTS SiteMgr children ...................................................................... nm: Dispatch NM_EV_SW_ACT in cascade to BTS SiteMgr children Change-Id: I97445812bb1b6de450411aceaeece2427027ae67 Related: OS#5994 --- M src/common/bts.c M src/common/nm_bts_sm_fsm.c 2 files changed, 11 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/39/32239/1 diff --git a/src/common/bts.c b/src/common/bts.c index 9c48a1d..37a3023 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -457,8 +457,6 @@ /* BTS SITE MGR becomes Offline (tx SW ACT Report), BTS, NSE, etc. is DEPENDENCY */ osmo_fsm_inst_dispatch(bts->site_mgr.mo.fi, NM_EV_SW_ACT, NULL); - osmo_fsm_inst_dispatch(bts->mo.fi, NM_EV_SW_ACT, NULL); - osmo_fsm_inst_dispatch(bts->gprs.nse.mo.fi, NM_EV_SW_ACT, NULL); /* All other objects start off-line until the BTS Model code says otherwise */ for (i = 0; i < bts->num_trx; i++) { diff --git a/src/common/nm_bts_sm_fsm.c b/src/common/nm_bts_sm_fsm.c index f775265..8752a90 100644 --- a/src/common/nm_bts_sm_fsm.c +++ b/src/common/nm_bts_sm_fsm.c @@ -69,6 +69,7 @@ case NM_EV_SW_ACT: oml_mo_tx_sw_act_rep(&site_mgr->mo); nm_bts_sm_fsm_state_chg(fi, NM_BTS_SM_ST_OP_DISABLED_OFFLINE); + ev_dispatch_children(site_mgr, event); return; default: OSMO_ASSERT(0); -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32239 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I97445812bb1b6de450411aceaeece2427027ae67 Gerrit-Change-Number: 32239 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[M] Change in osmo-bts[master]: Move GPRS NSE under BTS SiteMgr
by pespin 06 Apr '23

06 Apr '23
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/32240 ) Change subject: Move GPRS NSE under BTS SiteMgr ...................................................................... Move GPRS NSE under BTS SiteMgr As per ipaccess expectancies and following TS 12.21. Change-Id: If44d8f256cab7b2660900cedfb0ed9fe67eb3420 --- M include/osmo-bts/bts.h M include/osmo-bts/bts_sm.h M src/common/bts.c M src/common/bts_sm.c M src/common/nm_bts_sm_fsm.c M src/common/nm_gprs_cell_fsm.c M src/common/nm_gprs_nse_fsm.c M src/common/nm_gprs_nsvc_fsm.c M src/common/oml.c M src/common/pcu_sock.c M src/common/vty.c 11 files changed, 89 insertions(+), 65 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/40/32240/1 diff --git a/include/osmo-bts/bts.h b/include/osmo-bts/bts.h index b792fe9..6b5fe6f 100644 --- a/include/osmo-bts/bts.h +++ b/include/osmo-bts/bts.h @@ -119,27 +119,6 @@ } pf; }; -/* GPRS NSVC; ip.access specific NM Object */ -struct gsm_gprs_nse; -struct gsm_gprs_nsvc { - struct gsm_abis_mo mo; - struct gsm_gprs_nse *nse; - /* data read via VTY config file, to configure the BTS - * via OML from BSC */ - int id; - uint16_t nsvci; - struct osmo_sockaddr local; /* on the BTS */ - struct osmo_sockaddr remote; /* on the SGSN */ -}; - -/* GPRS NSE; ip.access specific NM Object */ -struct gsm_gprs_nse { - struct gsm_abis_mo mo; - uint16_t nsei; - uint8_t timer[7]; - struct gsm_gprs_nsvc nsvc[2]; -}; - /* GPRS CELL; ip.access specific NM Object */ struct gsm_gprs_cell { struct gsm_abis_mo mo; @@ -236,7 +215,6 @@ /* Not entirely sure how ip.access specific this is */ struct { - struct gsm_gprs_nse nse; struct gsm_gprs_cell cell; uint8_t rac; } gprs; @@ -394,11 +372,6 @@ #define GSM_BTS_HAS_SI(bts, i) ((bts)->si_valid & (1 << i)) #define GSM_BTS_SI(bts, i) (void *)((bts)->si_buf[i][0]) -static inline struct gsm_bts *gsm_gprs_nse_get_bts(struct gsm_gprs_nse *nse) -{ - return (struct gsm_bts *)container_of(nse, struct gsm_bts, gprs.nse); -} - static inline struct gsm_bts *gsm_gprs_cell_get_bts(struct gsm_gprs_cell *cell) { return (struct gsm_bts *)container_of(cell, struct gsm_bts, gprs.cell); diff --git a/include/osmo-bts/bts_sm.h b/include/osmo-bts/bts_sm.h index 60ee87c..3106115 100644 --- a/include/osmo-bts/bts_sm.h +++ b/include/osmo-bts/bts_sm.h @@ -1,12 +1,36 @@ #pragma once #include <osmocom/core/linuxlist.h> +#include <osmocom/core/socket.h> #include <osmocom/gsm/gsm23003.h> #include <osmo-bts/oml.h> struct pcu_sock_state; +/* GPRS NSVC; ip.access specific NM Object */ +struct gsm_gprs_nse; +struct gsm_gprs_nsvc { + struct gsm_abis_mo mo; + struct gsm_gprs_nse *nse; + /* data read via VTY config file, to configure the BTS + * via OML from BSC */ + int id; + uint16_t nsvci; + struct osmo_sockaddr local; /* on the BTS */ + struct osmo_sockaddr remote; /* on the SGSN */ +}; + +/* GPRS NSE; ip.access specific NM Object */ +struct gsm_gprs_nse { + struct gsm_abis_mo mo; + uint16_t nsei; + uint8_t timer[7]; + struct gsm_gprs_nsvc nsvc[2]; +}; + +struct gsm_bts *gsm_gprs_nse_get_bts(const struct gsm_gprs_nse *nse); + /* BTS Site Manager */ struct gsm_bts_sm { struct gsm_abis_mo mo; @@ -14,6 +38,9 @@ unsigned int num_bts; struct osmo_plmn_id plmn; struct pcu_sock_state *pcu_state; + struct { + struct gsm_gprs_nse nse; + } gprs; }; extern struct gsm_bts_sm *g_bts_sm; diff --git a/src/common/bts.c b/src/common/bts.c index a7178a2..0dd830a 100644 --- a/src/common/bts.c +++ b/src/common/bts.c @@ -145,7 +145,6 @@ {} }; -static const uint8_t bts_nse_timer_default[] = { 3, 3, 3, 3, 30, 3, 10 }; static const uint8_t bts_cell_timer_default[] = { 3, 3, 3, 3, 3, 10, 3, 10, 3, 10, 3 }; static const struct gprs_rlc_cfg rlc_cfg_default = { @@ -226,8 +225,6 @@ struct gsm_bts *gsm_bts_alloc(struct gsm_bts_sm *bts_sm, uint8_t bts_num) { struct gsm_bts *bts = talloc_zero(bts_sm, struct gsm_bts); - struct gsm_gprs_nse *nse = &bts->gprs.nse; - int i; if (!bts) return NULL; @@ -256,13 +253,6 @@ osmo_fsm_inst_update_id_f(bts->mo.fi, "bts%d", bts->nr); gsm_mo_init(&bts->mo, bts, NM_OC_BTS, bts->nr, 0xff, 0xff); - /* NM GPRS NSE */ - nse->mo.fi = osmo_fsm_inst_alloc(&nm_gprs_nse_fsm, bts, nse, - LOGL_INFO, NULL); - osmo_fsm_inst_update_id_f(nse->mo.fi, "gprs_nse%d", bts->nr); - gsm_mo_init(&nse->mo, bts, NM_OC_GPRS_NSE, bts->nr, 0xff, 0xff); - memcpy(&nse->timer, bts_nse_timer_default, sizeof(nse->timer)); - /* NM GPRS CELL */ bts->gprs.cell.mo.fi = osmo_fsm_inst_alloc(&nm_gprs_cell_fsm, bts, &bts->gprs.cell, LOGL_INFO, NULL); @@ -271,18 +261,6 @@ memcpy(&bts->gprs.cell.rlc_cfg, &rlc_cfg_default, sizeof(bts->gprs.cell.rlc_cfg)); memcpy(&bts->gprs.cell.timer, bts_cell_timer_default, sizeof(bts->gprs.cell.timer)); - /* NM GPRS NSVCs */ - for (i = 0; i < ARRAY_SIZE(nse->nsvc); i++) { - struct gsm_gprs_nsvc *nsvc = &nse->nsvc[i]; - nsvc->nse = nse; - nsvc->id = i; - nsvc->mo.fi = osmo_fsm_inst_alloc(&nm_gprs_nsvc_fsm, bts, nsvc, - LOGL_INFO, NULL); - osmo_fsm_inst_update_id_f(nsvc->mo.fi, "gprs_nsvc%d-%d", - nse->mo.obj_inst.bts_nr, i); - gsm_mo_init(&nsvc->mo, bts, NM_OC_GPRS_NSVC, nse->mo.obj_inst.bts_nr, i, 0xff); - } - /* create our primary TRX. It will be initialized during bts_init() */ bts->c0 = gsm_bts_trx_alloc(bts); if (!bts->c0) { @@ -371,12 +349,7 @@ /* Start with the BTS */ oml_mo_state_init(&bts->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); - oml_mo_state_init(&bts->gprs.nse.mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); oml_mo_state_init(&bts->gprs.cell.mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); - for (i = 0; i < ARRAY_SIZE(bts->gprs.nse.nsvc); i++) { - struct gsm_gprs_nsvc *nsvc = &bts->gprs.nse.nsvc[i]; - oml_mo_state_init(&nsvc->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); - } /* allocate a talloc pool for ORTP to ensure it doesn't have to go back * to the libc malloc all the time */ diff --git a/src/common/bts_sm.c b/src/common/bts_sm.c index a5ddd3a..4450cba 100644 --- a/src/common/bts_sm.c +++ b/src/common/bts_sm.c @@ -29,6 +29,13 @@ struct gsm_bts_sm *g_bts_sm; +static const uint8_t nse_timer_default[] = { 3, 3, 3, 3, 30, 3, 10 }; + +struct gsm_bts *gsm_gprs_nse_get_bts(const struct gsm_gprs_nse *nse) +{ + return gsm_bts_num(g_bts_sm, nse->mo.obj_inst.bts_nr); +} + static int gsm_bts_sm_talloc_destructor(struct gsm_bts_sm *bts_sm) { struct gsm_bts *bts; @@ -47,6 +54,8 @@ struct gsm_bts_sm *gsm_bts_sm_alloc(void *talloc_ctx) { struct gsm_bts_sm *bts_sm = talloc_zero(talloc_ctx, struct gsm_bts_sm); + struct gsm_gprs_nse *nse = &bts_sm->gprs.nse; + unsigned int i; if (!bts_sm) return NULL; @@ -60,8 +69,28 @@ LOGL_INFO, "bts_sm"); gsm_mo_init(&bts_sm->mo, NULL, NM_OC_SITE_MANAGER, 0xff, 0xff, 0xff); - oml_mo_state_init(&bts_sm->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); + /* NM GPRS NSE */ + nse->mo.fi = osmo_fsm_inst_alloc(&nm_gprs_nse_fsm, bts_sm, nse, + LOGL_INFO, NULL); + osmo_fsm_inst_update_id_f(nse->mo.fi, "gprs_nse%d", 0); + gsm_mo_init(&nse->mo, NULL, NM_OC_GPRS_NSE, 0, 0xff, 0xff); + oml_mo_state_init(&nse->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); + memcpy(&nse->timer, nse_timer_default, sizeof(nse->timer)); + + /* NM GPRS NSVCs */ + for (i = 0; i < ARRAY_SIZE(nse->nsvc); i++) { + struct gsm_gprs_nsvc *nsvc = &nse->nsvc[i]; + nsvc->nse = nse; + nsvc->id = i; + nsvc->mo.fi = osmo_fsm_inst_alloc(&nm_gprs_nsvc_fsm, bts_sm, nsvc, + LOGL_INFO, NULL); + osmo_fsm_inst_update_id_f(nsvc->mo.fi, "gprs_nsvc%d-%d", + nse->mo.obj_inst.bts_nr, i); + gsm_mo_init(&nsvc->mo, NULL, NM_OC_GPRS_NSVC, nse->mo.obj_inst.bts_nr, i, 0xff); + oml_mo_state_init(&nsvc->mo, NM_OPSTATE_DISABLED, NM_AVSTATE_NOT_INSTALLED); + } + return bts_sm; } diff --git a/src/common/nm_bts_sm_fsm.c b/src/common/nm_bts_sm_fsm.c index 586cfb1..01f5f99 100644 --- a/src/common/nm_bts_sm_fsm.c +++ b/src/common/nm_bts_sm_fsm.c @@ -46,8 +46,8 @@ static void ev_dispatch_children(struct gsm_bts_sm *site_mgr, uint32_t event) { struct gsm_bts *bts; + osmo_fsm_inst_dispatch(site_mgr->gprs.nse.mo.fi, event, NULL); llist_for_each_entry(bts, &site_mgr->bts_list, list) { - osmo_fsm_inst_dispatch(bts->gprs.nse.mo.fi, event, NULL); osmo_fsm_inst_dispatch(bts->mo.fi, event, NULL); } } diff --git a/src/common/nm_gprs_cell_fsm.c b/src/common/nm_gprs_cell_fsm.c index 036df3e..aaebe59 100644 --- a/src/common/nm_gprs_cell_fsm.c +++ b/src/common/nm_gprs_cell_fsm.c @@ -32,6 +32,7 @@ #include <osmo-bts/gsm_data.h> #include <osmo-bts/bts_model.h> #include <osmo-bts/bts.h> +#include <osmo-bts/bts_sm.h> #include <osmo-bts/rsl.h> #include <osmo-bts/nm_common_fsm.h> @@ -44,7 +45,7 @@ static bool gprs_cell_can_be_enabled(struct gsm_gprs_cell *cell) { struct gsm_bts *bts = gsm_gprs_cell_get_bts(cell); - return bts->gprs.nse.mo.nm_state.operational == NM_OPSTATE_ENABLED; + return bts->site_mgr->gprs.nse.mo.nm_state.operational == NM_OPSTATE_ENABLED; } diff --git a/src/common/nm_gprs_nse_fsm.c b/src/common/nm_gprs_nse_fsm.c index 4f02078..fa9c651 100644 --- a/src/common/nm_gprs_nse_fsm.c +++ b/src/common/nm_gprs_nse_fsm.c @@ -32,6 +32,7 @@ #include <osmo-bts/gsm_data.h> #include <osmo-bts/bts_model.h> #include <osmo-bts/bts.h> +#include <osmo-bts/bts_sm.h> #include <osmo-bts/rsl.h> #include <osmo-bts/nm_common_fsm.h> #include <osmo-bts/phy_link.h> diff --git a/src/common/nm_gprs_nsvc_fsm.c b/src/common/nm_gprs_nsvc_fsm.c index 5a7967d..05d7ff1 100644 --- a/src/common/nm_gprs_nsvc_fsm.c +++ b/src/common/nm_gprs_nsvc_fsm.c @@ -32,6 +32,7 @@ #include <osmo-bts/gsm_data.h> #include <osmo-bts/bts_model.h> #include <osmo-bts/bts.h> +#include <osmo-bts/bts_sm.h> #include <osmo-bts/rsl.h> #include <osmo-bts/nm_common_fsm.h> diff --git a/src/common/oml.c b/src/common/oml.c index 937fe73..227158c 100644 --- a/src/common/oml.c +++ b/src/common/oml.c @@ -1759,15 +1759,19 @@ mo = &g_bts_sm->mo; break; case NM_OC_GPRS_NSE: - mo = &bts->gprs.nse.mo; + if (obj_inst->bts_nr > 0) + return NULL; + mo = &g_bts_sm->gprs.nse.mo; break; case NM_OC_GPRS_CELL: mo = &bts->gprs.cell.mo; break; case NM_OC_GPRS_NSVC: - if (obj_inst->trx_nr >= ARRAY_SIZE(bts->gprs.nse.nsvc)) + if (obj_inst->bts_nr > 0) return NULL; - mo = &bts->gprs.nse.nsvc[obj_inst->trx_nr].mo; + if (obj_inst->trx_nr >= ARRAY_SIZE(g_bts_sm->gprs.nse.nsvc)) + return NULL; + mo = &g_bts_sm->gprs.nse.nsvc[obj_inst->trx_nr].mo; break; } return mo; @@ -1826,15 +1830,19 @@ obj = g_bts_sm; break; case NM_OC_GPRS_NSE: - obj = &bts->gprs.nse; + if (obj_inst->bts_nr > 0) + return NULL; + obj = &g_bts_sm->gprs.nse; break; case NM_OC_GPRS_CELL: obj = &bts->gprs.cell; break; case NM_OC_GPRS_NSVC: - if (obj_inst->trx_nr >= ARRAY_SIZE(bts->gprs.nse.nsvc)) + if (obj_inst->bts_nr > 0) return NULL; - obj = &bts->gprs.nse.nsvc[obj_inst->trx_nr]; + if (obj_inst->trx_nr >= ARRAY_SIZE(g_bts_sm->gprs.nse.nsvc)) + return NULL; + obj = &g_bts_sm->gprs.nse.nsvc[obj_inst->trx_nr]; break; } return obj; diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c index 36520fb..2946607 100644 --- a/src/common/pcu_sock.c +++ b/src/common/pcu_sock.c @@ -242,9 +242,9 @@ LOGP(DPCU, LOGL_INFO, "Sending info\n"); + nse = &g_bts_sm->gprs.nse; /* FIXME: allow multiple BTS */ bts = llist_entry(g_bts_sm->bts_list.next, struct gsm_bts, list); - nse = &bts->gprs.nse; rlcc = &bts->gprs.cell.rlc_cfg; msg = pcu_msgb_alloc(PCU_IF_MSG_INFO_IND, bts->nr); diff --git a/src/common/vty.c b/src/common/vty.c index 051ad92..fd28828 100644 --- a/src/common/vty.c +++ b/src/common/vty.c @@ -1352,7 +1352,7 @@ static void gprs_dump_vty(struct vty *vty, const struct gsm_bts *bts) { unsigned int i; - const struct gsm_gprs_nse *nse = &bts->gprs.nse; + const struct gsm_gprs_nse *nse = &bts->site_mgr->gprs.nse; /* GPRS parameters received from the BSC */ vty_out(vty, "BTS %u, RAC %u, NSEI %u, BVCI %u%s", -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32240 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: If44d8f256cab7b2660900cedfb0ed9fe67eb3420 Gerrit-Change-Number: 32240 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[L] Change in osmo-bts[master]: Introduce NM FSM for GPRS NSVC object
by pespin 06 Apr '23

06 Apr '23
Attention is currently required from: fixeria. Hello osmith, Jenkins Builder, fixeria, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bts/+/32226 to look at the new patch set (#4). Change subject: Introduce NM FSM for GPRS NSVC object ...................................................................... Introduce NM FSM for GPRS NSVC object Change-Id: I684482064136a461d01cace3cd37afc8b68458cc Related: OS#5994 --- M include/osmo-bts/nm_common_fsm.h M src/common/Makefile.am M src/common/bts.c M src/common/nm_gprs_nse_fsm.c A src/common/nm_gprs_nsvc_fsm.c M src/common/oml.c M src/osmo-bts-lc15/oml.c M src/osmo-bts-oc2g/oml.c M src/osmo-bts-octphy/l1_oml.c M src/osmo-bts-omldummy/bts_model.c M src/osmo-bts-sysmo/oml.c M src/osmo-bts-trx/l1_if.c M src/osmo-bts-virtual/bts_model.c 13 files changed, 313 insertions(+), 54 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/26/32226/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/32226 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I684482064136a461d01cace3cd37afc8b68458cc Gerrit-Change-Number: 32226 Gerrit-PatchSet: 4 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: osmith <osmith(a)sysmocom.de> Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-MessageType: newpatchset
1 0
0 0
[M] Change in osmo-bsc[master]: si2quater: add CTRL commands for deleting neighbor [EU]ARFCNs
by pespin 06 Apr '23

06 Apr '23
Attention is currently required from: laforge, fixeria. pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/32235 ) Change subject: si2quater: add CTRL commands for deleting neighbor [EU]ARFCNs ...................................................................... Patch Set 2: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/32235 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I890bffb003f2a0ee9438f6ea6e8067c092504f08 Gerrit-Change-Number: 32235 Gerrit-PatchSet: 2 Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Comment-Date: Thu, 06 Apr 2023 15:46:21 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
[M] Change in osmo-bsc[master]: si2quater: add CTRL commands for deleting neighbor [EU]ARFCNs
by fixeria 06 Apr '23

06 Apr '23
Attention is currently required from: laforge, pespin. fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/32235 ) Change subject: si2quater: add CTRL commands for deleting neighbor [EU]ARFCNs ...................................................................... Patch Set 1: (3 comments) Commit Message: https://gerrit.osmocom.org/c/osmo-bsc/+/32235/comment/f850d1c5_f64214d2 PS1, Line 9: EUTRAN neighbors can be deteled using the following command: > deleted Done https://gerrit.osmocom.org/c/osmo-bsc/+/32235/comment/50ae601c_3b73c943 PS1, Line 15: UUTRAN neighbors can be deteled using the following command: > deleted. […] Done File src/osmo-bsc/bts_ctrl.c: https://gerrit.osmocom.org/c/osmo-bsc/+/32235/comment/d21debc7_0e46c881 PS1, Line 651: /* si2quater neighbor management: del UARFCN */ > You are missing SCRAMBLE here documenting the format. Done -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/32235 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I890bffb003f2a0ee9438f6ea6e8067c092504f08 Gerrit-Change-Number: 32235 Gerrit-PatchSet: 1 Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Thu, 06 Apr 2023 15:36:09 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: comment
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • ...
  • 226
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.