Change in osmocom-bb[master]: firmware/scheduler: Fix CBCH related RSL channel numbers

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/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Tue May 28 06:32:24 UTC 2019


Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/14216 )

Change subject: firmware/scheduler: Fix CBCH related RSL channel numbers
......................................................................

firmware/scheduler: Fix CBCH related RSL channel numbers

CBCH support in the firmware has been introduced almost at the same
time it was implemented in trxcon, and the same mistake was made
as described in Ia9a415628c659cbc2dd5dc65b875b7f935d6e211.

Despite Calypso based PHY does not support PDCH (GPRS channels),
let's avoid collisions and use the following cbits values:

  0x19 / 0b11001 - MF_TASK_SDCCH4_CBCH on GSM_DCHAN_SDCCH_4_CBCH,
  0x1a / 0b11010 - MF_TASK_SDCCH8_CBCH on GSM_DCHAN_SDCCH_8_CBCH.

Change-Id: Ibb0f90695460e6ede12016c12a0cfdf9c74dfb24
Related: OS#4027
---
M src/target/firmware/layer1/l23_api.c
M src/target/firmware/layer1/mframe_sched.c
2 files changed, 15 insertions(+), 10 deletions(-)

Approvals:
  Jenkins Builder: Verified
  Harald Welte: Looks good to me, approved



diff --git a/src/target/firmware/layer1/l23_api.c b/src/target/firmware/layer1/l23_api.c
index daffaf8..e78020d 100644
--- a/src/target/firmware/layer1/l23_api.c
+++ b/src/target/firmware/layer1/l23_api.c
@@ -97,10 +97,13 @@
 		lch_idx = cbits & 0x7;
 		master_task = MF_TASK_SDCCH8_0 + lch_idx;
 		multiframe = MF51;
-	} else if ((cbits & 0x1e) == 0x18) {
-		/* Osmocom specific extension for CBCH */
-		master_task = (cbits & 0x01) ? /* 0b1100T */
-			MF_TASK_SDCCH4_CBCH : MF_TASK_SDCCH8_CBCH;
+	} else if ((cbits & 0x1f) == 0x19) {
+		/* Osmocom specific extension for CBCH on SDCCH/4 */
+		master_task = MF_TASK_SDCCH4_CBCH;
+		multiframe = MF51;
+	} else if ((cbits & 0x1f) == 0x1a) {
+		/* Osmocom specific extension for CBCH on SDCCH/8 */
+		master_task = MF_TASK_SDCCH8_CBCH;
 		multiframe = MF51;
 #if 0
 	} else if (cbits == 0x10) {
@@ -141,10 +144,12 @@
 		return GSM_DCHAN_SDCCH_4;
 	} else if ((cbits & 0x18) == 0x08) {
 		return GSM_DCHAN_SDCCH_8;
-	} else if ((cbits & 0x1e) == 0x18) {
-		/* Osmocom-specific extension for CBCH */
-		return (cbits & 0x01) ? /* 0b1100T */
-			GSM_DCHAN_SDCCH_8_CBCH : GSM_DCHAN_SDCCH_4_CBCH;
+	} else if ((cbits & 0x1f) == 0x19) {
+		/* Osmocom-specific extension for CBCH on SDCCH/4 */
+		return GSM_DCHAN_SDCCH_4_CBCH;
+	} else if ((cbits & 0x1f) == 0x1a) {
+		/* Osmocom-specific extension for CBCH on SDCCH/8 */
+		return GSM_DCHAN_SDCCH_8_CBCH;
 	}
 
 	return GSM_DCHAN_UNKNOWN;
diff --git a/src/target/firmware/layer1/mframe_sched.c b/src/target/firmware/layer1/mframe_sched.c
index 7fa38c1..9c2954c 100644
--- a/src/target/firmware/layer1/mframe_sched.c
+++ b/src/target/firmware/layer1/mframe_sched.c
@@ -416,10 +416,10 @@
 
 	/* Osmocom specific extensions */
 	case MF_TASK_SDCCH4_CBCH:
-		cbits = 0x18;
+		cbits = 0x19;
 		break;
 	case MF_TASK_SDCCH8_CBCH:
-		cbits = 0x19;
+		cbits = 0x1a;
 		break;
 
 	case MF_TASK_UL_ALL_NB:

-- 
To view, visit https://gerrit.osmocom.org/14216
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ibb0f90695460e6ede12016c12a0cfdf9c74dfb24
Gerrit-Change-Number: 14216
Gerrit-PatchSet: 1
Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder (1000002)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190528/0547a467/attachment.htm>


More information about the gerrit-log mailing list