Change in osmo-bsc[master]: Allow configuring SI13 CCN_ACTIVE bit from VTY, enable by default on ...

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

laforge gerrit-no-reply at lists.osmocom.org
Sat Jan 30 19:16:18 UTC 2021


laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/21714 )

Change subject: Allow configuring SI13 CCN_ACTIVE bit from VTY, enable by default on osmo-bts
......................................................................

Allow configuring SI13 CCN_ACTIVE bit from VTY, enable by default on osmo-bts

This is required in order to tell MS that osmo-pcu now supports
Network Assisted Cell Change (NACC).

Other BTS are not enabled by default since NACC support is not known to
work nor tested there.

Depends: libosmocore.git Change-Id I61991266b95d0c13d51b47906cc07846e9cf1390
Related: SYS#4909
Change-Id: If91d85331d402c3ab9c32b70c2c66cd7ba6ceb28
---
M include/osmocom/bsc/bts.h
M src/osmo-bsc/bsc_vty.c
M src/osmo-bsc/bts_sysmobts.c
M src/osmo-bsc/system_information.c
4 files changed, 33 insertions(+), 0 deletions(-)

Approvals:
  laforge: Looks good to me, but someone else must approve
  fixeria: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/include/osmocom/bsc/bts.h b/include/osmocom/bsc/bts.h
index b81f45f..6797d1c 100644
--- a/include/osmocom/bsc/bts.h
+++ b/include/osmocom/bsc/bts.h
@@ -387,6 +387,10 @@
 		uint8_t net_ctrl_ord;
 		bool ctrl_ack_type_use_block;
 		bool egprs_pkt_chan_request;
+		struct {
+			bool active; /* CCN_ACTIVE */
+			bool forced_vty; /* set by VTY ? */
+		} ccn; /* TS 44.060 sec 8.8.2 */
 	} gprs;
 
 	/* threshold (in percent) when BTS shall send CCCH LOAD IND */
diff --git a/src/osmo-bsc/bsc_vty.c b/src/osmo-bsc/bsc_vty.c
index 4781217..03b87b4 100644
--- a/src/osmo-bsc/bsc_vty.c
+++ b/src/osmo-bsc/bsc_vty.c
@@ -758,6 +758,9 @@
 		bts->gprs.net_ctrl_ord, VTY_NEWLINE);
 	if (!bts->gprs.ctrl_ack_type_use_block)
 		vty_out(vty, "  gprs control-ack-type-rach%s", VTY_NEWLINE);
+	if (bts->gprs.ccn.forced_vty)
+		vty_out(vty, "  gprs ccn-active %d%s",
+			bts->gprs.ccn.active ? 1 : 0, VTY_NEWLINE);
 	vty_out(vty, "  gprs cell bvci %u%s", bts->gprs.cell.bvci,
 		VTY_NEWLINE);
 	for (i = 0; i < ARRAY_SIZE(bts->gprs.cell.timer); i++)
@@ -3486,6 +3489,24 @@
 	return CMD_SUCCESS;
 }
 
+DEFUN_USRATTR(cfg_bts_gprs_ccn_active,
+	      cfg_bts_gprs_ccn_active_cmd,
+	      X(BSC_VTY_ATTR_RESTART_ABIS_RSL_LINK),
+	      "gprs ccn-active (0|1|default)",
+	      GPRS_TEXT
+	      "Set CCN_ACTIVE in the GPRS Cell Options IE on the BCCH (SI13)\n"
+	      "Disable\n" "Enable\n" "Default based on BTS type support\n")
+{
+	struct gsm_bts *bts = vty->index;
+
+	bts->gprs.ccn.forced_vty = strcmp(argv[0], "default") != 0;
+
+	if (bts->gprs.ccn.forced_vty)
+		bts->gprs.ccn.active = argv[0][0] == '1';
+
+	return CMD_SUCCESS;
+}
+
 DEFUN_USRATTR(cfg_no_bts_gprs_ctrl_ack,
 	      cfg_no_bts_gprs_ctrl_ack_cmd,
 	      X(BSC_VTY_ATTR_RESTART_ABIS_RSL_LINK),
@@ -7637,6 +7658,7 @@
 	install_element(BTS_NODE, &cfg_bts_gprs_rac_cmd);
 	install_element(BTS_NODE, &cfg_bts_gprs_net_ctrl_ord_cmd);
 	install_element(BTS_NODE, &cfg_bts_gprs_ctrl_ack_cmd);
+	install_element(BTS_NODE, &cfg_bts_gprs_ccn_active_cmd);
 	install_element(BTS_NODE, &cfg_no_bts_gprs_ctrl_ack_cmd);
 	install_element(BTS_NODE, &cfg_bts_gprs_bvci_cmd);
 	install_element(BTS_NODE, &cfg_bts_gprs_cell_timer_cmd);
diff --git a/src/osmo-bsc/bts_sysmobts.c b/src/osmo-bsc/bts_sysmobts.c
index e319f2c..f24c615 100644
--- a/src/osmo-bsc/bts_sysmobts.c
+++ b/src/osmo-bsc/bts_sysmobts.c
@@ -61,6 +61,7 @@
 	osmo_bts_set_feature(&model_sysmobts.features, BTS_FEAT_EGPRS);
 	osmo_bts_set_feature(&model_sysmobts.features, BTS_FEAT_PAGING_COORDINATION);
 	osmo_bts_set_feature(&model_sysmobts.features, BTS_FEAT_IPV6_NSVC);
+	osmo_bts_set_feature(&model_sysmobts.features, BTS_FEAT_CCN);
 
 	model_sysmobts.nm_att_tlvdef.def[NM_ATT_OSMO_NS_LINK_CFG].type = TLV_TYPE_TL16V;
 
diff --git a/src/osmo-bsc/system_information.c b/src/osmo-bsc/system_information.c
index 10b0e4d..d018ec3 100644
--- a/src/osmo-bsc/system_information.c
+++ b/src/osmo-bsc/system_information.c
@@ -1206,6 +1206,7 @@
 			.pfc_supported = 0,
 			.dtm_supported = 0,
 			.bss_paging_coordination = 0,
+			.ccn_active = false,
 		},
 	},
 	.pwr_ctrl_pars = {
@@ -1255,6 +1256,11 @@
 	else
 		si13_default.cell_opts.ext_info.bss_paging_coordination = 0;
 
+	si13_default.cell_opts.ext_info.ccn_active = bts->gprs.ccn.forced_vty ?
+						     bts->gprs.ccn.active :
+						     osmo_bts_has_feature(&bts->model->features,
+									  BTS_FEAT_CCN);
+
 	ret = osmo_gsm48_rest_octets_si13_encode(si13->rest_octets, &si13_default);
 	if (ret < 0)
 		return ret;

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

Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: If91d85331d402c3ab9c32b70c2c66cd7ba6ceb28
Gerrit-Change-Number: 21714
Gerrit-PatchSet: 6
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210130/fd547978/attachment.htm>


More information about the gerrit-log mailing list