Projects
osmocom:master
osmo-pcu
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 136
View file
osmo-pcu.spec
Changed
@@ -14,13 +14,13 @@ Name: osmo-pcu Requires: osmocom-master -Version: 1.3.1.9.26dc +Version: 1.3.1.10.4695 Release: 0 Summary: Osmocom GPRS Packet Control Unit (PCU) License: GPL-2.0-only Group: Productivity/Telephony/Servers URL: https://osmocom.org/projects/osmopcu -Source: osmo-pcu_1.3.1.9.26dc.tar.xz +Source: osmo-pcu_1.3.1.10.4695.tar.xz Source1: rpmlintrc BuildRequires: autoconf BuildRequires: automake
View file
commit_26dca56db7302a31e1710d364abf515a8af250f2.txt
Deleted
View file
commit_469584f136061261bb7b05006d674aca42e3b150.txt
Added
View file
osmo-pcu_1.3.1.9.26dc.dsc -> osmo-pcu_1.3.1.10.4695.dsc
Changed
@@ -2,7 +2,7 @@ Source: osmo-pcu Binary: osmo-pcu, osmo-pcu-dbg, osmo-pcu-doc Architecture: any all -Version: 1.3.1.9.26dc +Version: 1.3.1.10.4695 Maintainer: Osmocom team <openbsc@lists.osmocom.org> Homepage: http://osmocom.org/projects/osmopcu Standards-Version: 3.9.8 @@ -14,8 +14,8 @@ osmo-pcu-dbg deb debug extra arch=any osmo-pcu-doc deb doc optional arch=all Checksums-Sha1: - 5ab2c4497c56fd1926b8d5d844304e760252ff6e 429532 osmo-pcu_1.3.1.9.26dc.tar.xz + 975ba6cac1ed8cf7afc7b61f5fb97f5ff7a8d0cd 428560 osmo-pcu_1.3.1.10.4695.tar.xz Checksums-Sha256: - d8b59a1bcd256b99f3e3943f27a41193c36e78cc887086b2dd042fb030e30558 429532 osmo-pcu_1.3.1.9.26dc.tar.xz + 5dad482502b87936b0a7eea4746b2b35e6909134a6e9b11bcc9a497e487a3c64 428560 osmo-pcu_1.3.1.10.4695.tar.xz Files: - d17b0b9cb62c597d49f0f13ffb76c5ac 429532 osmo-pcu_1.3.1.9.26dc.tar.xz + deb2c0f4e64c69af2b697da895930414 428560 osmo-pcu_1.3.1.10.4695.tar.xz
View file
osmo-pcu_1.3.1.9.26dc.tar.xz/.tarball-version -> osmo-pcu_1.3.1.10.4695.tar.xz/.tarball-version
Changed
@@ -1 +1 @@ -1.3.1.9-26dc +1.3.1.10-4695
View file
osmo-pcu_1.3.1.9.26dc.tar.xz/debian/changelog -> osmo-pcu_1.3.1.10.4695.tar.xz/debian/changelog
Changed
@@ -1,8 +1,8 @@ -osmo-pcu (1.3.1.9.26dc) unstable; urgency=medium +osmo-pcu (1.3.1.10.4695) unstable; urgency=medium * Automatically generated changelog entry for building the Osmocom master feed - -- Osmocom OBS scripts <info@osmocom.org> Tue, 21 Nov 2023 09:21:00 +0000 + -- Osmocom OBS scripts <info@osmocom.org> Sat, 25 Nov 2023 15:35:33 +0000 osmo-pcu (1.3.1) unstable; urgency=medium
View file
osmo-pcu_1.3.1.9.26dc.tar.xz/src/bts.h -> osmo-pcu_1.3.1.10.4695.tar.xz/src/bts.h
Changed
@@ -278,6 +278,11 @@ /* BTS hardware model, see pcuif_proto.h */ uint8_t bts_model; + + /* When the PDCH is idle, the timeslot is expected to transmit dummy blocks. Some BTS models will generate + * those dummy blocks automatically when no data is transmitted. In contrast, other BTS models may require a + * continuous stream of PDCH blocks that already has the gaps filled with dummy blocks. */ + bool gen_idle_blocks; }; struct paging_req_cs {
View file
osmo-pcu_1.3.1.9.26dc.tar.xz/src/gprs_rlcmac_sched.cpp -> osmo-pcu_1.3.1.10.4695.tar.xz/src/gprs_rlcmac_sched.cpp
Changed
@@ -487,11 +487,10 @@ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); -#ifdef ENABLE_DIRECT_PHY - /* In DIRECT_PHY mode we want to always submit something to L1 in - * TRX0, since BTS is not preparing dummy bursts on idle TS for us */ - skip_idle = skip_idle && trx != 0; -#endif + + if (bts->gen_idle_blocks) + skip_idle = skip_idle && trx != 0; + if (!skip_idle && (msg = sched_dummy())) { /* increase counter */ gsmtap_cat = PCU_GSMTAP_C_DL_DUMMY;
View file
osmo-pcu_1.3.1.9.26dc.tar.xz/src/pcu_l1_if.cpp -> osmo-pcu_1.3.1.10.4695.tar.xz/src/pcu_l1_if.cpp
Changed
@@ -551,11 +551,10 @@ const unsigned num_tbfs = pdch->num_tbfs(GPRS_RLCMAC_DL_TBF) + pdch->num_tbfs(GPRS_RLCMAC_UL_TBF); bool skip_idle = (num_tbfs == 0); -#ifdef ENABLE_DIRECT_PHY - /* In DIRECT_PHY mode we want to always submit something to L1 in - * TRX0, since BTS is not preparing dummy bursts on idle TS for us: */ + + if (bts->gen_idle_blocks) skip_idle = skip_idle && trx != 0; -#endif + if (skip_idle) { pcu_l1if_tx_ptcch(bts, trx, ts, bts->trxtrx.arfcn, fn, block_nr, NULL, 0); @@ -735,6 +734,27 @@ { 0, NULL } }; +static bool decide_gen_idle_blocks(struct gprs_rlcmac_bts *bts) +{ + switch (bts->bts_model) { + case PCU_IF_BTS_MODEL_UNSPEC: + case PCU_IF_BTS_MODEL_LC15: + case PCU_IF_BTS_MODEL_OC2G: + case PCU_IF_BTS_MODEL_OCTPHY: + case PCU_IF_BTS_MODEL_SYSMO: + case PCU_IF_BTS_MODEL_RBS: + /* The BTS models above do not generate dummy blocks by themselves, so OsmoPCU must fill the idle gaps in the + * stream of generated PDCH blocks with dummy blocks. */ + return true; + case PCU_IF_BTS_MODEL_TRX: + /* The BTS models above generate dummy blocks by themselves, so OsmoBTS will only generate PDCH bloks that + * actually contain data. On idle, no blocks are generated. */ + return false; + default: + return false; + } +} + static int pcu_rx_info_ind(struct gprs_rlcmac_bts *bts, const struct gsm_pcu_if_info_ind *info_ind) { struct gprs_bssgp_pcu *pcu; @@ -946,6 +966,7 @@ LOGP(DL1IF, LOGL_INFO, "BTS model: %s\n", get_value_string(gsm_pcuif_bts_model_names, info_ind->bts_model)); bts->bts_model = info_ind->bts_model; + bts->gen_idle_blocks = decide_gen_idle_blocks(bts); bts->active = true; return rc;
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
.