diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2018-06-15 20:39:58 +0200 |
---|---|---|
committer | Neels Hofmeyr <neels@hofmeyr.de> | 2018-06-15 21:00:31 +0200 |
commit | f0ff9a67117dc22d838769fe6eef67778abd43b9 (patch) | |
tree | 6e40d44dbc64f30b078175e48755ae928555d06c /include/osmocom | |
parent | e7d29e34e4f3db0ec1a5f5b9263aec38a689a76d (diff) |
fix dyn TS init: properly identify BTS on OML OPSTART ACK
Commit "dyn ts, bts_ipaccess_nanobts.c: init PDCH on Chan OPSTART ACK"
bf7099262adf0f27e71a08387747c5cb0d459360 Icf6e25ff068e8a2600562d52726ead65e864ec02
introduced signal S_NM_OPSTART_ACK and passed the FOM header to identify the BTS
by. But the FOM header's BTS number is zero on each Abis/IP link, and the BTS
and TRX are actually identified by msgb->dst == e1inp_sign_link, member trx. So
the initial implementation associated *all* Channel OPSTART ACKs with BTS 0.
Pass the entire msgb as S_NM_OPSTART_ACK signal argument, implement a
abis_nm_get_ts() to retrieve the proper timeslot and use that during timeslot
init.
Related: OS#3351 OS#3205
Change-Id: I45ce5c24cb62d00f350df1af1be6c11104d74193
Diffstat (limited to 'include/osmocom')
-rw-r--r-- | include/osmocom/bsc/abis_nm.h | 2 | ||||
-rw-r--r-- | include/osmocom/bsc/signal.h | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/include/osmocom/bsc/abis_nm.h b/include/osmocom/bsc/abis_nm.h index 9586deddd..ef9e4f5fc 100644 --- a/include/osmocom/bsc/abis_nm.h +++ b/include/osmocom/bsc/abis_nm.h @@ -171,4 +171,6 @@ int abis_nm_select_newest_sw(const struct abis_nm_sw_desc *sw, const size_t len) /* Helper functions for updating attributes */ int abis_nm_update_max_power_red(struct gsm_bts_trx *trx); +struct gsm_bts_trx_ts *abis_nm_get_ts(const struct msgb *oml_msg); + #endif /* _NM_H */ diff --git a/include/osmocom/bsc/signal.h b/include/osmocom/bsc/signal.h index 1dde26772..1b351aa4a 100644 --- a/include/osmocom/bsc/signal.h +++ b/include/osmocom/bsc/signal.h @@ -71,7 +71,7 @@ enum signal_nm { S_NM_STATECHG_OPER, /* Operational State changed*/ S_NM_STATECHG_ADM, /* Administrative State changed */ S_NM_OM2K_CONF_RES, /* OM2K Configuration Result */ - S_NM_OPSTART_ACK, /* Received OPSTART ACK, arg is struct abis_om_fom_hdr* */ + S_NM_OPSTART_ACK, /* Received OPSTART ACK, arg is struct msgb *oml_msg */ }; /* SS_LCHAN signals */ |