fixeria has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/38303?usp=email )
Change subject: [WIP] csd_v110: align TCH/F4.8 NT with DL radio blocks
......................................................................
Abandoned
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38303?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: abandon
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Iea4a21ab9d333bbf416a0997971b1ba25784f238
Gerrit-Change-Number: 38303
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
fixeria has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/38301?usp=email )
Change subject: csd_v110: properly set bit E2 for TCH/F4.8 NT
......................................................................
Abandoned
See https://gerrit.osmocom.org/c/osmo-bts/+/38304.
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38301?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: abandon
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: If8307a9ce0fdc6da45157149ccef7b840ff9d9b3
Gerrit-Change-Number: 38301
Gerrit-PatchSet: 3
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: falconia <falcon(a)freecalypso.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Jenkins Builder has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email )
Change subject: l1sap: call csd_v110_rtp_decode() in l1sap_tch_rts_ind()
......................................................................
Patch Set 2:
(2 comments)
File src/common/l1sap.c:
Robot Comment from checkpatch (run ID jenkins-gerrit-lint-18985):
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/c2e2eadc_2c5488c4?usp… :
PS2, Line 469: } else {
else is not generally useful after a break or return
Robot Comment from checkpatch (run ID jenkins-gerrit-lint-18985):
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/f8dc19e3_6f83f41d?usp… :
PS2, Line 483: } else {
else is not generally useful after a break or return
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idca6807b1e49b89072683b9f00ff4e7cee44cf33
Gerrit-Change-Number: 38312
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Mon, 30 Sep 2024 13:10:24 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
......................................................................
gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
Unfortunately this approach cannot work because bit E7 simply does
not exist in NT mode: that bit position gets replaced by one of
D-prime bits belonging to the RLP frame. Let's use TDMA Fn of the
given TCH.ind to distinguish between the 1st and 2nd halves of an
RLP frame, like we do in csd_v110_rtp_encode().
Related: OS#6578
Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
---
M include/osmo-bts/csd_v110.h
M src/common/csd_v110.c
M src/common/l1sap.c
3 files changed, 8 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/14/38314/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
Gerrit-Change-Number: 38314
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bts/+/38313?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified+1 by Jenkins Builder
Change subject: l1sap: prevent buffer overflow in l1sap_rtp_rx_cb()
......................................................................
l1sap: prevent buffer overflow in l1sap_rtp_rx_cb()
Change-Id: I214070ecf7458202922475505a8747950bedf930
Fixes: d1f8f3429 "l1sap: proper rate adaptation for CSD"
---
M src/common/l1sap.c
1 file changed, 9 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/13/38313/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38313?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I214070ecf7458202922475505a8747950bedf930
Gerrit-Change-Number: 38313
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email
to look at the new patch set (#2).
The following approvals got outdated and were removed:
Verified-1 by Jenkins Builder
Change subject: l1sap: call csd_v110_rtp_decode() in l1sap_tch_rts_ind()
......................................................................
l1sap: call csd_v110_rtp_decode() in l1sap_tch_rts_ind()
The problem with calling csd_v110_rtp_decode() from l1sap_rtp_rx_cb()
is that we don't know in advance at which TDMA frame number the
resulting TCH block is going to be scheduled/transmitted. This
knowledge will be required in follow-up patches.
* In l1sap_rtp_rx_cb(): create an L1SAP msgb with the RTP payload
unmodified (160 bytes), like we do for speech frames.
* In l1sap_tch_rts_ind(): copy the RTP payload into a temporary
buffer on stack and call csd_v110_rtp_decode(), re-using the
L1SAP msgb as the output buffer.
This patch brings no functional changes, except that the DL RLP PDUs
now how the correct TDMA frame number in GSMTAP output (was always 0).
Related: OS#6578
Change-Id: Idca6807b1e49b89072683b9f00ff4e7cee44cf33
---
M src/common/l1sap.c
1 file changed, 107 insertions(+), 101 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/12/38312/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idca6807b1e49b89072683b9f00ff4e7cee44cf33
Gerrit-Change-Number: 38312
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
fixeria has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email )
Change subject: l1sap: call csd_v110_rtp_decode() in l1sap_tch_rts_ind()
......................................................................
Patch Set 1:
(2 comments)
File src/common/l1sap.c:
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/af7cc994_976b4b97?usp… :
PS1, Line 470: } else {
> else is not generally useful after a break or return
I am copying the code as-is, so this warning does not apply.
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/92fcee88_ddacdbc4?usp… :
PS1, Line 485: } else {
> else is not generally useful after a break or return
I am copying the code as-is, so this warning does not apply.
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idca6807b1e49b89072683b9f00ff4e7cee44cf33
Gerrit-Change-Number: 38312
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Comment-Date: Mon, 30 Sep 2024 12:45:49 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Jenkins Builder has posted comments on this change by fixeria. ( https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email )
Change subject: l1sap: call csd_v110_rtp_decode() in l1sap_tch_rts_ind()
......................................................................
Patch Set 1:
(2 comments)
File src/common/l1sap.c:
Robot Comment from checkpatch (run ID jenkins-gerrit-lint-18983):
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/611515d5_0db57d80?usp… :
PS1, Line 470: } else {
else is not generally useful after a break or return
Robot Comment from checkpatch (run ID jenkins-gerrit-lint-18983):
https://gerrit.osmocom.org/c/osmo-bts/+/38312/comment/d8fb1260_bb025713?usp… :
PS1, Line 485: } else {
else is not generally useful after a break or return
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38312?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idca6807b1e49b89072683b9f00ff4e7cee44cf33
Gerrit-Change-Number: 38312
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: Jenkins Builder
Gerrit-Comment-Date: Mon, 30 Sep 2024 12:31:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email )
Change subject: gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
......................................................................
gsmtap_csd_rlp_process(): fix frame reassembly for TCH/F4.8
Unfortunately this approach cannot work because bit E7 simply does
not exist in NT mode: that bit position gets replaced by one of
D-prime bits belonging to the RLP frame. Let's use TDMA Fn of the
given TCH.ind to distinguish between the 1st and 2nd halves of an
RLP frame, like we do in csd_v110_rtp_encode().
Related: OS#6578
Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
---
M include/osmo-bts/csd_v110.h
M src/common/csd_v110.c
M src/common/l1sap.c
3 files changed, 6 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/14/38314/1
diff --git a/include/osmo-bts/csd_v110.h b/include/osmo-bts/csd_v110.h
index b461724..f1c1027 100644
--- a/include/osmo-bts/csd_v110.h
+++ b/include/osmo-bts/csd_v110.h
@@ -17,6 +17,8 @@
extern const struct csd_v110_lchan_desc csd_v110_lchan_desc[256];
+extern const uint8_t csd_v110_tchf48_nt_e2_map[26];
+
int csd_v110_rtp_encode(const struct gsm_lchan *lchan, uint8_t *rtp,
const uint8_t *data, size_t data_len, uint32_t fn);
int csd_v110_rtp_decode(const struct gsm_lchan *lchan, uint8_t *data,
diff --git a/src/common/csd_v110.c b/src/common/csd_v110.c
index d8a8596..d25eb7b 100644
--- a/src/common/csd_v110.c
+++ b/src/common/csd_v110.c
@@ -76,7 +76,7 @@
/* In the case of TCH/F4.8 NT, we have to set bit E2 based on the TDMA
* frame number at which we received the block in question. See
* GSM 05.03 section 3.4.1 and the mapping tables of GSM 05.02. */
-static const uint8_t tchf48_nt_e2_map[26] = {
+const uint8_t csd_v110_tchf48_nt_e2_map[26] = {
[4] = 1, /* B1 position */
[13] = 1, /* B3 position */
[21] = 1, /* B5 position */
@@ -124,7 +124,7 @@
if (desc->num_blocks == 4)
df.e_bits[1] = (i >> 1) & 0x01;
else
- df.e_bits[1] = tchf48_nt_e2_map[fn % 26];
+ df.e_bits[1] = csd_v110_tchf48_nt_e2_map[fn % 26];
/* E3: 0 for Q1/Q3, 1 for Q2/Q4 */
df.e_bits[2] = (i >> 0) & 0x01;
} else {
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 83dacbd..381dd2d 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -460,10 +460,9 @@
if (lchan->type == GSM_LCHAN_TCH_F && lchan->tch_mode == GSM48_CMODE_DATA_6k0) {
/* in this mode we have 120bit MAC blocks; two of them need to be concatenated
* to render a 240-bit RLP frame. The fist block is present in B0/B2/B4.
- * The E7 bit is used to indicate the Frame MF0a */
+ * The TDMA Fn is used to distinguish between the 1st and 2nd halves. */
OSMO_ASSERT(data_len == 120);
- ubit_t e7 = data[4*7+3];
- if (e7 == 0) {
+ if (csd_v110_tchf48_nt_e2_map[tch_ind->fn % 26] == 0) {
/* E2=0: this is B0/B2/B4 containing the 1st half */
osmo_ubit2pbit_ext(rlp_buf, 0, data, 0, data_len, 1);
return;
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/38314?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ia6b3b03faa066ca7fd828d24ba2559ac69c0362a
Gerrit-Change-Number: 38314
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>