Change in osmo-bts[master]: l1sap: be sure that the DL-SACCH l1 header is also repeated

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
Fri Feb 12 20:13:26 UTC 2021


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


Change subject: l1sap: be sure that the DL-SACCH l1 header is also repeated
......................................................................

l1sap: be sure that the DL-SACCH l1 header is also repeated

When the MS requests DL-SACCH repetition, an exact copy of the
previously transmitted SACCH block is expected. At the moment osmo-bts
does only save the payload of the DL-SACCH without the two byte L1
header for repetition.

Change-Id: I6ae601c84dd0df0c9ae142c3295da36f3222b0c9
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/87/22887/1

diff --git a/include/osmo-bts/gsm_data.h b/include/osmo-bts/gsm_data.h
index 05b6cf2..22099a1 100644
--- a/include/osmo-bts/gsm_data.h
+++ b/include/osmo-bts/gsm_data.h
@@ -409,6 +409,7 @@
 
 	/* Message buffer to store DL-SACCH repeation candidate */
 	struct msgb *rep_sacch;
+        uint8_t rep_sacch_l1_hdr[2];
 };
 
 static inline uint8_t lchan_get_ta(const struct gsm_lchan *lchan)
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index be50ed2..025982a 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1037,7 +1037,7 @@
 }
 
 /* Special dequeueing function with SACCH repetition (3GPP TS 44.006, section 11) */
-static inline struct msgb *lapdm_phsap_dequeue_msg_sacch(struct gsm_lchan *lchan, struct lapdm_entity *le)
+static inline struct msgb *lapdm_phsap_dequeue_msg_sacch(struct gsm_lchan *lchan, struct lapdm_entity *le, uint8_t *p)
 {
 	struct osmo_phsap_prim pp;
 	struct msgb *msg;
@@ -1056,6 +1056,8 @@
 			/* Use previous repetition candidate */
 			msg = lchan->rep_sacch;
 			lchan->rep_sacch = NULL;
+			p[0] = lchan->rep_sacch_l1_hdr[0];
+			p[1] = lchan->rep_sacch_l1_hdr[1];
 			return msg;
 		}
 	}
@@ -1068,8 +1070,11 @@
 
 	/* Only LAPDm frames for SAPI 0 may become a repetition
 	 * candidate. */
-	if (sapi == 0)
+	if (sapi == 0) {
 		lchan->rep_sacch = msgb_copy(msg, "rep_sacch");
+		lchan->rep_sacch_l1_hdr[0] = p[0];
+		lchan->rep_sacch_l1_hdr[1] = p[1];
+	}
 
 	return msg;
 }
@@ -1158,7 +1163,7 @@
 			p[1] = lchan->rqd_ta;
 			le = &lchan->lapdm_ch.lapdm_acch;
 			if (lchan->repeated_acch_capability.dl_sacch)
-				pp_msg = lapdm_phsap_dequeue_msg_sacch(lchan, le);
+				pp_msg = lapdm_phsap_dequeue_msg_sacch(lchan, le, p);
 			else
 				pp_msg = lapdm_phsap_dequeue_msg(le);
 		} else {

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

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: I6ae601c84dd0df0c9ae142c3295da36f3222b0c9
Gerrit-Change-Number: 22887
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/20210212/3bf22a5d/attachment.htm>


More information about the gerrit-log mailing list