CBCH: Fix CBCH via L1SAP for osmo-bts-{sysmo,octphy,litecell15}

This fixes a bug introduced in "CBCH: Move processing via L1SAP"

commit 02d99db08b
Author: Harald Welte <laforge@gnumonks.org>
Date:   Fri Aug 24 23:37:45 2018 +0200

where the full channel number 0xc8 was used instead of the
(right-shifted) C-bits only.

Change-Id: I0fd8d7762e9cc3319a534f261e8857a1aa2220e0
This commit is contained in:
Harald Welte 2018-09-17 21:07:35 +02:00
parent 7c82b4a872
commit 3941cf4479
3 changed files with 9 additions and 3 deletions

View File

@ -383,6 +383,8 @@ static int ph_data_req(struct gsm_bts_trx *trx, struct msgb *msg,
sapi = GsmL1_Sapi_Sdcch;
} else if (L1SAP_IS_CHAN_BCCH(chan_nr)) {
sapi = GsmL1_Sapi_Bcch;
} else if (L1SAP_IS_CHAN_CBCH(chan_nr)) {
sapi = GsmL1_Sapi_Cbch;
} else if (L1SAP_IS_CHAN_AGCH_PCH(chan_nr)) {
/* The sapi depends on DSP configuration, not
* on the actual SYSTEM INFORMATION 3. */
@ -700,7 +702,7 @@ static uint8_t chan_nr_by_sapi(struct gsm_bts_trx_ts *ts,
cbits = 0x10;
break;
case GsmL1_Sapi_Cbch:
cbits = 0xc8; /* Osmocom extension for CBCH via L1SAP */
cbits = 0xc8 >> 3; /* Osmocom extension for CBCH via L1SAP */
break;
case GsmL1_Sapi_Sacch:
switch(pchan) {

View File

@ -357,7 +357,7 @@ static uint8_t chan_nr_by_sapi(struct gsm_bts_trx_ts *ts,
cbits = 0x10;
break;
case cOCTVC1_GSM_SAPI_ENUM_CBCH:
cbits = 0xc8; /* Osmocom extension for CBCH via L1SAP */
cbits = 0xc8 >> 3; /* Osmocom extension for CBCH via L1SAP */
break;
case cOCTVC1_GSM_SAPI_ENUM_SACCH:
switch (pchan) {
@ -517,6 +517,8 @@ static int ph_data_req(struct gsm_bts_trx *trx, struct msgb *msg,
sapi = cOCTVC1_GSM_SAPI_ENUM_SDCCH;
} else if (L1SAP_IS_CHAN_BCCH(chan_nr)) {
sapi = cOCTVC1_GSM_SAPI_ENUM_BCCH;
} else if (L1SAP_IS_CHAN_CBCH(chan_nr)) {
sapi = cOCTVC1_GSM_SAPI_ENUM_CBCH;
} else if (L1SAP_IS_CHAN_AGCH_PCH(chan_nr)) {
sapi = cOCTVC1_GSM_SAPI_ENUM_PCH_AGCH;
} else {

View File

@ -380,6 +380,8 @@ static int ph_data_req(struct gsm_bts_trx *trx, struct msgb *msg,
sapi = GsmL1_Sapi_Sdcch;
} else if (L1SAP_IS_CHAN_BCCH(chan_nr)) {
sapi = GsmL1_Sapi_Bcch;
} else if (L1SAP_IS_CHAN_CBCH(chan_nr)) {
sapi = GsmL1_Sapi_Cbch;
} else if (L1SAP_IS_CHAN_AGCH_PCH(chan_nr)) {
/* The sapi depends on DSP configuration, not
* on the actual SYSTEM INFORMATION 3. */
@ -697,7 +699,7 @@ static uint8_t chan_nr_by_sapi(struct gsm_bts_trx_ts *ts,
cbits = 0x10;
break;
case GsmL1_Sapi_Cbch:
cbits = 0xc8; /* Osmocom extension for CBCH via L1SAP */
cbits = 0xc8 >> 3; /* Osmocom extension for CBCH via L1SAP */
break;
case GsmL1_Sapi_Sacch:
switch(pchan) {