This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
dexter gerrit-no-reply at lists.osmocom.orgdexter has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/20853 ) Change subject: measurement: fix expected number of measurements ...................................................................... measurement: fix expected number of measurements The logic in measurement.c checks the amount of collected measurement values. This is done for the total amount of measurements and the amount of SUB blocks measurements. The functions that return the expected number of measurement values currently do not take into account that the mode of a TCH/F or TCH/H has an effect on the number of expected SUB blocks. (In signalling channels all blocks count as SUB). Also a TCH/H in signalling mode generates only half the amount of measurements because the blocks in signalling mode are sepreded over 6 bursts instead of 4. This also needs to be taken into account. Change-Id: I01c7b6cc908c647263ab88f6b6281c4732f88779 Related: OS#4799 --- M src/common/measurement.c M tests/meas/meas_test.c 2 files changed, 25 insertions(+), 7 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve fixeria: Looks good to me, approved diff --git a/src/common/measurement.c b/src/common/measurement.c index 1805553..d5c3ee0 100644 --- a/src/common/measurement.c +++ b/src/common/measurement.c @@ -397,11 +397,16 @@ switch (pchan) { case GSM_PCHAN_TCH_F: - /* 24 for TCH + 1 for SACCH */ + /* 24 blocks for TCH + 1 for SACCH */ return 25; case GSM_PCHAN_TCH_H: - /* 24 half-blocks for TCH + 1 for SACCH */ - return 25; + if (lchan->tch_mode == GSM48_CMODE_SIGN) { + /* 12 blocks for TCH + 1 for SACCH */ + return 13; + } else { + /* 24 blocks for TCH + 1 for SACCH */ + return 25; + } case GSM_PCHAN_SDCCH8_SACCH8C: case GSM_PCHAN_SDCCH8_SACCH8C_CBCH: /* 2 for SDCCH + 1 for SACCH */ @@ -428,11 +433,21 @@ switch (pchan) { case GSM_PCHAN_TCH_F: - /* 1 block SDCCH, 2 blocks TCH */ - return 3; + if (lchan->tch_mode == GSM48_CMODE_SIGN) { + /* 1 block SACCH, 24 blocks TCH (see note 1) */ + return 25; + } else { + /* 1 block SACCH, 2 blocks TCH */ + return 3; + } case GSM_PCHAN_TCH_H: - /* 1 block SDCCH, 4 half-blocks TCH */ - return 5; + if (lchan->tch_mode == GSM48_CMODE_SIGN) { + /* 1 block SACCH, 12 blocks TCH (see ynote 1) */ + return 13; + } else { + /* 1 block SACCH, 4 blocks TCH */ + return 5; + } case GSM_PCHAN_SDCCH8_SACCH8C: case GSM_PCHAN_SDCCH8_SACCH8C_CBCH: /* no DTX here, all blocks must be present! */ @@ -444,6 +459,8 @@ 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, diff --git a/tests/meas/meas_test.c b/tests/meas/meas_test.c index 309a522..174abbe 100644 --- a/tests/meas/meas_test.c +++ b/tests/meas/meas_test.c @@ -84,6 +84,7 @@ lchan = &trx->ts[mtc->ts].lchan[0]; lchan->ts->pchan = mtc->pchan; + lchan->tch_mode = GSM48_CMODE_SPEECH_V1; reset_lchan_meas(lchan); /* feed uplink measurements into the code */ -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/20853 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I01c7b6cc908c647263ab88f6b6281c4732f88779 Gerrit-Change-Number: 20853 Gerrit-PatchSet: 3 Gerrit-Owner: dexter <pmaier at sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter <pmaier at sysmocom.de> Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de> Gerrit-Reviewer: laforge <laforge at osmocom.org> Gerrit-MessageType: merged -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20201027/18cd38b0/attachment.htm>