Harald Welte has submitted this change and it was merged.

Change subject: octphy: add CBCH support
......................................................................


octphy: add CBCH support

add Support for CBCH channels in osmo-bts-octphy

Change-Id: Ic5c8363b4dd8ba78ab22bd5527c08d1162331540
---
M src/osmo-bts-octphy/l1_if.c
M src/osmo-bts-octphy/l1_oml.c
2 files changed, 19 insertions(+), 1 deletion(-)

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



diff --git a/src/osmo-bts-octphy/l1_if.c b/src/osmo-bts-octphy/l1_if.c
index 0fc51fc..b42fb3a 100644
--- a/src/osmo-bts-octphy/l1_if.c
+++ b/src/osmo-bts-octphy/l1_if.c
@@ -43,6 +43,7 @@
 #include <osmo-bts/logging.h>
 #include <osmo-bts/l1sap.h>
 #include <osmo-bts/handover.h>
+#include <osmo-bts/cbch.h>
 
 #include "l1_if.h"
 #include "l1_oml.h"
@@ -340,9 +341,11 @@
                        cbits = 0x02 + subCh;
                        break;
                case GSM_PCHAN_CCCH_SDCCH4:
+               case GSM_PCHAN_CCCH_SDCCH4_CBCH:
                        cbits = 0x04 + subCh;
                        break;
                case GSM_PCHAN_SDCCH8_SACCH8C:
+               case GSM_PCHAN_SDCCH8_SACCH8C_CBCH:
                        cbits = 0x08 + subCh;
                        break;
                default:
@@ -353,9 +356,11 @@
        case cOCTVC1_GSM_SAPI_ENUM_SDCCH:
                switch (pchan) {
                case GSM_PCHAN_CCCH_SDCCH4:
+               case GSM_PCHAN_CCCH_SDCCH4_CBCH:
                        cbits = 0x04 + subCh;
                        break;
                case GSM_PCHAN_SDCCH8_SACCH8C:
+               case GSM_PCHAN_SDCCH8_SACCH8C_CBCH:
                        cbits = 0x08 + subCh;
                        break;
                default:
@@ -918,6 +923,10 @@
                        (g_time.t1 << 7) | (g_time.t2 << 2) | (t3p >> 1);
                data_req->Data.abyDataContent[3] = (t3p & 1);
                break;
+       case cOCTVC1_GSM_SAPI_ENUM_CBCH:
+               rc = bts_cbch_get(bts, data_req->Data.abyDataContent, &g_time);
+               data_req->Data.ulDataLength = 23;   /* GSM MAX BLK SIZE */
+               break;
        case cOCTVC1_GSM_SAPI_ENUM_PRACH:
 #if 0
                /* in case we decide to send an empty frame... */
@@ -1101,7 +1110,8 @@
        l1sap->u.rach_ind.acc_delay = acc_delay;
        l1sap->u.rach_ind.fn = fn;
        if (!lchan || lchan->ts->pchan == GSM_PCHAN_CCCH ||
-           lchan->ts->pchan == GSM_PCHAN_CCCH_SDCCH4)
+           lchan->ts->pchan == GSM_PCHAN_CCCH_SDCCH4 ||
+           lchan->ts->pchan == GSM_PCHAN_CCCH_SDCCH4_CBCH)
                l1sap->u.rach_ind.chan_nr = 0x88;
        else
                l1sap->u.rach_ind.chan_nr = gsm_lchan2chan_nr(lchan);
diff --git a/src/osmo-bts-octphy/l1_oml.c b/src/osmo-bts-octphy/l1_oml.c
index a68169e..6857a5d 100644
--- a/src/osmo-bts-octphy/l1_oml.c
+++ b/src/osmo-bts-octphy/l1_oml.c
@@ -64,6 +64,12 @@
        // TODO - watch out below two!!!
        [GSM_PCHAN_PDCH]                = 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_PDTCHF_PACCHF_PTCCHF,
        [GSM_PCHAN_TCH_F_PDCH]          = 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_PDTCHF_PACCHF_PTCCHF,
+#ifdef 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_FCCH_SCH_BCCH_CCCH_SDCCH4_CBCH_SACCHC4
+       [GSM_PCHAN_CCCH_SDCCH4_CBCH]    = 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_FCCH_SCH_BCCH_CCCH_SDCCH4_CBCH_SACCHC4,
+#endif
+#ifdef cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_SDCCH8_CBCH_SACCHC8
+       [GSM_PCHAN_SDCCH8_SACCH8C_CBCH] = 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_SDCCH8_CBCH_SACCHC8,
+#endif
        [GSM_PCHAN_UNKNOWN]             = 
cOCTVC1_GSM_LOGICAL_CHANNEL_COMBINATION_ENUM_EMPTY
 };
 
@@ -202,11 +208,13 @@
 {
        switch (lchan->ts->pchan) {
        case GSM_PCHAN_CCCH_SDCCH4:
+       case GSM_PCHAN_CCCH_SDCCH4_CBCH:
                if (lchan->type == GSM_LCHAN_CCCH)
                        return cOCTVC1_GSM_ID_SUB_CHANNEL_NB_ENUM_ALL;
                /* fall-through */
        case GSM_PCHAN_TCH_H:
        case GSM_PCHAN_SDCCH8_SACCH8C:
+       case GSM_PCHAN_SDCCH8_SACCH8C_CBCH:
                return (tOCTVC1_GSM_ID_SUB_CHANNEL_NB_ENUM) lchan->nr;
        case GSM_PCHAN_NONE:
        case GSM_PCHAN_CCCH:

-- 
To view, visit https://gerrit.osmocom.org/1979
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Ic5c8363b4dd8ba78ab22bd5527c08d1162331540
Gerrit-PatchSet: 5
Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Owner: dexter <pma...@sysmocom.de>
Gerrit-Reviewer: Harald Welte <lafo...@gnumonks.org>
Gerrit-Reviewer: Jenkins Builder

Reply via email to