2014-06-16 08:13:40 +00:00
|
|
|
#pragma once
|
2011-05-22 20:45:16 +00:00
|
|
|
|
|
|
|
#include <osmocom/gsm/tlv.h>
|
2011-06-05 09:22:59 +00:00
|
|
|
#include <osmocom/gsm/gsm_utils.h>
|
2011-05-22 20:45:16 +00:00
|
|
|
#include <osmocom/gsm/protocol/gsm_12_21.h>
|
|
|
|
|
2017-06-20 02:35:06 +00:00
|
|
|
/*! \defgroup oml A-bis OML
|
|
|
|
* @{
|
|
|
|
* \file abis_nm.h */
|
2011-08-17 17:15:24 +00:00
|
|
|
|
2014-08-17 16:42:58 +00:00
|
|
|
extern const char abis_nm_ipa_magic[13];
|
|
|
|
extern const char abis_nm_osmo_magic[12];
|
|
|
|
|
2011-05-30 22:42:38 +00:00
|
|
|
enum abis_nm_msgtype;
|
|
|
|
enum gsm_phys_chan_config;
|
|
|
|
|
2012-10-24 15:52:53 +00:00
|
|
|
extern const enum abis_nm_msgtype abis_nm_reports[4];
|
|
|
|
extern const enum abis_nm_msgtype abis_nm_no_ack_nack[3];
|
|
|
|
extern const enum abis_nm_msgtype abis_nm_sw_load_msgs[9];
|
|
|
|
extern const enum abis_nm_msgtype abis_nm_nacks[33];
|
2011-05-22 20:45:16 +00:00
|
|
|
|
2014-08-17 17:36:26 +00:00
|
|
|
extern const struct value_string abis_nm_msg_disc_names[];
|
2011-05-23 19:41:34 +00:00
|
|
|
extern const struct value_string abis_nm_obj_class_names[];
|
|
|
|
extern const struct value_string abis_nm_adm_state_names[];
|
2011-05-23 18:41:31 +00:00
|
|
|
|
2011-05-22 20:45:16 +00:00
|
|
|
const char *abis_nm_nack_cause_name(uint8_t cause);
|
|
|
|
const char *abis_nm_nack_name(uint8_t nack);
|
|
|
|
const char *abis_nm_event_type_name(uint8_t cause);
|
|
|
|
const char *abis_nm_severity_name(uint8_t cause);
|
2012-10-24 15:52:53 +00:00
|
|
|
extern const struct tlv_definition abis_nm_att_tlvdef;
|
2017-10-19 14:49:12 +00:00
|
|
|
|
2011-05-22 20:45:16 +00:00
|
|
|
const char *abis_nm_opstate_name(uint8_t os);
|
|
|
|
const char *abis_nm_avail_name(uint8_t avail);
|
|
|
|
const char *abis_nm_test_name(uint8_t test);
|
2017-10-19 14:49:12 +00:00
|
|
|
/*! Get human-readable string for OML administrative state */
|
|
|
|
static inline const char *abis_nm_admin_name(uint8_t admin)
|
|
|
|
{
|
|
|
|
return get_value_string(abis_nm_adm_state_names, admin);
|
|
|
|
}
|
|
|
|
|
2014-05-19 17:22:55 +00:00
|
|
|
extern const struct tlv_definition abis_nm_osmo_att_tlvdef;
|
2017-01-02 12:42:24 +00:00
|
|
|
extern const struct tlv_definition abis_nm_att_tlvdef_ipa;
|
2013-02-10 08:29:27 +00:00
|
|
|
|
2018-03-17 09:32:07 +00:00
|
|
|
const char *abis_nm_dump_foh(const struct abis_om_fom_hdr *foh);
|
|
|
|
|
2017-06-19 22:17:59 +00:00
|
|
|
/*! write a human-readable OML header to the debug log
|
2013-02-10 08:29:27 +00:00
|
|
|
* \param[in] ss Logging sub-system
|
|
|
|
* \param[in] foh A-bis OML FOM header
|
|
|
|
*/
|
|
|
|
#define abis_nm_debugp_foh(ss, foh) \
|
2018-03-17 09:32:07 +00:00
|
|
|
DEBUGP(ss, "%s ", abis_nm_dump_foh(foh))
|
2011-05-22 20:45:16 +00:00
|
|
|
|
2011-05-24 15:15:12 +00:00
|
|
|
int abis_nm_chcomb4pchan(enum gsm_phys_chan_config pchan);
|
2014-01-02 13:10:25 +00:00
|
|
|
enum gsm_phys_chan_config abis_nm_pchan4chcomb(uint8_t chcomb);
|
2011-08-17 17:15:24 +00:00
|
|
|
|
2012-04-18 19:53:23 +00:00
|
|
|
/*! @} */
|