update gsm_08_08.h to Release 11
diff --git a/include/osmocom/gsm/protocol/gsm_08_08.h b/include/osmocom/gsm/protocol/gsm_08_08.h
index bf408eb..6ddab5d 100644
--- a/include/osmocom/gsm/protocol/gsm_08_08.h
+++ b/include/osmocom/gsm/protocol/gsm_08_08.h
@@ -1,4 +1,4 @@
-/* From GSM08.08 */
+/* From GSM08.08 / 3GPP TS 48.008 version 11.7.0 Release 11 */
 
 #pragma once
 
@@ -47,6 +47,7 @@
 	BSS_MAP_MSG_ASSIGMENT_RQST	= 1,
 	BSS_MAP_MSG_ASSIGMENT_COMPLETE	= 2,
 	BSS_MAP_MSG_ASSIGMENT_FAILURE	= 3,
+	BSS_MAP_MSG_CHAN_MOD_RQST	= 8,
 
 	/*  HANDOVER MESSAGES */
 	BSS_MAP_MSG_HANDOVER_RQST		= 16,
@@ -61,6 +62,10 @@
 	BSS_MAP_MSG_HANDOVER_CANDIDATE_RESPONSE	= 25,
 	BSS_MAP_MSG_HANDOVER_REQUIRED_REJECT	= 26,
 	BSS_MAP_MSG_HANDOVER_DETECT		= 27,
+	BSS_MAP_MSG_INT_HANDOVER_REQUIRED	= 0x70,
+	BSS_MAP_MSG_INT_HANDOVER_REQUIRED_REJ	= 0x71,
+	BSS_MAP_MSG_INT_HANDOVER_CMD		= 0x72,
+	BSS_MAP_MSG_INT_HANDOVER_ENQUIRY	= 0x73,
 
 	/* RELEASE MESSAGES */
 	BSS_MAP_MSG_CLEAR_CMD		= 32,
@@ -80,6 +85,8 @@
 	BSS_MAP_MSG_PERFORM_LOCATION_RESPONSE	= 45,
 	BSS_MAP_MSG_PERFORM_LOCATION_ABORT	= 46,
 	BSS_MAP_MSG_COMMON_ID			= 47,
+	BSS_MAP_MSG_REROUTE_CMD			= 0x78,
+	BSS_MAP_MSG_REROUTE_COMPLETE		= 0x79,
 
 	/* GENERAL MESSAGES */
 	BSS_MAP_MSG_RESET			= 48,
@@ -91,6 +98,8 @@
 	BSS_MAP_MSG_MSC_INVOKE_TRACE		= 54,
 	BSS_MAP_MSG_BSS_INVOKE_TRACE		= 55,
 	BSS_MAP_MSG_CONNECTIONLESS_INFORMATION	= 58,
+	BSS_MAP_MSG_RESET_IP_RSRC		= 0x3d,
+	BSS_MAP_MSG_RESET_IP_RSRC_ACK		= 0x3e,
 
 	/* TERRESTRIAL RESOURCE MESSAGES */
 	BSS_MAP_MSG_BLOCK			= 64,
@@ -133,6 +142,15 @@
 	BSS_MAP_MSG_UPLINK_REJECT_CMD	= 75,
 	BSS_MAP_MSG_UPLINK_RELEASE_CMD	= 76,
 	BSS_MAP_MSG_UPLINK_SEIZED_CMD	= 77,
+	BSS_MAP_MSG_VGCS_ADDL_INFO		= 0x60,
+
+	BSS_MAP_MSG_NOTIFICATION_DATA		= 0x62,
+	BSS_MAP_MSG_UPLINK_APP_DATA		= 0x63,
+
+	/* LOCAL SWITCHING */
+	BSS_MAP_MSG_LCLS_CONNECT_CTRL		= 0x74,
+	BSS_MAP_MSG_LCLS_CONNECT_CTRL_ACK	= 0x75,
+	BSS_MAP_MSG_LCLS_NOTIFICATION		= 0x76,
 };
 
 enum GSM0808_IE_CODING {
@@ -217,8 +235,62 @@
 	GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_CDMA2000= 82,
 	GSM0808_IE_RESERVED_5			= 65,
 	GSM0808_IE_RESERVED_6			= 66,
+	GSM0808_IE_GERAN_CLASSMARK		= 0x53,
+	GSM0808_IE_GERAN_BSC_CONTAINER		= 0x54,
+	GSM0808_IE_NEW_BSS_TO_OLD_BSS_INFO	= 0x61,
+	GSM0800_IE_INTER_SYSTEM_INFO		= 0x63,
+	GSM0808_IE_SNA_ACCESS_INFO		= 0x64,
+	GSM0808_IE_VSTK_RAND_INFO		= 0x65,
+	GSM0808_IE_VSTK_INFO			= 0x66,
+	GSM0808_IE_PAGING_INFO			= 0x67,
+	GSM0808_IE_IMEI				= 0x68,
+	GSM0808_IE_VELOCITY_ESTIMATE		= 0x55,
+	GSM0808_IE_VGCS_FEATURE_FLAGS		= 0x69,
+	GSM0808_IE_TALKER_PRIORITY		= 0x6a,
+	GSM0808_IE_EMERGENCY_SET_INDICATION	= 0x6b,
+	GSM0808_IE_TALKER_IDENTITY		= 0x6c,
+	GSM0808_IE_CELL_ID_LIST_SEGMENT		= 0x6d,
+	GSM0808_IE_VGCS_TALKER_MODE		= 0x6f,
+	GSM0808_IE_VGCS_VBS_CELL_STATUS		= 0x70,
+	GSM0808_IE_CELL_ID_LIST_SEG_EST_CELLS	= 0x71,
+	GSM0808_IE_CELL_ID_LIST_SEG_CELLS_TBE	= 0x72,
+	GSM0808_IE_CELL_ID_LIST_SEG_REL_CELLS	= 0x73,
+	GSM0808_IE_CELL_ID_LIST_SEG_NE_CELLS	= 0x74,
+	GSM0808_IE_GANSS_ASSISTANCE_DATA	= 0x75,
+	GSM0808_IE_GANSS_POSITIONING_DATA	= 0x76,
+	GSM0808_IE_GANSS_LOCATION_TYPE		= 0x77,
+	GSM0808_IE_APP_DATA			= 0x78,
+	GSM0808_IE_DATA_IDENTITY		= 0x79,
+	GSM0808_IE_APP_DATA_INFO		= 0x7a,
+	GSM0808_IE_MSISDN			= 0x7b,
+	GSM0808_IE_AOIP_TRASP_ADDR		= 0x7c,
+	GSM0808_IE_SPEECH_CODEC_LIST		= 0x7d,
+	GSM0808_IE_SPEECH_CODEC			= 0x7e,
+	GSM0808_IE_CALL_ID			= 0x7f,
+	GSM0808_IE_CALL_ID_LIST			= 0x80,
+	GSM0808_IE_A_IF_SEL_FOR_RESET		= 0x81,
+	GSM0808_IE_KC_128			= 0x83,
+	GSM0808_IE_CSG_IDENTIFIER		= 0x84,
+	GSM0808_IE_REDIR_ATTEMPT_FLAG		= 0x85,
+	GSM0808_IE_REROUTE_REJ_CAUSE		= 0x86,
+	GSM0808_IE_SEND_SEQ_NUM			= 0x87,
+	GSM0808_IE_REROUTE_COMPL_OUTCOME	= 0x88,
+	GSM0808_IE_GLOBAL_CALL_REF		= 0x89,
+	GSM0808_IE_LCLS_CONFIG			= 0x8a,
+	GSM0808_IE_LCLS_CONN_STATUS_CTRL	= 0x8b,
+	GSM0808_IE_LCLS_CORR_NOT_NEEDEDL	= 0x8c,
+	GSM0808_IE_LCLS_BSS_STATUS		= 0x8d,
+	GSM0808_IE_LCLS_BREAK_REQ		= 0x8e,
+	GSM0808_IE_CSFB_INDICATION		= 0x8f,
+	GSM0808_IE_CS_TO_PS_SRVCC		= 0x90,
+	GSM0808_IE_SRC_ENB_TO_TGT_ENB_TRANSP	= 0x91,
+	GSM0808_IE_CS_TO_PS_SRVCC_IND		= 0x92,
+	GSM0808_IE_CN_TO_MS_TRANSP_INFO		= 0x93,
+	GSM0808_IE_SELECTED_PLMN_ID		= 0x94,
+	GSM0808_IE_LAST_USED_EUTRAN_PLMN_ID	= 0x95,
 };
 
+/* GSM 08.08 3.2.2.5 Cause */
 enum gsm0808_cause {
 	GSM0808_CAUSE_RADIO_INTERFACE_MESSAGE_FAILURE			= 0,
 	GSM0808_CAUSE_RADIO_INTERFACE_FAILURE				= 1,
@@ -236,6 +308,14 @@
 	GSM0808_CAUSE_DIRECTED_RETRY					= 13,
 	GSM0808_CAUSE_JOINED_GROUP_CALL_CHANNEL				= 14,
 	GSM0808_CAUSE_TRAFFIC						= 15,
+	GSM0808_CAUSE_REDUCE_LOAD_IN_SERVING_CELL			= 0x10,
+	GSM0808_CAUSE_TRAFFIC_LOAD_IN_TGT_HIGHER_THAN_IN_SRC_CELL	= 0x11,
+	GSM0808_CAUSE_RELOCATION_TRIGGERED				= 0x12,
+	GSM0808_CAUSE_REQUSTED_OPT_NOT_AUTHORISED			= 0x14,
+	GSM0808_CAUSE_ALT_CHAN_CONFIG_REQUESTED				= 0x15,
+	GSM0808_CAUSE_RESP_TO_INT_HO_ENQ_MSG				= 0x16,
+	GSM0808_CAUSE_INT_HO_ENQUIRY_REJECT				= 0x17,
+	GSM0808_CAUSE_REDUNDANCY_LEVEL_NOT_ADEQUATE			= 0x18,
 	GSM0808_CAUSE_EQUIPMENT_FAILURE					= 32,
 	GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE			= 33,
 	GSM0808_CAUSE_RQSTED_TERRESTRIAL_RESOURCE_UNAVAILABLE	= 34,
@@ -246,19 +326,35 @@
 	GSM0808_CAUSE_INVALID_CELL					= 39,
 	GSM0808_CAUSE_TRAFFIC_LOAD					= 40,
 	GSM0808_CAUSE_PREEMPTION					= 41,
+	GSM0808_CAUSE_DTM_HO_SGSN_FAILURE				= 0x2a,
+	GSM0808_CAUSE_DTM_HO_PS_ALLOC_FAILURE				= 0x2b,
 	GSM0808_CAUSE_RQSTED_TRANSCODING_RATE_ADAPTION_UNAVAILABLE	= 48,
 	GSM0808_CAUSE_CIRCUIT_POOL_MISMATCH				= 49,
 	GSM0808_CAUSE_SWITCH_CIRCUIT_POOL				= 50,
 	GSM0808_CAUSE_RQSTED_SPEECH_VERSION_UNAVAILABLE		= 51,
 	GSM0808_CAUSE_LSA_NOT_ALLOWED					= 52,
+	GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_UNAVAIL			= 0x35,
+	GSM0808_CAUSE_REQ_A_IF_TYPE_UNAVAIL				= 0x36,
+	GSM0808_CAUSE_INVALID_CSG_CELL					= 0x37,
+	GSM0808_CAUSE_REQ_REDUND_LEVEL_NOT_AVAIL			= 0x3f,
 	GSM0808_CAUSE_CIPHERING_ALGORITHM_NOT_SUPPORTED			= 64,
+	GSM0808_CAUSE_GERAN_IU_MODE_FAILURE				= 0x41,
+	GSM0808_CAUSE_INC_RELOC_NOT_SUPP_DT_PUESBINE_FEATURE		= 0x42,
+	GSM0808_CAUSE_ACCESS_RESTRICTED_DUE_TO_SHARED_NETWORKS		= 0x43,
+	GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_NOT_SUPP			= 0x44,
+	GSM0808_CAUSE_REQ_A_IF_TYPE_NOT_SUPP				= 0x45,
+	GSM0808_CAUSE_REQ_REDUND_LVL_NOT_SUPP				= 0x46,
 	GSM0808_CAUSE_TERRESTRIAL_CIRCUIT_ALREADY_ALLOCATED		= 80,
 	GSM0808_CAUSE_INVALID_MESSAGE_CONTENTS				= 81,
 	GSM0808_CAUSE_INFORMATION_ELEMENT_OR_FIELD_MISSING		= 82,
 	GSM0808_CAUSE_INCORRECT_VALUE					= 83,
 	GSM0808_CAUSE_UNKNOWN_MESSAGE_TYPE				= 84,
 	GSM0808_CAUSE_UNKNOWN_INFORMATION_ELEMENT			= 85,
+	GSM0808_CAUSE_DTM_HO_INVALID_PS_IND				= 0x56,
+	GSM0808_CAUSE_CALL_ID_ALREADY_ALLOC				= 0x57,
 	GSM0808_CAUSE_PROTOCOL_ERROR_BETWEEN_BSS_AND_MSC		= 96,
+	GSM0808_CAUSE_VGCS_VBS_CALL_NON_EXISTANT			= 0x61,
+	GSM0808_CAUSE_DTM_HO_TIMER_EXPIRY				= 0x62,
 };
 
 /* GSM 08.08 3.2.2.11 Channel Type */
@@ -268,6 +364,7 @@
 	GSM0808_CHAN_SIGN   = 3,
 };
 
+/* GSM 08.08 3.2.2.11 Channel Type */
 enum gsm0808_chan_rate_type_data {
 	GSM0808_DATA_FULL_BM	= 0x8,
 	GSM0808_DATA_HALF_LM	= 0x9,
@@ -279,6 +376,7 @@
 	GSM0808_DATA_MULTI_MASK_NO_CHANGE	= 0x30,
 };
 
+/* GSM 08.08 3.2.2.11 Channel Type */
 enum gsm0808_chan_rate_type_speech {
 	GSM0808_SPEECH_FULL_BM	= 0x8,
 	GSM0808_SPEECH_HALF_LM	= 0x9,
@@ -290,6 +388,7 @@
 	GSM0808_SPEECH_PERM_NO_CHANGE = 0x1f,
 };
 
+/* GSM 08.08 3.2.2.11 Channel Type */
 enum gsm0808_permitted_speech {
 	GSM0808_PERM_FR1	= 0x01,
 	GSM0808_PERM_FR2	= 0x11,
@@ -298,3 +397,22 @@
 	GSM0808_PERM_HR2	= GSM0808_PERM_FR2 | 0x4,
 	GSM0808_PERM_HR3	= GSM0808_PERM_FR3 | 0x4,
 };
+
+/* GSM 08.08 3.2.2.44 Chosen Encryption Algorithm */
+enum gsm0808_chosen_enc_alg {
+	GSM0808_ALG_ID_A5_0	= 0x01,
+	GSM0808_ALG_ID_A5_1	= 0x02,
+	GSM0808_ALG_ID_A5_2	= 0x03,
+	GSM0808_ALG_ID_A5_3	= 0x04,
+	GSM0808_ALG_ID_A5_4	= 0x05,
+	GSM0808_ALG_ID_A5_5	= 0x06,
+	GSM0808_ALG_ID_A5_6	= 0x07,
+	GSM0808_ALG_ID_A5_7	= 0x08,
+};
+
+/* GSM 08.08 3.2.2.85 Paging Information */
+enum gsm0808_paging_info {
+	GSM0808_PAGINF_FOR_MT_CALL	= 0x00,
+	GSM0808_PAGINF_FOR_SMS		= 0x01,
+	GSM0808_PAGINF_FOR_USSD		= 0x02,
+};