Projects
osmocom:nightly
osmo-bsc
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 274
View file
osmo-bsc.spec
Changed
@@ -17,14 +17,14 @@ %define _lto_cflags %{nil} Name: osmo-bsc -Requires: osmocom-nightly = 202303200005 -Version: 1.10.0.98.f276.202303200005 +Requires: osmocom-nightly = 202303210007 +Version: 1.10.0.107.56365.202303210007 Release: 0 Summary: OsmoBSC: Osmocom's Base Station Controller for 2G CS mobile networks License: AGPL-3.0-or-later AND GPL-2.0-or-later Group: Hardware/Mobile URL: https://osmocom.org/projects/osmobsc -Source: osmo-bsc_1.10.0.98.f276.202303200005.tar.xz +Source: osmo-bsc_1.10.0.107.56365.202303210007.tar.xz Source1: rpmlintrc BuildRequires: automake >= 1.9 BuildRequires: libtool >= 2 @@ -49,7 +49,7 @@ OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks. %package abisip-find -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: CLI utility to find ip.access compatible BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -58,7 +58,7 @@ Command line utility to find ip.access compatible BTS. %package ipaccess-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for ip.access nanoBTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -69,7 +69,7 @@ and ipaccess-proxy. %package bs11-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for Siemens BS-11 BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -80,7 +80,7 @@ public telephone network as frequency standard for the E1 line. %package meas-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for OsmoBSC's measurement reports License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities
View file
osmo-bsc_1.10.0.98.f276.202303200005.dsc -> osmo-bsc_1.10.0.107.56365.202303210007.dsc
Changed
@@ -2,7 +2,7 @@ Source: osmo-bsc Binary: osmo-bsc, osmo-bsc-dbg, abisip-find, osmo-bsc-ipaccess-utils, osmo-bsc-bs11-utils, osmo-bsc-meas-utils, osmo-bsc-doc Architecture: any all -Version: 1.10.0.98.f276.202303200005 +Version: 1.10.0.107.56365.202303210007 Maintainer: Osmocom team <openbsc@lists.osmocom.org> Homepage: https://projects.osmocom.org/projects/osmo-bsc Standards-Version: 3.9.8 @@ -18,8 +18,8 @@ osmo-bsc-ipaccess-utils deb net extra arch=any osmo-bsc-meas-utils deb net extra arch=any Checksums-Sha1: - 65a03eca80d580d9cf9d16c6ee4a911b75aab038 595812 osmo-bsc_1.10.0.98.f276.202303200005.tar.xz + 47d868b041965abfd59a93880a2256654ba9b072 596152 osmo-bsc_1.10.0.107.56365.202303210007.tar.xz Checksums-Sha256: - e2c5b1f3b1cd66fd7fd256767e29a4da646158d17bd7eccbef7fcaaa3e1f0ef9 595812 osmo-bsc_1.10.0.98.f276.202303200005.tar.xz + 251e6062760438d8845dc6de7107c7cf28ff6183575d42759099094218f199aa 596152 osmo-bsc_1.10.0.107.56365.202303210007.tar.xz Files: - 374ebfb6098b0f3dd28892ef764823b1 595812 osmo-bsc_1.10.0.98.f276.202303200005.tar.xz + b93ed52183b4ce84b5475687841c6f42 596152 osmo-bsc_1.10.0.107.56365.202303210007.tar.xz
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/.tarball-version -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.10.0.98-f276.202303200005 +1.10.0.107-56365.202303210007
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/contrib/osmo-bsc.spec.in -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/contrib/osmo-bsc.spec.in
Changed
@@ -17,7 +17,7 @@ %define _lto_cflags %{nil} Name: osmo-bsc -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Version: @VERSION@ Release: 0 Summary: OsmoBSC: Osmocom's Base Station Controller for 2G CS mobile networks @@ -48,7 +48,7 @@ OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks. %package abisip-find -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: CLI utility to find ip.access compatible BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -57,7 +57,7 @@ Command line utility to find ip.access compatible BTS. %package ipaccess-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for ip.access nanoBTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -68,7 +68,7 @@ and ipaccess-proxy. %package bs11-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for Siemens BS-11 BTS License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities @@ -79,7 +79,7 @@ public telephone network as frequency standard for the E1 line. %package meas-utils -Requires: osmocom-nightly = 202303200005 +Requires: osmocom-nightly = 202303210007 Summary: Command line utilities for OsmoBSC's measurement reports License: GPL-2.0-or-later Group: Productivity/Telephony/Utilities
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/debian/changelog -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -osmo-bsc (1.10.0.98.f276.202303200005) unstable; urgency=medium +osmo-bsc (1.10.0.107.56365.202303210007) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom nightly feed - -- Osmocom OBS scripts <info@osmocom.org> Mon, 20 Mar 2023 00:06:26 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Tue, 21 Mar 2023 00:07:54 +0000 osmo-bsc (1.10.0) unstable; urgency=medium
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/debian/control -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/debian/control
Changed
@@ -26,7 +26,7 @@ Package: osmo-bsc Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202303200005), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends}, ${shlibs:Depends} Recommends: osmo-mgw Description: OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks @@ -34,19 +34,19 @@ Section: debug Architecture: any Multi-Arch: same -Depends: osmocom-nightly (= 202303200005), osmo-bsc (= ${binary:Version}), ${misc:Depends} +Depends: osmocom-nightly (= 202303210007), osmo-bsc (= ${binary:Version}), ${misc:Depends} Description: OsmoBSC: Osmocom's Base Station Controller for 2G circuit-switched mobile networks Package: abisip-find Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202303200005), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends}, ${shlibs:Depends} Description: Command line utility to find ip.access compatible BTS Package: osmo-bsc-ipaccess-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202303200005), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities for ip.access nanoBTS This package contains utilities that are specific for nanoBTS when being used together with OpenBSC. It contains mainly two tools: ipaccess-config and ipaccess-proxy. @@ -54,7 +54,7 @@ Package: osmo-bsc-bs11-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202303200005), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities for Siemens BS-11 BTS There is a tool in this package for configuring the Siemens BS-11 BTS. Additionally, it contains one tool for making use of an ISDN-card and the @@ -63,14 +63,14 @@ Package: osmo-bsc-meas-utils Architecture: any Multi-Arch: foreign -Depends: osmocom-nightly (= 202303200005), ${misc:Depends}, ${shlibs:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends}, ${shlibs:Depends} Description: Command line utilities to manage measurement reports. Package: osmo-bsc-doc Architecture: all Section: doc Priority: optional -Depends: osmocom-nightly (= 202303200005), ${misc:Depends} +Depends: osmocom-nightly (= 202303210007), ${misc:Depends} Description: ${misc:Package} PDF documentation Various manuals: user manual, VTY reference manual and/or protocol/interface manuals.
View file
osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/doc/examples/osmo-bsc/ericsson/osmo-bsc.dug20-rus02-1trx-1pdch-16kbps.cfg
Added
@@ -0,0 +1,103 @@ +! +! OpenBSC (0.9.11.308-62d46) configuration saved from vty +!! +! CAUTION: The 16kbps mode of the Ericcson RBS CCU only allows for a very +! minimal GPRS configuration (C1/C2 only). +! +password foo +! +line vty + no login +! +log stderr + logging level lmi info + logging level linp info + logging level nm debug + logging level rsl debug + logging level llapd notice +network + network country code 901 + mobile network code 70 + neci 0 + paging any use tch 0 + handover 0 + handover window rxlev averaging 10 + handover window rxqual averaging 1 + handover window rxlev neighbor averaging 10 + handover power budget interval 6 + handover power budget hysteresis 3 + handover maximum distance 9999 + timer t3101 10 + timer t3105 40 + timer t3109 4 + timer t3113 60 + pcu-socket /tmp/pcu_bts + bts 0 + type rbs2000 + band GSM900 + om2000 version-limit oml gen 12 rev 10 + cell_identity 0 + location_area_code 0x0001 + training_sequence_code 7 + base_station_id_code 63 + ms max power 15 + cell reselection hysteresis 4 + rxlev access min 0 + channel allocator mode set-all descending + rach tx integer 9 + rach max transmission 7 + oml e1 line 0 timeslot 1 sub-slot full + oml e1 tei 62 + neighbor-list mode automatic + gprs mode gprs + is-connection-list add 4 512 4 + is-connection-list add 8 516 1 + is-connection-list add 12 517 1 + is-connection-list add 16 518 1 + is-connection-list add 20 519 1 + is-connection-list add 24 520 1 + is-connection-list add 28 521 1 + is-connection-list add 32 522 1 + is-connection-list add 36 523 1 + trx 0 + rf_locked 0 + arfcn 123 + nominal power 44 + max_power_red 0 + rsl e1 line 0 timeslot 1 sub-slot full + rsl e1 tei 0 + timeslot 0 + phys_chan_config CCCH+SDCCH4 + hopping enabled 0 + e1 line 0 timeslot 1 sub-slot full + timeslot 1 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 3 sub-slot 0 + timeslot 2 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 4 sub-slot 0 + timeslot 3 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 5 sub-slot 0 + timeslot 4 + phys_chan_config TCH/F_TCH/H_SDCCH8_PDCH + hopping enabled 0 + e1 line 0 timeslot 6 sub-slot 0 + timeslot 5 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 7 sub-slot 0 + timeslot 6 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 8 sub-slot 0 + timeslot 7 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 9 sub-slot 0 +e1_input + e1_line 0 driver dahdi + e1_line 0 port 2
View file
osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/doc/examples/osmo-bsc/ericsson/osmo-bsc.dug20-rus02-1trx-1pdch-64kbps.cfg
Added
@@ -0,0 +1,92 @@ +! +! OpenBSC (0.9.11.308-62d46) configuration saved from vty +!! +password foo +! +line vty + no login +! +log stderr + logging level lmi info + logging level linp info + logging level nm debug + logging level rsl debug + logging level llapd notice +network + network country code 901 + mobile network code 70 + neci 0 + paging any use tch 0 + handover 0 + handover window rxlev averaging 10 + handover window rxqual averaging 1 + handover window rxlev neighbor averaging 10 + handover power budget interval 6 + handover power budget hysteresis 3 + handover maximum distance 9999 + timer t3101 10 + timer t3105 40 + timer t3109 4 + timer t3113 60 + pcu-socket /tmp/pcu_bts + bts 0 + type rbs2000 + band GSM900 + om2000 version-limit oml gen 12 rev 10 + cell_identity 0 + location_area_code 0x0001 + training_sequence_code 7 + base_station_id_code 63 + ms max power 15 + cell reselection hysteresis 4 + rxlev access min 0 + channel allocator mode set-all descending + rach tx integer 9 + rach max transmission 7 + oml e1 line 0 timeslot 1 sub-slot full + oml e1 tei 62 + neighbor-list mode automatic + gprs mode egprs + is-connection-list add 4 712 36 + trx 0 + rf_locked 0 + arfcn 123 + nominal power 44 + max_power_red 0 + rsl e1 line 0 timeslot 1 sub-slot full + rsl e1 tei 0 + timeslot 0 + phys_chan_config CCCH+SDCCH4 + hopping enabled 0 + e1 line 0 timeslot 1 sub-slot full + timeslot 1 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 3 sub-slot full + timeslot 2 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 4 sub-slot full + timeslot 3 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 5 sub-slot full + timeslot 4 + phys_chan_config TCH/F_TCH/H_SDCCH8_PDCH + hopping enabled 0 + e1 line 0 timeslot 6 sub-slot full + timeslot 5 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 7 sub-slot full + timeslot 6 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 8 sub-slot full + timeslot 7 + phys_chan_config TCH/F + hopping enabled 0 + e1 line 0 timeslot 9 sub-slot full +e1_input + e1_line 0 driver dahdi + e1_line 0 port 2
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/include/osmocom/bsc/bts.h -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/include/osmocom/bsc/bts.h
Changed
@@ -600,10 +600,6 @@ /* osmux config: */ enum osmux_usage use_osmux; - /* PCU socket state */ - char *pcu_sock_path; - struct pcu_sock_state *pcu_state; - struct rate_ctr_group *bts_ctrs; struct osmo_stat_item_group *bts_statg; @@ -678,77 +674,89 @@ #define GSM_BTS_SI(bts, i) (void *)((bts)->si_bufi0) /* this actually refers to the IPA transport, not the BTS model */ -static inline int is_ipaccess_bts(const struct gsm_bts *bts) +static inline bool is_ipaccess_bts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_NANOBTS: case GSM_BTS_TYPE_OSMOBTS: - return 1; + return true; default: break; } - return 0; + return false; } -static inline int is_osmobts(const struct gsm_bts *bts) +static inline bool is_osmobts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_OSMOBTS: - return 1; + return true; default: break; } - return 0; + return false; } -static inline int is_siemens_bts(const struct gsm_bts *bts) +static inline bool is_siemens_bts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_BS11: - return 1; + return true; default: break; } - return 0; + return false; } -static inline int is_nokia_bts(const struct gsm_bts *bts) +static inline bool is_nokia_bts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_NOKIA_SITE: - return 1; + return true; default: break; } - return 0; + return false; } -static inline int is_ericsson_bts(const struct gsm_bts *bts) +static inline bool is_ericsson_bts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_RBS2000: - return 1; + return true; default: break; } - return 0; + return false; } -static inline int is_e1_bts(const struct gsm_bts *bts) +static inline bool is_e1_bts(const struct gsm_bts *bts) { switch (bts->type) { case GSM_BTS_TYPE_BS11: case GSM_BTS_TYPE_RBS2000: case GSM_BTS_TYPE_NOKIA_SITE: - return 1; + return true; + default: + break; + } + + return false; +} + +static inline bool bsc_co_located_pcu(const struct gsm_bts *bts) +{ + switch (bts->type) { + case GSM_BTS_TYPE_RBS2000: + return true; default: break; } - return 0; + return false; } static inline const struct osmo_location_area_id *bts_lai(struct gsm_bts *bts)
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/include/osmocom/bsc/gsm_data.h -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/include/osmocom/bsc/gsm_data.h
Changed
@@ -1003,6 +1003,10 @@ struct chan_counts chan_counts; struct all_allocated all_allocated; + + /* PCU socket state */ + char *pcu_sock_path; + struct pcu_sock_state *pcu_state; }; struct gsm_audio_support {
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/include/osmocom/bsc/pcu_if.h -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/include/osmocom/bsc/pcu_if.h
Changed
@@ -8,14 +8,14 @@ #define PCUIF_HDR_SIZE (sizeof(struct gsm_pcu_if) - sizeof(((struct gsm_pcu_if *)0)->u)) struct pcu_sock_state { - struct gsm_network *net; + struct gsm_network *net; /* backpointer to GSM network */ struct osmo_fd listen_bfd; /* fd for listen socket */ struct osmo_fd conn_bfd; /* fd for connection to lcr */ struct llist_head upqueue; /* queue for sending messages */ }; /* Check if BTS has a PCU connection */ -bool pcu_connected(struct gsm_bts *bts); +bool pcu_connected(struct gsm_network *net); /* PCU relevant information has changed; Inform PCU (if connected) */ void pcu_info_update(struct gsm_bts *bts); @@ -32,9 +32,9 @@ int pcu_tx_imm_ass_sent(struct gsm_bts *bts, uint32_t tlli); /* Open connection to PCU */ -int pcu_sock_init(const char *path, struct gsm_bts *bts); +int pcu_sock_init(struct gsm_network *net); /* Close connection to PCU */ -void pcu_sock_exit(struct gsm_bts *bts); +void pcu_sock_exit(struct gsm_network *net); #endif /* _PCU_IF_H */
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/include/osmocom/bsc/pcuif_proto.h -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/include/osmocom/bsc/pcuif_proto.h
Changed
@@ -8,7 +8,7 @@ #define PCU_SOCK_DEFAULT "/tmp/pcu_bts" -#define PCU_IF_VERSION 0x0a +#define PCU_IF_VERSION 0x0b #define TXT_MAX_LEN 128 /* msg_type */ @@ -46,7 +46,6 @@ /* flags */ #define PCU_IF_FLAG_ACTIVE (1 << 0)/* BTS is active */ #define PCU_IF_FLAG_SYSMO (1 << 1)/* access PDCH of sysmoBTS directly */ -#define PCU_IF_FLAG_DT (1 << 2)/* use TLLI for confirmation directly */ #define PCU_IF_FLAG_CS1 (1 << 16) #define PCU_IF_FLAG_CS2 (1 << 17) #define PCU_IF_FLAG_CS3 (1 << 18)
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/src/osmo-bsc/bsc_vty.c -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/src/osmo-bsc/bsc_vty.c
Changed
@@ -67,6 +67,7 @@ #include <osmocom/bsc/bssmap_reset.h> #include <osmocom/bsc/bsc_msc_data.h> #include <osmocom/bsc/lchan.h> +#include <osmocom/bsc/pcu_if.h> #include <inttypes.h> @@ -218,6 +219,9 @@ vty_out(vty, " Last RF Lock Command: %s%s", net->rf_ctrl->last_rf_lock_ctrl_command, VTY_NEWLINE); + + if (net->pcu_sock_path) + vty_out(vty, " PCU Socket Path: %s%s", net->pcu_sock_path, VTY_NEWLINE); } DEFUN(bsc_show_net, bsc_show_net_cmd, "show network", @@ -406,6 +410,9 @@ vty_out(vty, "%s", VTY_NEWLINE); } + if (gsmnet->pcu_sock_path) + vty_out(vty, " pcu-socket %s%s", gsmnet->pcu_sock_path, VTY_NEWLINE); + neighbor_ident_vty_write_network(vty, " "); mgcp_client_pool_config_write(vty, " "); @@ -2460,6 +2467,42 @@ return CMD_SUCCESS; } +DEFUN_ATTR(cfg_net_pcu_sock, + cfg_net_pcu_sock_cmd, + "pcu-socket PATH", + "PCU Socket Path for using OsmoPCU co-located with BSC\n" + "Path in the file system for the unix-domain PCU socket\n", + CMD_ATTR_IMMEDIATE) +{ + struct gsm_network *net = gsmnet_from_vty(vty); + int rc; + + osmo_talloc_replace_string(net, &net->pcu_sock_path, argv0); + pcu_sock_exit(net); + rc = pcu_sock_init(net); + if (rc < 0) { + vty_out(vty, "%% Error creating PCU socket `%s'%s", + net->pcu_sock_path, VTY_NEWLINE); + return CMD_WARNING; + } + + return CMD_SUCCESS; +} + +DEFUN_ATTR(cfg_net_no_pcu_sock, + cfg_net_no_pcu_sock_cmd, + "no pcu-socket", + NO_STR "Disable BSC co-located PCU\n", + CMD_ATTR_IMMEDIATE) +{ + struct gsm_network *net = gsmnet_from_vty(vty); + + pcu_sock_exit(net); + talloc_free(net->pcu_sock_path); + net->pcu_sock_path = NULL; + return CMD_SUCCESS; +} + static struct bsc_msc_data *bsc_msc_data(struct vty *vty) { return vty->index; @@ -3534,6 +3577,8 @@ install_element(GSMNET_NODE, &cfg_net_meas_feed_scenario_cmd); install_element(GSMNET_NODE, &cfg_net_timer_cmd); install_element(GSMNET_NODE, &cfg_net_allow_unusable_timeslots_cmd); + install_element(GSMNET_NODE, &cfg_net_pcu_sock_cmd); + install_element(GSMNET_NODE, &cfg_net_no_pcu_sock_cmd); /* Timer configuration commands (generic osmo_tdef API) */ osmo_tdef_vty_groups_init(GSMNET_NODE, bsc_tdef_group);
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/src/osmo-bsc/bts_vty.c -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/src/osmo-bsc/bts_vty.c
Changed
@@ -2191,28 +2191,6 @@ return CMD_SUCCESS; } -DEFUN_ATTR(cfg_bts_pcu_sock, - cfg_bts_pcu_sock_cmd, - "pcu-socket PATH", - "PCU Socket Path for using OsmoPCU co-located with BSC (legacy BTS)\n" - "Path in the file system for the unix-domain PCU socket\n", - CMD_ATTR_IMMEDIATE) -{ - struct gsm_bts *bts = vty->index; - int rc; - - osmo_talloc_replace_string(bts, &bts->pcu_sock_path, argv0); - pcu_sock_exit(bts); - rc = pcu_sock_init(bts->pcu_sock_path, bts); - if (rc < 0) { - vty_out(vty, "%% Error creating PCU socket `%s' for BTS %u%s", - bts->pcu_sock_path, bts->nr, VTY_NEWLINE); - return CMD_WARNING; - } - - return CMD_SUCCESS; -} - DEFUN_ATTR(cfg_bts_acc_rotate, cfg_bts_acc_rotate_cmd, "access-control-class-rotate <0-10>", @@ -3979,8 +3957,6 @@ bts->early_classmark_allowed_3g && !bts->early_classmark_allowed ? " (forbidden by 2G bit)" : "", VTY_NEWLINE); - if (bts->pcu_sock_path) - vty_out(vty, " PCU Socket Path: %s%s", bts->pcu_sock_path, VTY_NEWLINE); if (is_ipaccess_bts(bts)) vty_out(vty, " Unit ID: %u/%u/0, OML Stream ID 0x%02x%s", bts->ip_access.site_id, bts->ip_access.bts_id, @@ -4618,8 +4594,6 @@ vty_out(vty, " depends-on-bts %d%s", bts_nr, VTY_NEWLINE); } } - if (bts->pcu_sock_path) - vty_out(vty, " pcu-socket %s%s", bts->pcu_sock_path, VTY_NEWLINE); ho_vty_write_bts(vty, bts); @@ -4857,7 +4831,6 @@ install_element(BTS_NODE, &cfg_bts_osmux_cmd); install_element(BTS_NODE, &cfg_bts_mgw_pool_target_cmd); install_element(BTS_NODE, &cfg_bts_no_mgw_pool_target_cmd); - install_element(BTS_NODE, &cfg_bts_pcu_sock_cmd); install_element(BTS_NODE, &cfg_bts_acc_rotate_cmd); install_element(BTS_NODE, &cfg_bts_acc_rotate_quantum_cmd); install_element(BTS_NODE, &cfg_bts_acc_ramping_cmd);
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/src/osmo-bsc/pcu_sock.c -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/src/osmo-bsc/pcu_sock.c
Changed
@@ -46,7 +46,7 @@ #include <osmocom/bsc/bts_sm.h> #include <osmocom/bsc/timeslot_fsm.h> -static int pcu_sock_send(struct gsm_bts *bts, struct msgb *msg); +static int pcu_sock_send(struct gsm_network *net, struct msgb *msg); static const char *sapi_string = { PCU_IF_SAPI_RACH = "RACH", @@ -59,13 +59,9 @@ PCU_IF_SAPI_PCH_DT = "PCH_DT", }; -bool pcu_connected(struct gsm_bts *bts) +bool pcu_connected(struct gsm_network *net) { - struct pcu_sock_state *state = bts->pcu_state; - - /* BSC co-located PCU is only supported for Ericsson RBS */ - if (!is_ericsson_bts(bts)) - return false; + struct pcu_sock_state *state = net->pcu_state; if (!state) return false; @@ -204,7 +200,6 @@ info_ind->version = PCU_IF_VERSION; info_ind->flags |= PCU_IF_FLAG_ACTIVE; info_ind->flags |= PCU_IF_FLAG_SYSMO; - info_ind->flags |= PCU_IF_FLAG_DT; /* RAI */ info_ind->mcc = bts->network->plmn.mcc; @@ -306,7 +301,7 @@ info_ind_fill_trx(&info_ind->trxtrx->nr, trx); } - return pcu_sock_send(bts, msg); + return pcu_sock_send(bts->network, msg); } static int pcu_tx_e1_ccu_ind(struct gsm_bts *bts) @@ -349,7 +344,7 @@ e1_ccu_ind->e1_ts_ss = ts->e1_link.e1_ts_ss; LOG_TRX(trx, DPCU, LOGL_INFO, "Sending E1 CCU info for TS %d\n", e1_ccu_ind->ts_nr); - rc = pcu_sock_send(bts, msg); + rc = pcu_sock_send(bts->network, msg); if (rc < 0) return -EINVAL; } @@ -361,14 +356,14 @@ /* Allow test to overwrite it */ __attribute__((weak)) void pcu_info_update(struct gsm_bts *bts) { - if (pcu_connected(bts)) { - /* In cases where the CCU is connected via an E1 line, we transmit the connection parameters for the - * PDCH before we announce the other BTS related parameters. At the moment Ericsson RBS is the only - * E1 BTS we support. */ - if (is_ericsson_bts(bts)) - pcu_tx_e1_ccu_ind(bts); - - pcu_tx_info_ind(bts); + if (pcu_connected(bts->network)) { + if (bsc_co_located_pcu(bts)) { + /* In cases where the CCU is connected via an E1 line, we transmit the connection parameters for the + * PDCH before we announce the other BTS related parameters. */ + if (is_e1_bts(bts)) + pcu_tx_e1_ccu_ind(bts); + pcu_tx_info_ind(bts); + } } } @@ -404,7 +399,7 @@ memcpy(data_ind->data, data, len); data_ind->len = len; - return pcu_sock_send(bts, msg); + return pcu_sock_send(bts->network, msg); } /* Forward rach indication to PCU */ @@ -416,7 +411,7 @@ struct gsm_pcu_if_rach_ind *rach_ind; /* Bail if no PCU is connected */ - if (!pcu_connected(bts)) { + if (!pcu_connected(bts->network)) { LOG_BTS(bts, DRSL, LOGL_ERROR, "CHAN RQD(GPRS) but PCU not connected!\n"); return -ENODEV; } @@ -437,7 +432,7 @@ rach_ind->is_11bit = is_11bit; rach_ind->burst_type = burst_type; - return pcu_sock_send(bts, msg); + return pcu_sock_send(bts->network, msg); } /* Confirm the sending of an immediate assignment to the pcu */ @@ -458,7 +453,7 @@ data_cnf_dt->sapi = PCU_IF_SAPI_PCH; data_cnf_dt->tlli = tlli; - return pcu_sock_send(bts, msg); + return pcu_sock_send(bts->network, msg); } /* we need to decode the raw RR paging message (see PCU code @@ -573,7 +568,7 @@ * assign downlink TBFs directly through the paging channel. However, this method never became part * of the RSL specs. This means that each BTS vendor has to come up with a proprietary method. At * the moment we only support Ericsson RBS here. */ - if (bts->type == GSM_BTS_TYPE_RBS2000) { + if (is_ericsson_bts(bts)) { rc = rsl_ericsson_imm_assign_cmd(bts, pch_dt->tlli, sizeof(pch_dt->data), pch_dt->data, pag_grp); } else { @@ -694,8 +689,9 @@ int rc = 0; struct gsm_bts *bts; - /* FIXME: allow multiple BTS */ - bts = llist_entry(net->bts_list.next, struct gsm_bts, list); + bts = gsm_bts_num(net, pcu_prim->bts_nr); + if (!bts) + return -EINVAL; switch (msg_type) { case PCU_IF_MSG_DATA_REQ: @@ -720,9 +716,9 @@ * PCU socket interface */ -static int pcu_sock_send(struct gsm_bts *bts, struct msgb *msg) +static int pcu_sock_send(struct gsm_network *net, struct msgb *msg) { - struct pcu_sock_state *state = bts->pcu_state; + struct pcu_sock_state *state = net->pcu_state; struct osmo_fd *conn_bfd; struct gsm_pcu_if *pcu_prim = (struct gsm_pcu_if *) msg->data; @@ -747,25 +743,11 @@ return 0; } -static void pcu_sock_close(struct pcu_sock_state *state) +static void pdch_deact_bts(struct gsm_bts *bts) { - struct osmo_fd *bfd = &state->conn_bfd; - struct gsm_bts *bts; struct gsm_bts_trx *trx; int j; - /* FIXME: allow multiple BTS */ - bts = llist_entry(state->net->bts_list.next, struct gsm_bts, list); - - LOGP(DPCU, LOGL_NOTICE, "PCU socket has LOST connection\n"); - - osmo_fd_unregister(bfd); - close(bfd->fd); - bfd->fd = -1; - - /* re-enable the generation of ACCEPT for new connections */ - osmo_fd_read_enable(&state->listen_bfd); - #if 0 /* remove si13, ... */ bts->si_valid &= ~(1 << SYSINFO_TYPE_13); @@ -784,6 +766,27 @@ } } } +} + +static void pcu_sock_close(struct pcu_sock_state *state) +{ + struct osmo_fd *bfd = &state->conn_bfd; + struct gsm_bts *bts; + + LOGP(DPCU, LOGL_NOTICE, "PCU socket has LOST connection\n"); + + osmo_fd_unregister(bfd); + close(bfd->fd); + bfd->fd = -1; + + /* re-enable the generation of ACCEPT for new connections */ + osmo_fd_read_enable(&state->listen_bfd); + + /* Disable all PDCHs on all BTSs that are served by the PCU */ + llist_for_each_entry(bts, &state->net->bts_list, list) { + if (bsc_co_located_pcu(bts)) + pdch_deact_bts(bts); + } /* flush the queue */ while (!llist_empty(&state->upqueue)) { @@ -901,6 +904,24 @@ return rc;
View file
osmo-bsc_1.10.0.98.f276.202303200005.tar.xz/src/osmo-bsc/timeslot_fsm.c -> osmo-bsc_1.10.0.107.56365.202303210007.tar.xz/src/osmo-bsc/timeslot_fsm.c
Changed
@@ -341,7 +341,7 @@ return; } - if (is_ericsson_bts(bts) && !pcu_connected(bts)) { + if (bsc_co_located_pcu(bts) && !pcu_connected(bts->network)) { LOG_TS(ts, LOGL_DEBUG, "PCU not connected: not activating PDCH.\n"); return; }
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.