aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2011-02-13 19:44:47 +0100
committerHarald Welte <laforge@gnumonks.org>2011-02-13 19:44:47 +0100
commit9f0866c2a3072a7fb25f6f517a3056ffe194c47e (patch)
tree1b4df1398951f4d1bc0e52f9865b04080afe2b10 /openbsc/src
parentbd3137c2dd59465f824d1f81abf1aace82f5a9f5 (diff)
RBS2000: Differentiate between BTS OML and TRX OML
We don't want to restart the CF on TRX OML link establishment...
Diffstat (limited to 'openbsc/src')
-rw-r--r--openbsc/src/bts_ericsson_rbs2000.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/openbsc/src/bts_ericsson_rbs2000.c b/openbsc/src/bts_ericsson_rbs2000.c
index 5ad47b292..fa25f3aa1 100644
--- a/openbsc/src/bts_ericsson_rbs2000.c
+++ b/openbsc/src/bts_ericsson_rbs2000.c
@@ -37,13 +37,20 @@ static struct gsm_bts_model model_rbs2k = {
.oml_rcvmsg = &abis_om2k_rcvmsg,
};
-static void bootstrap_om_rbs2k(struct gsm_bts *bts)
+static void bootstrap_om_bts(struct gsm_bts *bts)
{
LOGP(DNM, LOGL_NOTICE, "bootstrapping OML for BTS %u\n", bts->nr);
abis_om2k_tx_start_req(bts, &om2k_mo_cf);
/* FIXME */
}
+static void bootstrap_om_trx(struct gsm_bts_trx *trx)
+{
+ LOGP(DNM, LOGL_NOTICE, "bootstrapping OML for TRX %u/%u\n",
+ trx->bts->nr, trx->nr);
+ /* FIXME */
+}
+
static int shutdown_om(struct gsm_bts *bts)
{
/* FIXME */
@@ -106,9 +113,12 @@ static int inp_sig_cb(unsigned int subsys, unsigned int signal,
case S_INP_TEI_UP:
switch (isd->link_type) {
case E1INP_SIGN_OML:
- if (isd->trx->bts->type == GSM_BTS_TYPE_RBS2000) {
- bootstrap_om_rbs2k(isd->trx->bts);
- }
+ if (isd->trx->bts->type != GSM_BTS_TYPE_RBS2000)
+ break;
+ if (isd->tei == isd->trx->bts->oml_tei)
+ bootstrap_om_bts(isd->trx->bts);
+ else
+ bootstrap_om_trx(isd->trx);
break;
}
break;