pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/27933 )
Change subject: Introduce VTY command 'ccch load-indication-period <0-255>' ......................................................................
Introduce VTY command 'ccch load-indication-period <0-255>'
Change-Id: Id9d23238863c02a72bcf32942f6b0d40be127904 --- M include/osmocom/bsc/bts.h M src/osmo-bsc/bts.c M src/osmo-bsc/bts_ipaccess_nanobts_omlattr.c M src/osmo-bsc/bts_vty.c 4 files changed, 22 insertions(+), 2 deletions(-)
Approvals: laforge: Looks good to me, but someone else must approve fixeria: Looks good to me, but someone else must approve pespin: Looks good to me, approved Jenkins Builder: Verified
diff --git a/include/osmocom/bsc/bts.h b/include/osmocom/bsc/bts.h index 1ac30a7..151fd78 100644 --- a/include/osmocom/bsc/bts.h +++ b/include/osmocom/bsc/bts.h @@ -471,8 +471,10 @@ } pwr_ctrl; /* TS 44.060 Table 12.9.1 */ } gprs;
- /* threshold (in percent) when BTS shall send CCCH LOAD IND */ + /* CCCH Load Threshold: threshold (in percent) when BTS shall send CCCH LOAD IND */ uint8_t ccch_load_ind_thresh; + /* CCCH Load Indication Period: how often (secs) to send CCCH LOAD IND when over CCCH Load Threshold. */ + uint8_t ccch_load_ind_period;
/* RACH NM values */ int rach_b_thresh; diff --git a/src/osmo-bsc/bts.c b/src/osmo-bsc/bts.c index 54d9cdd..4e65e51 100644 --- a/src/osmo-bsc/bts.c +++ b/src/osmo-bsc/bts.c @@ -266,6 +266,7 @@ bts->c0->ts[0].pchan_from_config = GSM_PCHAN_CCCH_SDCCH4; /* TODO: really?? */
bts->ccch_load_ind_thresh = 10; /* 10% of Load: Start sending CCCH LOAD IND */ + bts->ccch_load_ind_period = 1; /* Send CCCH LOAD IND every 1 second */ bts->rach_b_thresh = -1; bts->rach_ldavg_slots = -1;
diff --git a/src/osmo-bsc/bts_ipaccess_nanobts_omlattr.c b/src/osmo-bsc/bts_ipaccess_nanobts_omlattr.c index 4f7a487..0c08616 100644 --- a/src/osmo-bsc/bts_ipaccess_nanobts_omlattr.c +++ b/src/osmo-bsc/bts_ipaccess_nanobts_omlattr.c @@ -71,7 +71,7 @@ msgb_tv_put(msgb, NM_ATT_CCCH_L_T, bts->ccch_load_ind_thresh);
/* CCCH Load Indication Period (3GPP TS 12.21 sec 9.4.11), seconds */ - msgb_tv_put(msgb, NM_ATT_CCCH_L_I_P, 1); + msgb_tv_put(msgb, NM_ATT_CCCH_L_I_P, bts->ccch_load_ind_period);
/* RACH Busy Threshold (3GPP TS 12.21 sec 9.4.44), -dBm */ buf[0] = 90; /* -90 dBm as default "busy" threshold */ diff --git a/src/osmo-bsc/bts_vty.c b/src/osmo-bsc/bts_vty.c index 1411cd3..1a708ab 100644 --- a/src/osmo-bsc/bts_vty.c +++ b/src/osmo-bsc/bts_vty.c @@ -926,6 +926,19 @@ return CMD_SUCCESS; }
+DEFUN_USRATTR(cfg_bts_ccch_load_ind_period, + cfg_bts_ccch_load_ind_period_cmd, + X(BSC_VTY_ATTR_RESTART_ABIS_OML_LINK), + "ccch load-indication-period <0-255>", + CCCH_STR + "Period of time at which BTS sends RSL CCCH LOAD IND\n" + "CCCH Load Indication Period in seconds (Default: 1)\n") +{ + struct gsm_bts *bts = vty->index; + bts->ccch_load_ind_period = atoi(argv[0]); + return CMD_SUCCESS; +} + #define NM_STR "Network Management\n"
DEFUN_USRATTR(cfg_bts_rach_nm_b_thresh, @@ -4166,6 +4179,9 @@ if (bts->ccch_load_ind_thresh != 10) vty_out(vty, " ccch load-indication-threshold %u%s", bts->ccch_load_ind_thresh, VTY_NEWLINE); + if (bts->ccch_load_ind_period != 1) + vty_out(vty, " ccch load-indication-period %u%s", + bts->ccch_load_ind_period, VTY_NEWLINE); if (bts->rach_b_thresh != -1) vty_out(vty, " rach nm busy threshold %u%s", bts->rach_b_thresh, VTY_NEWLINE); @@ -4479,6 +4495,7 @@ install_element(BTS_NODE, &cfg_bts_chan_desc_bs_ag_blks_res_cmd); install_element(BTS_NODE, &cfg_bts_chan_dscr_bs_ag_blks_res_cmd); install_element(BTS_NODE, &cfg_bts_ccch_load_ind_thresh_cmd); + install_element(BTS_NODE, &cfg_bts_ccch_load_ind_period_cmd); install_element(BTS_NODE, &cfg_bts_rach_nm_b_thresh_cmd); install_element(BTS_NODE, &cfg_bts_rach_nm_ldavg_cmd); install_element(BTS_NODE, &cfg_bts_cell_barred_cmd);