diff --git a/openbsc/include/openbsc/abis_nm.h b/openbsc/include/openbsc/abis_nm.h index d5c7a13d4..d6469c466 100644 --- a/openbsc/include/openbsc/abis_nm.h +++ b/openbsc/include/openbsc/abis_nm.h @@ -808,7 +808,7 @@ int abis_nm_ipaccess_msg(struct gsm_bts *bts, u_int8_t msg_type, u_int8_t obj_class, u_int8_t bts_nr, u_int8_t trx_nr, u_int8_t ts_nr, u_int8_t *attr, int attr_len); -int abis_nm_ipaccess_set_nvattr(struct gsm_bts *bts, u_int8_t *attr, +int abis_nm_ipaccess_set_nvattr(struct gsm_bts_trx *trx, u_int8_t *attr, int attr_len); int abis_nm_ipaccess_restart(struct gsm_bts *bts); int abis_nm_ipaccess_set_attr(struct gsm_bts *bts, u_int8_t obj_class, diff --git a/openbsc/src/abis_nm.c b/openbsc/src/abis_nm.c index d679d7851..aaa7dd5fb 100644 --- a/openbsc/src/abis_nm.c +++ b/openbsc/src/abis_nm.c @@ -2899,11 +2899,11 @@ int abis_nm_ipaccess_msg(struct gsm_bts *bts, u_int8_t msg_type, } /* set some attributes in NVRAM */ -int abis_nm_ipaccess_set_nvattr(struct gsm_bts *bts, u_int8_t *attr, +int abis_nm_ipaccess_set_nvattr(struct gsm_bts_trx *trx, u_int8_t *attr, int attr_len) { - return abis_nm_ipaccess_msg(bts, NM_MT_IPACC_SET_NVATTR, - NM_OC_BASEB_TRANSC, 0, 0, 0xff, attr, + return abis_nm_ipaccess_msg(trx->bts, NM_MT_IPACC_SET_NVATTR, + NM_OC_BASEB_TRANSC, 0, trx->nr, 0xff, attr, attr_len); } diff --git a/openbsc/src/ipaccess/ipaccess-config.c b/openbsc/src/ipaccess/ipaccess-config.c index ceac7bdf4..3b2a8bfd0 100644 --- a/openbsc/src/ipaccess/ipaccess-config.c +++ b/openbsc/src/ipaccess/ipaccess-config.c @@ -268,7 +268,7 @@ static int swload_cbfn(unsigned int hook, unsigned int event, struct msgb *_msg, msg->l2h[1] = msgb_l3len(msg) >> 8; msg->l2h[2] = msgb_l3len(msg) & 0xff; printf("Foo l2h: %p l3h: %p... length l2: %u l3: %u\n", msg->l2h, msg->l3h, msgb_l2len(msg), msgb_l3len(msg)); - abis_nm_ipaccess_set_nvattr(bts, msg->l2h, msgb_l2len(msg)); + abis_nm_ipaccess_set_nvattr(bts->c0, msg->l2h, msgb_l2len(msg)); msgb_free(msg); break; case NM_MT_LOAD_END_NACK: @@ -313,7 +313,7 @@ static void bootstrap_om(struct gsm_bts *bts) memcpy(buf+3, unit_id, len); buf[3+len] = 0; printf("setting Unit ID to '%s'\n", unit_id); - abis_nm_ipaccess_set_nvattr(bts, buf, 3+len+1); + abis_nm_ipaccess_set_nvattr(bts->c0, buf, 3+len+1); } if (prim_oml_ip) { struct in_addr ia; @@ -337,7 +337,7 @@ static void bootstrap_om(struct gsm_bts *bts) *cur++ = 0; printf("setting primary OML link IP to '%s'\n", inet_ntoa(ia)); oml_state = 1; - abis_nm_ipaccess_set_nvattr(bts, buf, 3+len); + abis_nm_ipaccess_set_nvattr(bts->c0, buf, 3+len); } if (nv_mask) { len = 4; @@ -351,7 +351,7 @@ static void bootstrap_om(struct gsm_bts *bts) *cur++ = nv_mask >> 8; printf("setting NV Flags/Mask to 0x%04x/0x%04x\n", nv_flags, nv_mask); - abis_nm_ipaccess_set_nvattr(bts, buf, 3+len); + abis_nm_ipaccess_set_nvattr(bts->c0, buf, 3+len); } if (restart && !prim_oml_ip && !software) {