Change in osmo-bsc[master]: MS Power Control Loop: Support turn off C/I based logic

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/.

pespin gerrit-no-reply at lists.osmocom.org
Mon Sep 20 12:55:54 UTC 2021


pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/25513 )


Change subject: MS Power Control Loop: Support turn off C/I based logic
......................................................................

MS Power Control Loop: Support turn off C/I based logic

Setting LOWER_CMP_N and UPPER_CMP_N for all channel types can be quite
cumbersome and end up in lengthy config files. Let's instead add a
placeholder command to apply it to all channel types of a BTS at once.
This is useful specially since a user disabling C/I capabilities
probably does so because it may require a fair amount of fine-tuning
parameters to have it working perfectly. Hence, a user not willing to
spend time configuring those parameters correctly (and for which default
ones doesn't work properly) will require quick way to get rid of C/I
based MS Power Control Loop. By disabling C/I comparison, osmo-bts will
rely on RxLev only when applying the MS Power Control Loop, which is
fine for non noisy environments.

Related: SYS#4917
Change-Id: I0e1a1a9228a15e9ec9c41b7952b03e1d25309706
---
M doc/manuals/chapters/power_control.adoc
M src/osmo-bsc/bts_vty.c
M tests/power_ctrl.vty
3 files changed, 77 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/13/25513/1

diff --git a/doc/manuals/chapters/power_control.adoc b/doc/manuals/chapters/power_control.adoc
index 54cbd5b..b9e4bb7 100644
--- a/doc/manuals/chapters/power_control.adoc
+++ b/doc/manuals/chapters/power_control.adoc
@@ -345,6 +345,14 @@
 <3> P0=2 out of N1=10 averages < L_CI_AMR_FR_XX_P => increase power.
 <4> P1=3 out of N2=4 averages > U_CI_AMR_FR_XX_P => decrease power.
 
+NOTE: The BSC can instruct a BTS to disable C/I related logic in its
+autonomous MS Power Control Loop for a given channel type (hence no taking C/I
+measurements into account) by means of setting both related LOWER_CMP_N and
+UPPER_CMP_N parameters to zero (see _ci-thresh-comp_ VTY command). For the sake
+of easing configuration, a placeholder VTY command to disable C/I for all
+channel types is available under VTY node _ms-power-control_ as *_ci-thresh-comp
+disable all_*.
+
 ==== Measurement averaging process
 
 3GPP 45.008, section A.3.1 requires that the measurement values reported by both
diff --git a/src/osmo-bsc/bts_vty.c b/src/osmo-bsc/bts_vty.c
index 3774344..7a502d7 100644
--- a/src/osmo-bsc/bts_vty.c
+++ b/src/osmo-bsc/bts_vty.c
@@ -3272,6 +3272,35 @@
 	return CMD_SUCCESS;
 }
 
+DEFUN_USRATTR(cfg_power_ctrl_ci_thresh_comp_disable,
+	      cfg_power_ctrl_ci_thresh_comp_disable_cmd,
+	      X(BSC_VTY_ATTR_VENDOR_SPECIFIC) |
+	      X(BSC_VTY_ATTR_NEW_LCHAN),
+	      "ci-thresh-comp disable all",
+	      "Set Carrier-to_interference (C/I) threshold comparators (for dynamic mode)\n"
+	      "Disable C/I comparison in control loop (sets LOWER_CMP_N and UPPER_CMP_N to zero)\n"
+	      "Disable C/I comparison for all channel types\n")
+{
+	struct gsm_power_ctrl_params *params = vty->index;
+
+#define DISABLE_MEAS_PC(PARAMS, TYPE) \
+	(PARAMS)->TYPE##_meas.lower_cmp_p = 0; \
+	(PARAMS)->TYPE##_meas.lower_cmp_n = 0; \
+	(PARAMS)->TYPE##_meas.upper_cmp_p = 0; \
+	(PARAMS)->TYPE##_meas.upper_cmp_n = 0
+
+	DISABLE_MEAS_PC(params, ci_fr);
+	DISABLE_MEAS_PC(params, ci_hr);
+	DISABLE_MEAS_PC(params, ci_amr_fr);
+	DISABLE_MEAS_PC(params, ci_amr_hr);
+	DISABLE_MEAS_PC(params, ci_sdcch);
+	DISABLE_MEAS_PC(params, ci_gprs);
+
+#undef DISABLE_MEAS_PC
+
+	return CMD_SUCCESS;
+}
+
 #define POWER_CONTROL_MEAS_AVG_CMD \
 	"(rxlev-avg|rxqual-avg)"
 #define POWER_CONTROL_MEAS_AVG_DESC \
@@ -4445,6 +4474,7 @@
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_rxlev_thresh_comp_cmd);
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_rxqual_thresh_comp_cmd);
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_ci_thresh_comp_cmd);
+	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_ci_thresh_comp_disable_cmd);
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_no_avg_cmd);
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_avg_params_cmd);
 	install_element(POWER_CTRL_NODE, &cfg_power_ctrl_avg_algo_cmd);
diff --git a/tests/power_ctrl.vty b/tests/power_ctrl.vty
index af02cd4..b14a905 100644
--- a/tests/power_ctrl.vty
+++ b/tests/power_ctrl.vty
@@ -38,6 +38,7 @@
   . lv  rxlev-thresh-comp lower <0-31> <0-31> upper <0-31> <0-31>
   . lv  rxqual-thresh-comp lower <0-31> <0-31> upper <0-31> <0-31>
   . lv  ci-thresh-comp (fr-efr|hr|amr-fr|amr-hr|sdcch|gprs) lower <0-31> <0-31> upper <0-31> <0-31>
+  . lv  ci-thresh-comp disable all
   . lv  no (rxlev-avg|rxqual-avg)
   . lv  (rxlev-avg|rxqual-avg) params hreqave <1-31> hreqt <1-31>
   . lv  (rxlev-avg|rxqual-avg) algo (unweighted|weighted|mod-median)
@@ -118,6 +119,7 @@
   . lv  rxlev-thresh-comp lower <0-31> <0-31> upper <0-31> <0-31>
   . lv  rxqual-thresh-comp lower <0-31> <0-31> upper <0-31> <0-31>
   . lv  ci-thresh-comp (fr-efr|hr|amr-fr|amr-hr|sdcch|gprs) lower <0-31> <0-31> upper <0-31> <0-31>
+  . lv  ci-thresh-comp disable all
   . lv  no (rxlev-avg|rxqual-avg)
   . lv  (rxlev-avg|rxqual-avg) params hreqave <1-31> hreqt <1-31>
   . lv  (rxlev-avg|rxqual-avg) algo (unweighted|weighted|mod-median)
@@ -295,3 +297,40 @@
    rxqual-thresh lower 3 upper 0
    rxqual-thresh-comp lower 5 7 upper 15 18
 ...
+
+OsmoBSC(config-net-bts)# ### Check 'ci-thresh-comp disable all' works properly:
+OsmoBSC(config-net-bts)# ms-power-control
+OsmoBSC(config-ms-power-ctrl)# show running-config
+...
+  ms-power-control
+...
+   ci-thresh-comp fr-efr lower 5 7 upper 15 18
+...
+   ci-thresh-comp hr lower 5 7 upper 15 18
+...
+   ci-thresh-comp amr-fr lower 5 7 upper 15 18
+...
+   ci-thresh-comp amr-hr lower 5 7 upper 15 18
+...
+   ci-thresh-comp sdcch lower 5 7 upper 15 18
+...
+   ci-thresh-comp gprs lower 5 7 upper 15 18
+...
+
+OsmoBSC(config-ms-power-ctrl)# ci-thresh-comp disable all
+OsmoBSC(config-ms-power-ctrl)# show running-config
+...
+  ms-power-control
+...
+   ci-thresh-comp fr-efr lower 0 0 upper 0 0
+...
+   ci-thresh-comp hr lower 0 0 upper 0 0
+...
+   ci-thresh-comp amr-fr lower 0 0 upper 0 0
+...
+   ci-thresh-comp amr-hr lower 0 0 upper 0 0
+...
+   ci-thresh-comp sdcch lower 0 0 upper 0 0
+...
+   ci-thresh-comp gprs lower 0 0 upper 0 0
+...

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/25513
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: I0e1a1a9228a15e9ec9c41b7952b03e1d25309706
Gerrit-Change-Number: 25513
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210920/1c4b0046/attachment.htm>


More information about the gerrit-log mailing list