diff options
author | Harald Welte <laforge@gnumonks.org> | 2014-12-28 15:18:09 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2014-12-30 00:28:31 +0100 |
commit | b15d2c9d2f8ebe56672ab2191a4dc39d22fa0ab8 (patch) | |
tree | da13c97da8e99f5012c5eb7f4ead00a59398c026 /src/common/oml.c | |
parent | 50dc96507caba9480938eb3d9d0db9236f877b49 (diff) |
Initial CBCH support
This should handle OML channel combinations with CBCH and activate the
CBCH SAPI towards the DSP correspondingly. What is still missing is
sending any actual information over the CBCH in respons to the
PH-RTS.ind coming up from L1.
Diffstat (limited to 'src/common/oml.c')
-rw-r--r-- | src/common/oml.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/common/oml.c b/src/common/oml.c index 65152953..5f9c0a2b 100644 --- a/src/common/oml.c +++ b/src/common/oml.c @@ -601,10 +601,17 @@ static int conf_lchans_for_pchan(struct gsm_bts_trx_ts *ts) unsigned int i; switch (ts->pchan) { + case GSM_PCHAN_CCCH_SDCCH4_CBCH: + /* fallthrough */ case GSM_PCHAN_CCCH_SDCCH4: for (i = 0; i < 4; i++) { lchan = &ts->lchan[i]; - lchan->type = GSM_LCHAN_SDCCH; + if (ts->pchan == GSM_PCHAN_CCCH_SDCCH4_CBCH + && i == 2) { + lchan->type = GSM_LCHAN_CBCH; + } else { + lchan->type = GSM_LCHAN_SDCCH; + } } /* fallthrough */ case GSM_PCHAN_CCCH: @@ -621,10 +628,17 @@ static int conf_lchans_for_pchan(struct gsm_bts_trx_ts *ts) lchan->type = GSM_LCHAN_TCH_H; } break; + case GSM_PCHAN_SDCCH8_SACCH8C_CBCH: + /* fallthrough */ case GSM_PCHAN_SDCCH8_SACCH8C: for (i = 0; i < 8; i++) { lchan = &ts->lchan[i]; - lchan->type = GSM_LCHAN_SDCCH; + if (ts->pchan == GSM_PCHAN_SDCCH8_SACCH8C_CBCH + && i == 2) { + lchan->type = GSM_LCHAN_CBCH; + } else { + lchan->type = GSM_LCHAN_SDCCH; + } } break; case GSM_PCHAN_PDCH: |