Change in osmo-bts[master]: l1sap: Store status of SRR in an lchan struct memeber

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.org
Mon Feb 15 21:09:49 UTC 2021


dexter has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bts/+/22928 )


Change subject: l1sap: Store status of SRR in an lchan struct memeber
......................................................................

l1sap: Store status of SRR in an lchan struct memeber

The MS sets the SRR bit in the L1 SACCH header to request DL-SACCH
repetition from the BTS. At the moment we access the l1_info stored in
tle lchan struct each time we want to check the status of the SRR bit.
However, it is more convinient to do this once at reception and store
the status of the status of the flag in a separate struct member.

Change-Id: Ieddd45d7890343d64db14b9c726f6fa2f25714f6
Related: SYS#5114
---
M include/osmo-bts/gsm_data.h
M src/common/l1sap.c
2 files changed, 9 insertions(+), 3 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/28/22928/1

diff --git a/include/osmo-bts/gsm_data.h b/include/osmo-bts/gsm_data.h
index 05b6cf2..305a518 100644
--- a/include/osmo-bts/gsm_data.h
+++ b/include/osmo-bts/gsm_data.h
@@ -406,6 +406,7 @@
 	struct abis_rsl_osmo_rep_acch_cap repeated_acch_capability;
 	bool repeated_dl_facch_active;
 	bool repeated_ul_sacch_active;
+	bool repeated_dl_sacch_active;
 
 	/* Message buffer to store DL-SACCH repeation candidate */
 	struct msgb *rep_sacch;
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index ed7b4e7..c0bed8b 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1028,7 +1028,7 @@
 	 * SACCH repetition. */
 
 	if (lchan->rep_sacch) {
-		if (((lchan->meas.l1_info[0] >> 1) & 1) == 0) {
+		if (lchan->repeated_dl_sacch_active == false) {
 			/* Toss previous repetition candidate */
 			msgb_free(lchan->rep_sacch);
 			lchan->rep_sacch = NULL;
@@ -1137,9 +1137,14 @@
 				p[0] |= 0x40; /* See also: 3GPP TS 44.004, section 7.1 */
 			p[1] = lchan->rqd_ta;
 			le = &lchan->lapdm_ch.lapdm_acch;
-			if (lchan->repeated_acch_capability.dl_sacch)
+			if (lchan->repeated_acch_capability.dl_sacch) {
+				/* Check if MS requests SACCH repetition and update state accordingly */
+				if ((lchan->meas.l1_info[0] >> 1) & 1)
+					lchan->repeated_dl_sacch_active = true;
+				else
+					lchan->repeated_dl_sacch_active = false;
 				pp_msg = lapdm_phsap_dequeue_msg_sacch(lchan, le);
-			else
+			} else
 				pp_msg = lapdm_phsap_dequeue_msg(le);
 		} else {
 			if (lchan->ts->trx->bts->dtxd)

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/22928
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Ieddd45d7890343d64db14b9c726f6fa2f25714f6
Gerrit-Change-Number: 22928
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210215/ac2d3345/attachment.htm>


More information about the gerrit-log mailing list