Add some functions to CREATE OBJECTs in the BS-11 internal database
diff --git a/src/abis_nm.c b/src/abis_nm.c
index 7298328..b297a11 100644
--- a/src/abis_nm.c
+++ b/src/abis_nm.c
@@ -424,6 +424,8 @@
return __simple_cmd(bts, NM_MT_REST_EVENT_REP);
}
+/* Siemens (or BS-11) specific commands */
+
int abis_nm_reset_resource(struct gsm_bts *bts)
{
return __simple_cmd(bts, NM_MT_BS11_RESET_RESOURCE);
@@ -436,3 +438,40 @@
else
return __simple_cmd(bts, NM_MT_BS11_END_DB_TX);
}
+
+int abis_nm_create_object(struct gsm_bts *bts, enum abis_bs11_objtype type,
+ u_int8_t idx)
+{
+ struct abis_om_hdr *oh;
+ struct msgb *msg = nm_msgb_alloc();
+
+ oh = (struct abis_om_hdr *) msgb_put(msg, ABIS_OM_FOM_HDR_SIZE);
+ fill_om_fom_hdr(oh, 0, NM_MT_BS11_CREATE_OBJ, NM_OC_BS11,
+ type, idx, 0);
+
+ return abis_nm_sendmsg(bts, msg);
+}
+
+int abis_nm_create_envaBTSE(struct gsm_bts *bts, u_int8_t idx)
+{
+ struct abis_om_hdr *oh;
+ struct msgb *msg = nm_msgb_alloc();
+
+ oh = (struct abis_om_hdr *) msgb_put(msg, ABIS_OM_FOM_HDR_SIZE);
+ fill_om_fom_hdr(oh, 0, NM_MT_BS11_CREATE_OBJ, NM_OC_BS11_ENVABTSE,
+ 0, idx, 0);
+
+ return abis_nm_sendmsg(bts, msg);
+}
+
+int abis_nm_create_bport(struct gsm_bts *bts, u_int8_t idx)
+{
+ struct abis_om_hdr *oh;
+ struct msgb *msg = nm_msgb_alloc();
+
+ oh = (struct abis_om_hdr *) msgb_put(msg, ABIS_OM_FOM_HDR_SIZE);
+ fill_om_fom_hdr(oh, 0, NM_MT_BS11_CREATE_OBJ, NM_OC_BS11_BPORT,
+ idx, 0, 0);
+
+ return abis_nm_sendmsg(bts, msg);
+}