fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/34593?usp=email )
Change subject: meas: handle VAMOS specific chan modes
......................................................................
meas: handle VAMOS specific chan modes
Treat the VAMOS channel modes same as their non-VAMOS counterparts.
Change-Id: I8ecaf87c7cda4c10dd411e7539382274715bce57
Related: OS#6168
---
M src/common/measurement.c
1 file changed, 21 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/93/34593/1
diff --git a/src/common/measurement.c b/src/common/measurement.c
index fb3c4e9..13dc4f4 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -60,7 +60,9 @@
case GSM_LCHAN_TCH_F:
switch (lchan->tch_mode) {
case GSM48_CMODE_SPEECH_V1:
+ case GSM48_CMODE_SPEECH_V1_VAMOS:
case GSM48_CMODE_SPEECH_EFR:
+ case GSM48_CMODE_SPEECH_V2_VAMOS:
/* Active TDMA frame subset for TCH/F: 52, 53, 54, 55, 56, 57, 58, 59.
* There is only one *complete* block in this subset starting at FN=52.
* Incomplete blocks {... 52, 53, 54, 55} and {56, 57, 58, 59 ...}
@@ -88,6 +90,7 @@
case GSM_LCHAN_TCH_H:
switch (lchan->tch_mode) {
case GSM48_CMODE_SPEECH_V1:
+ case GSM48_CMODE_SPEECH_V1_VAMOS:
if (ts45008_dtx_tchh_fn_map[fn104])
return true;
break;
@@ -430,11 +433,15 @@
switch (lchan->tch_mode) {
case GSM48_CMODE_SIGN: /* TCH/F sign: DTX *is* permitted */
case GSM48_CMODE_SPEECH_V1: /* TCH/FS */
+ case GSM48_CMODE_SPEECH_V1_VAMOS:
case GSM48_CMODE_SPEECH_EFR: /* TCH/EFS */
+ case GSM48_CMODE_SPEECH_V2_VAMOS:
return 1 + 1; /* 1 x SACCH + 1 x TCH */
case GSM48_CMODE_SPEECH_AMR: /* TCH/AFS */
+ case GSM48_CMODE_SPEECH_V3_VAMOS:
case GSM48_CMODE_SPEECH_V4: /* O-TCH/WFS */
case GSM48_CMODE_SPEECH_V5: /* TCH/WFS */
+ case GSM48_CMODE_SPEECH_V5_VAMOS:
default:
return -1; /* at least 1 x SACCH + M x TCH (variable) */
}
@@ -443,8 +450,10 @@
case GSM48_CMODE_SIGN: /* TCH/H sign: DTX *is not* permitted */
return 1 + 12; /* 1 x SACCH + 12 x TCH */
case GSM48_CMODE_SPEECH_V1:
+ case GSM48_CMODE_SPEECH_V1_VAMOS:
return 1 + 2; /* 1 x SACCH + 2 x TCH */
case GSM48_CMODE_SPEECH_AMR: /* TCH/AHS */
+ case GSM48_CMODE_SPEECH_V3_VAMOS:
case GSM48_CMODE_SPEECH_V4: /* O-TCH/WHS */
case GSM48_CMODE_SPEECH_V6: /* O-TCH/AHS */
default:
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34593?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I8ecaf87c7cda4c10dd411e7539382274715bce57
Gerrit-Change-Number: 34593
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/34592?usp=email )
Change subject: meas: lchan_meas_sub_num_expected(): proper cmode enforcement
......................................................................
meas: lchan_meas_sub_num_expected(): proper cmode enforcement
3GPP TS 45.008, section 8.3 defines TDMA Fn subsets, which shall
always be transmitted when DTX is employed, only for:
* TCH/F in signalling mode (but not for TCH/H),
* TCH/H and TCH/F in data mode (CSD) [*],
* TCH/FS, TCH/EFS, and TCH/HS.
For channel modes employing AMR codec, in particular:
* TCH/AFS, TCH/WFS, O-TCH/WFS,
* TCH/AHS, O-TCH/AHS, O-TCH/WHS,
there exist no fixed TDMA Fn subsets, but DTX is still permitted.
For those we expect at least one SACCH frame, plus a variable
number of speech frames (0 or more).
[*] Handling of data modes is fixed in a follow-up patch.
Change-Id: Ied477528d77871dd7e3b5b7b433a4e33bca40011
Related: OS#6168
---
M src/common/measurement.c
1 file changed, 69 insertions(+), 52 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/92/34592/1
diff --git a/src/common/measurement.c b/src/common/measurement.c
index 6ecd797..fb3c4e9 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -417,32 +417,38 @@
}
/* In DTX a subset of blocks must always be transmitted
- * See also: GSM 05.08, chapter 8.3 Aspects of discontinuous transmission (DTX) */
-static unsigned int lchan_meas_sub_num_expected(const struct gsm_lchan *lchan)
+ * See also: GSM 05.08, chapter 8.3 Aspects of discontinuous transmission (DTX)
+ * Return value N: (N < 0) -- at least N SUB frames expected;
+ * (N > 0) -- exactly N SUB frames expected;
+ * (N == 0) - unknown channel type/mode? */
+static int lchan_meas_sub_num_expected(const struct gsm_lchan *lchan)
{
enum gsm_phys_chan_config pchan = ts_pchan(lchan->ts);
- /* AMR is using a more elaborated model with a dymanic amount of
- * DTX blocks so this function is not applicable to determine the
- * amount of expected SUB Measurements when AMR is used */
- OSMO_ASSERT(lchan->tch_mode != GSM48_CMODE_SPEECH_AMR);
-
switch (pchan) {
case GSM_PCHAN_TCH_F:
- if (lchan->tch_mode == GSM48_CMODE_SIGN) {
- /* 1 block SACCH, 24 blocks TCH (see note 1) */
- return 25;
- } else {
- /* 1 block SACCH, 1 block TCH */
- return 2;
+ switch (lchan->tch_mode) {
+ case GSM48_CMODE_SIGN: /* TCH/F sign: DTX *is* permitted */
+ case GSM48_CMODE_SPEECH_V1: /* TCH/FS */
+ case GSM48_CMODE_SPEECH_EFR: /* TCH/EFS */
+ return 1 + 1; /* 1 x SACCH + 1 x TCH */
+ case GSM48_CMODE_SPEECH_AMR: /* TCH/AFS */
+ case GSM48_CMODE_SPEECH_V4: /* O-TCH/WFS */
+ case GSM48_CMODE_SPEECH_V5: /* TCH/WFS */
+ default:
+ return -1; /* at least 1 x SACCH + M x TCH (variable) */
}
case GSM_PCHAN_TCH_H:
- if (lchan->tch_mode == GSM48_CMODE_SIGN) {
- /* 1 block SACCH, 12 blocks TCH (see ynote 1) */
- return 13;
- } else {
- /* 1 block SACCH, 2 blocks TCH */
- return 3;
+ switch (lchan->tch_mode) {
+ case GSM48_CMODE_SIGN: /* TCH/H sign: DTX *is not* permitted */
+ return 1 + 12; /* 1 x SACCH + 12 x TCH */
+ case GSM48_CMODE_SPEECH_V1:
+ return 1 + 2; /* 1 x SACCH + 2 x TCH */
+ case GSM48_CMODE_SPEECH_AMR: /* TCH/AHS */
+ case GSM48_CMODE_SPEECH_V4: /* O-TCH/WHS */
+ case GSM48_CMODE_SPEECH_V6: /* O-TCH/AHS */
+ default:
+ return -1; /* at least 1 x SACCH + M x TCH (variable) */
}
case GSM_PCHAN_SDCCH8_SACCH8C:
case GSM_PCHAN_SDCCH8_SACCH8C_CBCH:
@@ -455,8 +461,6 @@
default:
return 0;
}
-
- /* Note 1: In signalling mode all blocks count as SUB blocks. */
}
/* if we clip the TOA value to 12 bits, i.e. toa256=3200,
@@ -562,7 +566,7 @@
unsigned int num_meas_sub = 0;
unsigned int num_meas_sub_actual = 0;
unsigned int num_meas_sub_subst = 0;
- unsigned int num_meas_sub_expect;
+ int num_meas_sub_expect;
unsigned int num_ul_meas;
unsigned int num_ul_meas_actual = 0;
unsigned int num_ul_meas_subst = 0;
@@ -582,16 +586,7 @@
* intentionally to save energy. It is not necessarly an error
* when we get less measurements as we expect. */
num_ul_meas_expect = lchan_meas_num_expected(lchan);
-
- if (lchan->tch_mode != GSM48_CMODE_SPEECH_AMR)
- num_meas_sub_expect = lchan_meas_sub_num_expected(lchan);
- else {
- /* When AMR is used, we expect at least one SUB frame, since
- * the SACCH will always be SUB frame. There may occur more
- * SUB frames but since DTX periods in AMR are dynamic, we
- * can not know how many exactly. */
- num_meas_sub_expect = 1;
- }
+ num_meas_sub_expect = lchan_meas_sub_num_expected(lchan);
if (lchan->meas.num_ul_meas > num_ul_meas_expect)
num_ul_meas_excess = lchan->meas.num_ul_meas - num_ul_meas_expect;
@@ -637,11 +632,8 @@
} else {
m = &measurement_dummy;
- /* For AMR the amount of SUB frames is defined by the
- * the occurrence of DTX periods, which are dynamically
- * negotiated in AMR, so we can not know if and how many
- * SUB frames are missing. */
- if (lchan->tch_mode != GSM48_CMODE_SPEECH_AMR) {
+ /* only if we know the exact number of SUB measurements */
+ if (num_meas_sub_expect >= 0) {
if (num_meas_sub <= i) {
num_meas_sub_subst++;
is_sub = true;
@@ -658,16 +650,6 @@
}
}
- if (lchan->tch_mode != GSM48_CMODE_SPEECH_AMR) {
- LOGPLCHAN(lchan, DMEAS, LOGL_DEBUG,
- "Received UL measurements contain %u SUB measurements, expected %u\n",
- num_meas_sub_actual, num_meas_sub_expect);
- } else {
- LOGPLCHAN(lchan, DMEAS, LOGL_DEBUG,
- "Received UL measurements contain %u SUB measurements, expected at least %u\n",
- num_meas_sub_actual, num_meas_sub_expect);
- }
-
LOGPLCHAN(lchan, DMEAS, LOGL_DEBUG, "Replaced %u measurements with dummy values, "
"from which %u were SUB measurements\n", num_ul_meas_subst, num_meas_sub_subst);
@@ -678,17 +660,24 @@
* above only adds missing measurements during the calculation
* it can not remove excess SUB measurements or add missing SUB
* measurements when there is no more room in the interval. */
- if (lchan->tch_mode != GSM48_CMODE_SPEECH_AMR) {
- if (num_meas_sub != num_meas_sub_expect) {
+ if (num_meas_sub_expect < 0) {
+ num_meas_sub_expect = -num_meas_sub_expect;
+ LOGPLCHAN(lchan, DMEAS, LOGL_DEBUG,
+ "Received UL measurements contain %u SUB measurements, expected at least %d\n",
+ num_meas_sub_actual, num_meas_sub_expect);
+ if (OSMO_UNLIKELY(num_meas_sub < num_meas_sub_expect)) {
LOGPLCHAN(lchan, DMEAS, LOGL_ERROR,
"Incorrect number of SUB measurements detected! "
- "(%u vs exp %u)\n", num_meas_sub, num_meas_sub_expect);
+ "(%u vs exp >=%d)\n", num_meas_sub, num_meas_sub_expect);
}
} else {
- if (num_meas_sub < num_meas_sub_expect) {
+ LOGPLCHAN(lchan, DMEAS, LOGL_DEBUG,
+ "Received UL measurements contain %u SUB measurements, expected %d\n",
+ num_meas_sub_actual, num_meas_sub_expect);
+ if (OSMO_UNLIKELY(num_meas_sub != num_meas_sub_expect)) {
LOGPLCHAN(lchan, DMEAS, LOGL_ERROR,
"Incorrect number of SUB measurements detected! "
- "(%u vs exp >=%u)\n", num_meas_sub, num_meas_sub_expect);
+ "(%u vs exp %d)\n", num_meas_sub, num_meas_sub_expect);
}
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34592?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ied477528d77871dd7e3b5b7b433a4e33bca40011
Gerrit-Change-Number: 34592
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/34594?usp=email )
Change subject: meas: fix ts45008_83_is_sub(): DTX is permitted on TCH/F sign
......................................................................
meas: fix ts45008_83_is_sub(): DTX is permitted on TCH/F sign
DTX is not allowed for TCH/H in signalling mode, but *is* allowed
for TCH/F in signalling mode.
Change-Id: I91cfd8f561eb47a5fc48c0682d56331a1d69aded
Related: OS#6168
---
M src/common/measurement.c
1 file changed, 14 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/94/34594/1
diff --git a/src/common/measurement.c b/src/common/measurement.c
index 13dc4f4..f4faa2e 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -59,6 +59,7 @@
switch (lchan->type) {
case GSM_LCHAN_TCH_F:
switch (lchan->tch_mode) {
+ case GSM48_CMODE_SIGN: /* TCH/F sign: DTX *is* permitted */
case GSM48_CMODE_SPEECH_V1:
case GSM48_CMODE_SPEECH_V1_VAMOS:
case GSM48_CMODE_SPEECH_EFR:
@@ -70,10 +71,6 @@
if (fn104 == 52)
return true;
break;
- case GSM48_CMODE_SIGN:
- /* No DTX allowed; SUB=FULL, therefore measurements at all frame numbers are
- * SUB */
- return true;
case GSM48_CMODE_DATA_12k0: /* TCH/F9.6 */
case GSM48_CMODE_DATA_6k0: /* TCH/F4.8 */
/* FIXME: In case of data traffic channels TCH/F9.6 and TCH/F4.8 the
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34594?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I91cfd8f561eb47a5fc48c0682d56331a1d69aded
Gerrit-Change-Number: 34594
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/34595?usp=email )
Change subject: meas: ts45008_83_is_sub(): properly handle CSD modes
......................................................................
meas: ts45008_83_is_sub(): properly handle CSD modes
Change-Id: Ic3b1e27be2dece3605657fd91d7addebb1e554e8
Related: OS#6168
---
M src/common/measurement.c
1 file changed, 30 insertions(+), 13 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/95/34595/1
diff --git a/src/common/measurement.c b/src/common/measurement.c
index f4faa2e..57b3148 100644
--- a/src/common/measurement.c
+++ b/src/common/measurement.c
@@ -19,7 +19,7 @@
/* Active TDMA frame subset for TCH/H in DTX mode (see 3GPP TS 45.008 Section 8.3).
* This mapping is used to determine if a L2 block starting at the given TDMA FN
* belongs to the SUB set and thus shall always be transmitted in DTX mode. */
-static const uint8_t ts45008_dtx_tchh_fn_map[104] = {
+static const uint8_t ts45008_dtx_tchh_speech_fn_map[104] = {
/* TCH/H(0): 0, 2, 4, 6, 52, 54, 56, 58 */
[0] = 1, /* block { 0, 2, 4, 6} */
[52] = 1, /* block {52, 54, 56, 58} */
@@ -28,6 +28,15 @@
[66] = 1, /* block {66, 68, 70, 72} */
};
+static const uint8_t ts45008_dtx_tchh_data_fn_map[104] = {
+ /* UL TCH/H(0): 52, 54, 56, 58, 60, 62, 65, 67, 69, 71 */
+ [52] = 1, /* block {52, 54, 56, 58, 60, 62} */
+ [60] = 1, /* block {60, 62, 65, 67, 69, 71} */
+ /* UL TCH/H(1): 70, 72, 74, 76, 79, 81, 83, 85, 87, 89 */
+ [70] = 1, /* block {70, 72, 74, 76, 79, 81} */
+ [79] = 1, /* block {79, 81, 83, 85, 87, 89} */
+};
+
/* In cases where we less measurements than we expect we must assume that we
* just did not receive the block because it was lost due to bad channel
* conditions. We set up a dummy measurement result here that reflects the
@@ -50,7 +59,7 @@
uint32_t fn104 = fn % 104;
/* See TS 45.008 Sections 8.3 and 8.4 for a detailed descriptions of the rules
- * implemented here. We only implement the logic for Voice, not CSD */
+ * implemented here. We implement the logic for both speech and data (CSD). */
/* AMR is special, SID frames may be scheduled dynamically at any time */
if (lchan->tch_mode == GSM48_CMODE_SPEECH_AMR)
@@ -73,13 +82,12 @@
break;
case GSM48_CMODE_DATA_12k0: /* TCH/F9.6 */
case GSM48_CMODE_DATA_6k0: /* TCH/F4.8 */
- /* FIXME: In case of data traffic channels TCH/F9.6 and TCH/F4.8 the
- * RXQUAL_SUB report shall include measurements on the TDMA frames given
- * in the table of subclause 8.3 only if L2 fill frames have been received
- * as FACCH/F frames at the corresponding frame positions. */
+ /* FIXME: The RXQUAL_SUB (not RXLEV!) report shall include measurements on
+ * the TDMA frames given in the table of subclause 8.3 only if L2 fill frames
+ * have been received as FACCH/F frames at the corresponding frame positions. */
default:
if (lchan->rsl_cmode == RSL_CMOD_SPD_DATA)
- return false;
+ return fn104 == 52;
LOGPLCFN(lchan, fn, DMEAS, LOGL_ERROR, "Unsupported lchan->tch_mode %u\n", lchan->tch_mode);
break;
}
@@ -88,7 +96,7 @@
switch (lchan->tch_mode) {
case GSM48_CMODE_SPEECH_V1:
case GSM48_CMODE_SPEECH_V1_VAMOS:
- if (ts45008_dtx_tchh_fn_map[fn104])
+ if (ts45008_dtx_tchh_speech_fn_map[fn104])
return true;
break;
case GSM48_CMODE_SIGN:
@@ -97,13 +105,12 @@
return true;
case GSM48_CMODE_DATA_6k0: /* TCH/H4.8 */
case GSM48_CMODE_DATA_3k6: /* TCH/H2.4 */
- /* FIXME: In case of data traffic channels TCH/H4.8 and TCH/H2.4 the
- * RXQUAL_SUB report shall include measurements on the TDMA frames given
- * in the table of subclause 8.3 only if L2 fill frames have been received
- * as FACCH/H frames at the corresponding frame positions. */
+ /* FIXME: The RXQUAL_SUB (not RXLEV!) report shall include measurements on
+ * the TDMA frames given in the table of subclause 8.3 only if L2 fill frames
+ * have been received as FACCH/H frames at the corresponding frame positions. */
default:
if (lchan->rsl_cmode == RSL_CMOD_SPD_DATA)
- return false;
+ return ts45008_dtx_tchh_data_fn_map[fn104] == 1;
LOGPLCFN(lchan, fn, DMEAS, LOGL_ERROR, "Unsupported lchan->tch_mode %u\n", lchan->tch_mode);
break;
}
--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34595?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ic3b1e27be2dece3605657fd91d7addebb1e554e8
Gerrit-Change-Number: 34595
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newchange
Attention is currently required from: jolly, laforge.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-e1d/+/34554?usp=email )
Change subject: Automatically reset RIFO on underrun/overflow
......................................................................
Patch Set 2:
(1 comment)
Commit Message:
https://gerrit.osmocom.org/c/osmo-e1d/+/34554/comment/11007386_e753693e
PS2, Line 18: twice the value of pefill_frame_count. It specifies when the RIFO will
typo: prefill
--
To view, visit https://gerrit.osmocom.org/c/osmo-e1d/+/34554?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-e1d
Gerrit-Branch: master
Gerrit-Change-Id: Id7ccbfbdb288990c01f185dec79a1022a68b4748
Gerrit-Change-Number: 34554
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Comment-Date: Fri, 29 Sep 2023 20:37:54 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: laforge, pespin.
jolly has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-e1d/+/34554?usp=email )
Change subject: Automatically reset RIFO on underrun/overflow
......................................................................
Patch Set 2:
(3 comments)
Commit Message:
https://gerrit.osmocom.org/c/osmo-e1d/+/34554/comment/78eadb4f_e93c920a
PS1, Line 18: twice the value of max_frame_count. It specifies when the RIFO will
> max_frame_count is set to twice the value of max_frame_count? Sounds wrong.
Done
File src/octoi/e1oip.c:
https://gerrit.osmocom.org/c/osmo-e1d/+/34554/comment/93e3c19b_3430f7dc
PS1, Line 272: if (rc < 0) {
> did you think about returning a specific error code to signal this exact error? like -ERANGE.
Done
File src/octoi/frame_rifo.c:
https://gerrit.osmocom.org/c/osmo-e1d/+/34554/comment/b45b7a14_caac05bc
PS1, Line 106: int frame_rifo_in(struct frame_rifo *rifo, const uint8_t *frame, uint32_t fn, int max_frame_count)
> can max_frame_count be negative? unsigned?
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-e1d/+/34554?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-e1d
Gerrit-Branch: master
Gerrit-Change-Id: Id7ccbfbdb288990c01f185dec79a1022a68b4748
Gerrit-Change-Number: 34554
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 29 Sep 2023 19:30:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
Attention is currently required from: jolly, laforge.
Hello Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-e1d/+/34554?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: Automatically reset RIFO on underrun/overflow
......................................................................
Automatically reset RIFO on underrun/overflow
Whenever the RIFO buffer underruns or overflows, it it reset and is
filled to the initial prefill_frame_count value.
There are two reasons for this to happen: The GPS clock is missing, so
the receiving interface is not in sync with the transmitting interface.
The delay changes significantly, due to congestion on the path between
both peers.
An upper limit is defined by max_frame_count. By default, it is set to
twice the value of pefill_frame_count. It specifies when the RIFO will
overflow. A lower value prevents too much delay, but also causes a RIFO
reset at a lower fill level.
Change-Id: Id7ccbfbdb288990c01f185dec79a1022a68b4748
---
M include/osmocom/octoi/octoi.h
M src/octoi/e1oip.c
M src/octoi/e1oip.h
M src/octoi/frame_rifo.c
M src/octoi/frame_rifo.h
M src/octoi/octoi_clnt_fsm.c
M src/octoi/octoi_clnt_vty.c
M src/octoi/octoi_srv_fsm.c
M src/octoi/octoi_srv_vty.c
M src/octoi/octoi_vty.h
M tests/rifo/rifo_test.c
11 files changed, 95 insertions(+), 29 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-e1d refs/changes/54/34554/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-e1d/+/34554?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-e1d
Gerrit-Branch: master
Gerrit-Change-Id: Id7ccbfbdb288990c01f185dec79a1022a68b4748
Gerrit-Change-Number: 34554
Gerrit-PatchSet: 2
Gerrit-Owner: jolly <andreas(a)eversberg.eu>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: jolly <andreas(a)eversberg.eu>
Gerrit-Attention: laforge <laforge(a)osmocom.org>
Gerrit-MessageType: newpatchset
Attention is currently required from: dexter, fixeria, fixeria, osmith.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/34575?usp=email )
Change subject: gprs_rlcmac_sched: check if we really use direct phy
......................................................................
Patch Set 3:
(1 comment)
File src/gprs_rlcmac_sched.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/34575/comment/e33833f7_89b980b8
PS2, Line 491: if (bts->trx[trx].fl1h) {
> enum value in PCUIF to identify the type of BTS: ACK, agree.
I think actually the first would be to decouple the feature "direct-phy" from "this bts doesn't support generating dummy bursts on its own".
The later feature, can implement by a new "feature flag" in the flags field, or by directly checking by the new enum value containg the bts type in osmo-pcu.
Maybe the second option of having a shared bts_type enum makes more sense, since it can be used for further stuff.
@axilirator@gmail.com feedback here welcome.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/34575?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I0808950b1154bbb9a789c3f706ad9fb6618764ec
Gerrit-Change-Number: 34575
Gerrit-PatchSet: 3
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-CC: fixeria <axilirator(a)gmail.com>
Gerrit-Attention: osmith <osmith(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: fixeria <axilirator(a)gmail.com>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Fri, 29 Sep 2023 15:46:32 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Comment-In-Reply-To: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: comment