diff options
author | Harald Welte <laforge@gnumonks.org> | 2011-06-23 20:43:13 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2011-06-23 20:44:03 +0200 |
commit | cf7e5dad45141325b26a8d9de2441ac65466d09d (patch) | |
tree | 04bde716411454bc2b42de2571c0cf145cee7418 | |
parent | 5e924a31a0b6c73f297a61a1e4cb8b40b6f2946c (diff) |
add value_string definitions for RSL message types
-rw-r--r-- | include/osmocom/gsm/rsl.h | 1 | ||||
-rw-r--r-- | src/gsm/rsl.c | 76 |
2 files changed, 77 insertions, 0 deletions
diff --git a/include/osmocom/gsm/rsl.h b/include/osmocom/gsm/rsl.h index 7e46330f..2eb045f2 100644 --- a/include/osmocom/gsm/rsl.h +++ b/include/osmocom/gsm/rsl.h @@ -23,6 +23,7 @@ const char *rsl_chan_nr_str(uint8_t chan_nr); const char *rsl_err_name(uint8_t err); const char *rsl_rlm_cause_name(uint8_t err); +const char *rsl_msg_name(uint8_t err); /* Section 3.3.2.3 TS 05.02. I think this looks like a table */ int rsl_ccch_conf_to_bs_cc_chans(int ccch_conf); diff --git a/src/gsm/rsl.c b/src/gsm/rsl.c index 12ac0cfb..c497ba95 100644 --- a/src/gsm/rsl.c +++ b/src/gsm/rsl.c @@ -250,6 +250,82 @@ const char *rsl_err_name(uint8_t err) return get_value_string(rsl_err_vals, err); } +/* Names for Radio Link Layer Management */ +static const struct value_string rsl_msgt_names[] = { + { RSL_MT_DATA_REQ, "DATA_REQ" }, + { RSL_MT_DATA_IND, "DATA_IND" }, + { RSL_MT_ERROR_IND, "ERROR_IND" }, + { RSL_MT_EST_REQ, "EST_REQ" }, + { RSL_MT_EST_CONF, "EST_CONF" }, + { RSL_MT_EST_IND, "EST_IND" }, + { RSL_MT_REL_REQ, "REL_REQ" }, + { RSL_MT_REL_CONF, "REL_CONF" }, + { RSL_MT_REL_IND, "REL_IND" }, + { RSL_MT_UNIT_DATA_REQ, "UNIT_DATA_REQ" }, + { RSL_MT_UNIT_DATA_IND, "UNIT_DATA_IND" }, + { RSL_MT_SUSP_REQ, "SUSP_REQ" }, + { RSL_MT_SUSP_CONF, "SUSP_CONF" }, + { RSL_MT_RES_REQ, "RES_REQ" }, + { RSL_MT_RECON_REQ, "RECON_REQ" }, + + { RSL_MT_BCCH_INFO, "BCCH_INFO" }, + { RSL_MT_CCCH_LOAD_IND, "CCCH_LOAD_IND" }, + { RSL_MT_CHAN_RQD, "CHAN_RQD" }, + { RSL_MT_DELETE_IND, "DELETE_IND" }, + { RSL_MT_PAGING_CMD, "PAGING_CMD" }, + { RSL_MT_IMMEDIATE_ASSIGN_CMD, "IMM_ASS_CMD" }, + { RSL_MT_SMS_BC_REQ, "SMS_BC_REQ" }, + { RSL_MT_CHAN_CONF, "CHAN_CONF" }, + + { RSL_MT_RF_RES_IND, "RF_RES_IND" }, + { RSL_MT_SACCH_FILL, "SACCH_FILL" }, + { RSL_MT_OVERLOAD, "OVERLOAD" }, + { RSL_MT_ERROR_REPORT, "ERROR_REPORT" }, + { RSL_MT_SMS_BC_CMD, "SMS_BC_CMD" }, + { RSL_MT_CBCH_LOAD_IND, "CBCH_LOAD_IND" }, + { RSL_MT_NOT_CMD, "NOTIFY_CMD" }, + + { RSL_MT_CHAN_ACTIV, "CHAN_ACTIV" }, + { RSL_MT_CHAN_ACTIV_ACK, "CHAN_ACTIV_ACK" }, + { RSL_MT_CHAN_ACTIV_NACK, "CHAN_ACTIV_NACK" }, + { RSL_MT_CONN_FAIL, "CONN_FAIL" }, + { RSL_MT_DEACTIVATE_SACCH, "DEACTIVATE_SACCH" }, + { RSL_MT_ENCR_CMD, "ENCR_CMD" }, + { RSL_MT_HANDO_DET, "HANDOVER_DETECT" }, + { RSL_MT_MEAS_RES, "MEAS_RES" }, + { RSL_MT_MODE_MODIFY_REQ, "MODE_MODIFY_REQ" }, + { RSL_MT_MODE_MODIFY_ACK, "MODE_MODIFY_ACK" }, + { RSL_MT_MODE_MODIFY_NACK, "MODE_MODIFY_NACK" }, + { RSL_MT_PHY_CONTEXT_REQ, "PHY_CONTEXT_REQ" }, + { RSL_MT_PHY_CONTEXT_CONF, "PHY_CONTEXT_CONF" }, + { RSL_MT_RF_CHAN_REL, "RF_CHAN_REL" }, + { RSL_MT_MS_POWER_CONTROL, "MS_POWER_CONTROL" }, + { RSL_MT_BS_POWER_CONTROL, "BS_POWER_CONTROL" }, + { RSL_MT_PREPROC_CONFIG, "PREPROC_CONFIG" }, + { RSL_MT_PREPROC_MEAS_RES, "PREPROC_MEAS_RES" }, + { RSL_MT_RF_CHAN_REL_ACK, "RF_CHAN_REL_ACK" }, + { RSL_MT_SACCH_INFO_MODIFY, "SACCH_INFO_MODIFY" }, + { RSL_MT_TALKER_DET, "TALKER_DETECT" }, + { RSL_MT_LISTENER_DET, "LISTENER_DETECT" }, + { RSL_MT_REMOTE_CODEC_CONF_REP, "REM_CODEC_CONF_REP" }, + { RSL_MT_RTD_REP, "RTD_REQ" }, + { RSL_MT_PRE_HANDO_NOTIF, "HANDO_NOTIF" }, + { RSL_MT_MR_CODEC_MOD_REQ, "CODEC_MOD_REQ" }, + { RSL_MT_MR_CODEC_MOD_ACK, "CODEC_MOD_ACK" }, + { RSL_MT_MR_CODEC_MOD_NACK, "CODEC_MOD_NACK" }, + { RSL_MT_MR_CODEC_MOD_PER, "CODEC_MODE_PER" }, + { RSL_MT_TFO_REP, "TFO_REP" }, + { RSL_MT_TFO_MOD_REQ, "TFO_MOD_REQ" }, + { RSL_MT_LOCATION_INFO, "LOCATION_INFO" }, + { 0, NULL } +}; + + +const char *rsl_msg_name(uint8_t msg_type) +{ + return get_value_string(rsl_msgt_names, msg_type); +} + static const struct value_string rsl_rlm_cause_strs[] = { { RLL_CAUSE_T200_EXPIRED, "Timer T200 expired (N200+1) times" }, { RLL_CAUSE_REEST_REQ, "Re-establishment request" }, |