Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bsc/+/32201
to look at the new patch set (#2).
Change subject: si2quater: bts_uarfcn_add(): modify existsing UARFCNs
......................................................................
si2quater: bts_uarfcn_add(): modify existsing UARFCNs
Do not print an error, modify the existsing UARFCNs instead.
Change-Id: Iadc884aa8968e2dc01adf26ba68ba9597fa05d94
Related: SYS#6401
---
M src/osmo-bsc/bts_vty.c
M src/osmo-bsc/system_information.c
M tests/si2quater_neighbor_list.vty
3 files changed, 27 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/01/32201/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/32201
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Iadc884aa8968e2dc01adf26ba68ba9597fa05d94
Gerrit-Change-Number: 32201
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-MessageType: newpatchset
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/32200 )
Change subject: si2quater: bts_uarfcn_add(): check if already added first
......................................................................
si2quater: bts_uarfcn_add(): check if already added first
This way we print the proper message if the given UARFCN is already
added, no matter if the UTRAN neighbour list is full or not.
Change-Id: Ife83023f6a9e28d77e44e4757457d4d1c879e78f
Related: SYS#6401
---
M src/osmo-bsc/system_information.c
1 file changed, 16 insertions(+), 3 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/00/32200/1
diff --git a/src/osmo-bsc/system_information.c b/src/osmo-bsc/system_information.c
index 97294f4..c6928d6 100644
--- a/src/osmo-bsc/system_information.c
+++ b/src/osmo-bsc/system_information.c
@@ -302,12 +302,12 @@
*ual = bts->si_common.data.uarfcn_list,
*scl = bts->si_common.data.scramble_list;
- if (len == MAX_EARFCN_LIST)
- return -ENOMEM;
-
if (pos >= 0)
return -EADDRINUSE;
+ if (len == MAX_EARFCN_LIST)
+ return -ENOMEM;
+
/* find the suitable position for arfcn if any */
pos = uarfcn_sc_pos(bts, arfcn, SC_BOUND);
i = (pos < 0) ? len : pos;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/32200
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bsc
Gerrit-Branch: master
Gerrit-Change-Id: Ife83023f6a9e28d77e44e4757457d4d1c879e78f
Gerrit-Change-Number: 32200
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/32184
to look at the new patch set (#2).
Change subject: codec: add SID preening functions for FR & EFR
......................................................................
codec: add SID preening functions for FR & EFR
Those network elements which receive a stream of codec frames that
may come from the uplink of GSM call A and which are responsible
for preparing the frame stream for the downlink of GSM call B
(OsmoMGW feeding TRAU-DL, or OsmoBTS receiving RTP and feeding DL
to its PHY) must be prepared for the possibility that their
incoming frame stream may contain corrupted SID frames, presumably
from bit errors on radio link A. Per the rules of section 6.1.1
of GSM 06.31 for FR and GSM 06.81 for EFR, SID frames with just one
errored bit are still to be accepted as valid, whereas frames with
more corrupted bits which are still recognizable as SID are classified
as invalid SID.
In the case of a TrFO call, the entity switching from leg A UL to
leg B DL is responsible for *not* transmitting invalid SID frames
on the destination leg (they should be treated like BFIs), and any
deemed-valid SID frames that are forwarded should be preened,
correcting that one bit error they may exhibit. The functions
added here provide that functionality.
Change-Id: Iec5c1f2619a82499f61cb3e5a7cd03ff0f020ad8
---
M include/osmocom/codec/codec.h
M src/codec/gsm610.c
M src/codec/gsm660.c
3 files changed, 110 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/84/32184/2
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32184
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Iec5c1f2619a82499f61cb3e5a7cd03ff0f020ad8
Gerrit-Change-Number: 32184
Gerrit-PatchSet: 2
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-MessageType: newpatchset
Attention is currently required from: pespin, fixeria.
Hello Jenkins Builder, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmocore/+/32183
to look at the new patch set (#2).
Change subject: codec: add SID classification functions per GSM 06.31 & 06.81
......................................................................
codec: add SID classification functions per GSM 06.31 & 06.81
The existing osmo_{fr,efr}_check_sid() functions detect whether or not
the frame of bits passed to them constitutes an absolutely perfect
SID frame, with each of 95 SID code word bits set to 0 for FR or
1 for EFR. However, the rules of section 6.1.1 in GSM 06.31 & 06.81
allow up to one bit to be in error for the frame to be accepted as
valid SID, and the same rules also call out a third state (invalid SID)
in between valid SID frames and other frames that are classified as
speech. Support for these rules cannot be patched into those familiar
osmo_{fr,efr}_check_sid() functions because doing so would alter
behavior of existing programs, hence new functions need to be added.
The new functions that implement the exact rules of section 6.1.1 of
GSM 06.31 and 06.81 will need to be used if anyone needs to construct
an outgoing TRAU-UL frame (for example, as part of implementing
TS 28.062 TFO), and they are expected to be useful as part of more
sophisticated ECU implementations.
Change-Id: Ie91a52c6f04689082d8004311517d8ce0c544916
---
M include/osmocom/codec/codec.h
M src/codec/gsm610.c
M src/codec/gsm660.c
3 files changed, 171 insertions(+), 26 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/83/32183/2
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32183
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ie91a52c6f04689082d8004311517d8ce0c544916
Gerrit-Change-Number: 32183
Gerrit-PatchSet: 2
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
falconia has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/32197 )
Change subject: include/osmocom/gsm/protocol: add gsm_06_31.h
......................................................................
include/osmocom/gsm/protocol: add gsm_06_31.h
GSM 06.31 spec section 6.1.1 (also duplicated in GSM 06.81, same
section) defines numeric values 0, 1 and 2 as denoting three
possible outcomes of the SID classification procedure by which
an incoming FR/EFR codec frame is classified as speech or valid
SID or invalid SID. These exact numeric values for SID
classification appear in at least one public external interface
(bits C13 & C14 in TRAU-UL frames, used on T1/E1 Abis and in
TS 28.062 in-band TFO) and at least one reverse-engineered legacy
vendor interface (bits [4:3] of a_dd[0] status word in GSM MS DSPs
from TI), hence it is useful to have them defined in a formal
GSM protocol header file.
Change-Id: If004b668778d3d9cf6cd998b3af2dbfa83691529
---
M include/osmocom/gsm/protocol/Makefile.am
A include/osmocom/gsm/protocol/gsm_06_31.h
2 files changed, 33 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/97/32197/1
diff --git a/include/osmocom/gsm/protocol/Makefile.am b/include/osmocom/gsm/protocol/Makefile.am
index 5c8e2a6..5637047 100644
--- a/include/osmocom/gsm/protocol/Makefile.am
+++ b/include/osmocom/gsm/protocol/Makefile.am
@@ -8,6 +8,7 @@
gsm_04_12.h \
gsm_04_14.h \
gsm_04_80.h \
+ gsm_06_31.h \
gsm_08_08.h \
gsm_08_58.h \
gsm_09_02.h \
diff --git a/include/osmocom/gsm/protocol/gsm_06_31.h b/include/osmocom/gsm/protocol/gsm_06_31.h
new file mode 100644
index 0000000..86e1c21
--- /dev/null
+++ b/include/osmocom/gsm/protocol/gsm_06_31.h
@@ -0,0 +1,11 @@
+/*! \file gsm_06_31.h
+ * GSM TS 06.31 definitions, also duplicated in GSM TS 06.81. */
+
+#pragma once
+
+/* Section 6.1.1 */
+enum gsm631_sid_class {
+ GSM631_SID_CLASS_SPEECH = 0,
+ GSM631_SID_CLASS_INVALID = 1,
+ GSM631_SID_CLASS_VALID = 2,
+};
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32197
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: If004b668778d3d9cf6cd998b3af2dbfa83691529
Gerrit-Change-Number: 32197
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-MessageType: newchange
Attention is currently required from: pespin, fixeria.
falconia has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/32183 )
Change subject: codec: add SID classification functions per GSM 06.31 & 06.81
......................................................................
Patch Set 1:
(1 comment)
File include/osmocom/codec/codec.h:
https://gerrit.osmocom.org/c/libosmocore/+/32183/comment/a209c6ce_3078d1d9
PS1, Line 85: etsi_sid_class
> @falconia that's not really the rationale behind name prefixes. […]
@pespin - then how come none of the protocol constant definitions in <osmocom/gsm/protocol/gsm_XX_XX.h> begin with osmo_ or OSMO_? Take, for example, <osmocom/gsm/protocol/gsm_04_08.h>: there is an enum named gsm48_chan_mode in there, with individual constants named GSM48_CMODE_* - no osmo_ or OSMO_ prefix. It's exactly the same with all other definitions in those protocol headers in that directory: all prefixes begin with gsmXXX_ or GSMXXX_ rather than osmo_ and OSMO_ - or more precisely, they use osmo_ prefixes for internal Osmocom-controlled structures, but use gsmXXX_ for external protocol definitions.
Now I did make the mistake of prefixing with etsi_ and ETSI_ rather than gsm631_ and GSM631_, and I put those definitions into <osmocom/codec/codec.h> instead of creating a new <osmocom/gsm/protocol/gsm_06_31.h> header. I'll make another patch version doing the latter.
--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/32183
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Ie91a52c6f04689082d8004311517d8ce0c544916
Gerrit-Change-Number: 32183
Gerrit-PatchSet: 1
Gerrit-Owner: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 03 Apr 2023 18:01:03 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: falconia <falcon(a)freecalypso.org>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: comment