From 8aeac19dbd3a9c84435f739e051eb67595fed9ad Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sat, 5 Mar 2011 20:15:09 +0100 Subject: OM2000: Route TS config requests to the right TRX The TRX number is encoded in mo.assoc_so, whereas the TS number is in mo.inst! --- openbsc/src/libbsc/abis_om2000.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'openbsc/src') diff --git a/openbsc/src/libbsc/abis_om2000.c b/openbsc/src/libbsc/abis_om2000.c index 00bbc4520..9eadff268 100644 --- a/openbsc/src/libbsc/abis_om2000.c +++ b/openbsc/src/libbsc/abis_om2000.c @@ -654,7 +654,6 @@ static int abis_om2k_sendmsg(struct gsm_bts *bts, struct msgb *msg) case OM2K_MO_CLS_TRXC: case OM2K_MO_CLS_TX: case OM2K_MO_CLS_RX: - case OM2K_MO_CLS_TS: /* Route through per-TRX OML Link to the appropriate TRX */ to_trx_oml = 1; msg->trx = gsm_bts_trx_by_nr(bts, o2h->mo.inst); @@ -664,6 +663,16 @@ static int abis_om2k_sendmsg(struct gsm_bts *bts, struct msgb *msg) return -ENODEV; } break; + case OM2K_MO_CLS_TS: + /* Route through per-TRX OML Link to the appropriate TRX */ + to_trx_oml = 1; + msg->trx = gsm_bts_trx_by_nr(bts, o2h->mo.assoc_so); + if (!msg->trx) { + LOGP(DNM, LOGL_ERROR, "MO=%s Tx Dropping msg to " + "non-existing TRX\n", om2k_mo_name(&o2h->mo)); + return -ENODEV; + } + break; default: /* Route through the IXU/DXU OML Link */ msg->trx = bts->c0; -- cgit v1.2.3