From fad5752ab5b91e615dd82365c0663e38b4540dcd Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 13 Dec 2015 11:56:36 +0100 Subject: RSL: Add enum + TLV definitions for ip.access style embedded IEs --- include/osmocom/gsm/protocol/gsm_08_58.h | 25 +++++++++++++++++++++++++ include/osmocom/gsm/rsl.h | 6 ++++++ 2 files changed, 31 insertions(+) (limited to 'include') diff --git a/include/osmocom/gsm/protocol/gsm_08_58.h b/include/osmocom/gsm/protocol/gsm_08_58.h index 3f01a926..530bbc86 100644 --- a/include/osmocom/gsm/protocol/gsm_08_58.h +++ b/include/osmocom/gsm/protocol/gsm_08_58.h @@ -577,4 +577,29 @@ enum rsl_rel_mode { RSL_REL_LOCAL_END = 1, }; +/*! \brief ip.access specific embedded information elements */ +enum rsl_ipac_embedded_ie { + RSL_IPAC_EIE_RXLEV = 0x00, + RSL_IPAC_EIE_RXQUAL = 0x01, + RSL_IPAC_EIE_FREQ_ERR = 0x02, + RSL_IPAC_EIE_TIMING_ERR = 0x03, + RSL_IPAC_EIE_MEAS_AVG_CFG = 0x04, + RSL_IPAC_EIE_BS_PWR_CTL = 0x05, + RSL_IPAC_EIE_MS_PWR_CTL = 0x06, + RSL_IPAC_EIE_HANDO_THRESH = 0x07, + RSL_IPAC_EIE_NCELL_DEFAULTS = 0x08, + RSL_IPAC_EIE_NCELL_LIST = 0x09, + RSL_IPAC_EIE_PC_THRESH_COMP = 0x0a, + RSL_IPAC_EIE_HO_THRESH_COMP = 0x0b, + RSL_IPAC_EIE_HO_CAUSE = 0x0c, + RSL_IPAC_EIE_HO_CANDIDATES = 0x0d, + RSL_IPAC_EIE_NCELL_BA_CHG_LIST = 0x0e, + RSL_IPAC_EIE_NUM_OF_MS = 0x10, + RSL_IPAC_EIE_HO_CAND_EXT = 0x11, + RSL_IPAC_EIE_NCELL_DEF_EXT = 0x12, + RSL_IPAC_EIE_NCELL_LIST_EXT = 0x13, + RSL_IPAC_EIE_MASTER_KEY = 0x14, + RSL_IPAC_EIE_MASTER_SALT = 0x15, +}; + /*! @} */ diff --git a/include/osmocom/gsm/rsl.h b/include/osmocom/gsm/rsl.h index 753dd191..418e3f03 100644 --- a/include/osmocom/gsm/rsl.h +++ b/include/osmocom/gsm/rsl.h @@ -21,6 +21,12 @@ extern const struct tlv_definition rsl_att_tlvdef; #define rsl_tlv_parse(dec, buf, len) \ tlv_parse(dec, &rsl_att_tlvdef, buf, len, 0, 0) +extern const struct tlv_definition rsl_ipac_eie_tlvdef; + +/*! \brief Parse RSL IPAC EIE TLV structure using \ref tlv_parse */ +#define rsl_ipac_eie_tlv_parse(dec, buf, len) \ + tlv_parse(dec, &rsl_ipac_eie_tlvdef, buf, len, 0, 0) + /* encode channel number as per Section 9.3.1 */ uint8_t rsl_enc_chan_nr(uint8_t type, uint8_t subch, uint8_t timeslot); /* decode channel number as per Section 9.3.1 */ -- cgit v1.2.3