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/.
Vadim Yanitskiy gerrit-no-reply at lists.osmocom.orgVadim Yanitskiy has uploaded this change for review. ( https://gerrit.osmocom.org/11179 Change subject: trxcon/l1ctl.c: properly handle indicated CCCH mode ...................................................................... trxcon/l1ctl.c: properly handle indicated CCCH mode The 'ccch_mode' enum from 'l1ctl_proto.h' to be extended in the near future in order to reflect persistence of CBCH. Thus it should be handled in a switch statement. Change-Id: I75e3b8deac1da296efb178e65ff6992b5c407b80 --- M src/host/trxcon/l1ctl.c 1 file changed, 29 insertions(+), 12 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/79/11179/1 diff --git a/src/host/trxcon/l1ctl.c b/src/host/trxcon/l1ctl.c index a8a1289..f7f48af 100644 --- a/src/host/trxcon/l1ctl.c +++ b/src/host/trxcon/l1ctl.c @@ -256,6 +256,25 @@ return l1ctl_link_send(l1l, msg); } +static enum gsm_phys_chan_config l1ctl_ccch_mode2pchan_config(enum ccch_mode mode) +{ + switch (mode) { + /* TODO: distinguish extended BCCH */ + case CCCH_MODE_NON_COMBINED: + case CCCH_MODE_NONE: + return GSM_PCHAN_CCCH; + + /* TODO: distinguish CBCH */ + case CCCH_MODE_COMBINED: + return GSM_PCHAN_CCCH_SDCCH4; + + default: + LOGP(DL1C, LOGL_NOTICE, "Undandled CCCH mode (%u), " + "assuming non-combined configuration\n", mode); + return GSM_PCHAN_CCCH; + } +} + /* FBSB expire timer */ static void fbsb_timer_cb(void *data) { @@ -292,6 +311,7 @@ static int l1ctl_rx_fbsb_req(struct l1ctl_link *l1l, struct msgb *msg) { + enum gsm_phys_chan_config ch_config; struct l1ctl_fbsb_req *fbsb; uint16_t band_arfcn; uint16_t timeout; @@ -305,6 +325,7 @@ goto exit; } + ch_config = l1ctl_ccch_mode2pchan_config(fbsb->ccch_mode); band_arfcn = ntohs(fbsb->band_arfcn); timeout = ntohs(fbsb->timeout); @@ -316,10 +337,7 @@ sched_trx_reset(l1l->trx, 1); /* Configure a single timeslot */ - if (fbsb->ccch_mode == CCCH_MODE_COMBINED) - sched_trx_configure_ts(l1l->trx, 0, GSM_PCHAN_CCCH_SDCCH4); - else - sched_trx_configure_ts(l1l->trx, 0, GSM_PCHAN_CCCH); + sched_trx_configure_ts(l1l->trx, 0, ch_config); /* Ask SCH handler to send L1CTL_FBSB_CONF */ l1l->fbsb_conf_sent = 0; @@ -434,9 +452,10 @@ static int l1ctl_rx_ccch_mode_req(struct l1ctl_link *l1l, struct msgb *msg) { + enum gsm_phys_chan_config ch_config; struct l1ctl_ccch_mode_req *req; struct trx_ts *ts; - int mode, rc = 0; + int rc = 0; req = (struct l1ctl_ccch_mode_req *) msg->l1h; if (msgb_l1len(msg) < sizeof(*req)) { @@ -446,9 +465,8 @@ goto exit; } - LOGP(DL1C, LOGL_NOTICE, "Received CCCH mode request (%s)\n", - req->ccch_mode == CCCH_MODE_COMBINED ? - "combined" : "not combined"); + LOGP(DL1C, LOGL_NOTICE, "Received CCCH mode request (%u)\n", + req->ccch_mode); /* TODO: add value-string for ccch_mode */ /* Make sure that TS0 is allocated and configured */ ts = l1l->trx->ts_list[0]; @@ -459,12 +477,11 @@ } /* Choose corresponding channel combination */ - mode = req->ccch_mode == CCCH_MODE_COMBINED ? - GSM_PCHAN_CCCH_SDCCH4 : GSM_PCHAN_CCCH; + ch_config = l1ctl_ccch_mode2pchan_config(req->ccch_mode); /* Do nothing if the current mode matches required */ - if (ts->mf_layout->chan_config != mode) - rc = sched_trx_configure_ts(l1l->trx, 0, mode); + if (ts->mf_layout->chan_config != ch_config) + rc = sched_trx_configure_ts(l1l->trx, 0, ch_config); /* Confirm reconfiguration */ if (!rc) -- To view, visit https://gerrit.osmocom.org/11179 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I75e3b8deac1da296efb178e65ff6992b5c407b80 Gerrit-Change-Number: 11179 Gerrit-PatchSet: 1 Gerrit-Owner: Vadim Yanitskiy <axilirator at gmail.com> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20181001/dc42bc5d/attachment.htm>