blob: 6fb4e9e8922c552ec2fb8ce5eaf10a23cc88ab1f [file] [log] [blame]
Harald Weltec8585cf2014-06-21 22:28:12 +02001/* From GSM08.08 / 3GPP TS 48.008 version 11.7.0 Release 11 */
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +02002
Sylvain Munaut12ba7782014-06-16 10:13:40 +02003#pragma once
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +02004
5#include <stdlib.h>
6
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +02007/*
8 * this is from GSM 03.03 CGI but is copied in GSM 08.08
9 * in § 3.2.2.27 for Cell Identifier List
10 */
11enum CELL_IDENT {
12 CELL_IDENT_WHOLE_GLOBAL = 0,
13 CELL_IDENT_LAC_AND_CI = 1,
14 CELL_IDENT_CI = 2,
15 CELL_IDENT_NO_CELL = 3,
16 CELL_IDENT_LAI_AND_LAC = 4,
17 CELL_IDENT_LAC = 5,
18 CELL_IDENT_BSS = 6,
19 CELL_IDENT_UTRAN_PLMN_LAC_RNC = 8,
20 CELL_IDENT_UTRAN_RNC = 9,
21 CELL_IDENT_UTRAN_LAC_RNC = 10,
22};
23
24
25/* GSM 08.06 § 6.3 */
26enum BSSAP_MSG_TYPE {
27 BSSAP_MSG_BSS_MANAGEMENT = 0x0,
28 BSSAP_MSG_DTAP = 0x1,
29};
30
31struct bssmap_header {
Sylvain Munauta074ec42010-04-28 10:05:29 +020032 uint8_t type;
33 uint8_t length;
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +020034} __attribute__((packed));
35
36struct dtap_header {
Sylvain Munauta074ec42010-04-28 10:05:29 +020037 uint8_t type;
38 uint8_t link_id;
39 uint8_t length;
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +020040} __attribute__((packed));
41
42
43enum BSS_MAP_MSG_TYPE {
44 BSS_MAP_MSG_RESERVED_0 = 0,
45
46 /* ASSIGNMENT MESSAGES */
47 BSS_MAP_MSG_ASSIGMENT_RQST = 1,
48 BSS_MAP_MSG_ASSIGMENT_COMPLETE = 2,
49 BSS_MAP_MSG_ASSIGMENT_FAILURE = 3,
Harald Weltec8585cf2014-06-21 22:28:12 +020050 BSS_MAP_MSG_CHAN_MOD_RQST = 8,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +020051
52 /* HANDOVER MESSAGES */
53 BSS_MAP_MSG_HANDOVER_RQST = 16,
54 BSS_MAP_MSG_HANDOVER_REQUIRED = 17,
55 BSS_MAP_MSG_HANDOVER_RQST_ACKNOWLEDGE= 18,
56 BSS_MAP_MSG_HANDOVER_CMD = 19,
57 BSS_MAP_MSG_HANDOVER_COMPLETE = 20,
58 BSS_MAP_MSG_HANDOVER_SUCCEEDED = 21,
59 BSS_MAP_MSG_HANDOVER_FAILURE = 22,
60 BSS_MAP_MSG_HANDOVER_PERFORMED = 23,
61 BSS_MAP_MSG_HANDOVER_CANDIDATE_ENQUIRE = 24,
62 BSS_MAP_MSG_HANDOVER_CANDIDATE_RESPONSE = 25,
63 BSS_MAP_MSG_HANDOVER_REQUIRED_REJECT = 26,
64 BSS_MAP_MSG_HANDOVER_DETECT = 27,
Harald Weltec8585cf2014-06-21 22:28:12 +020065 BSS_MAP_MSG_INT_HANDOVER_REQUIRED = 0x70,
66 BSS_MAP_MSG_INT_HANDOVER_REQUIRED_REJ = 0x71,
67 BSS_MAP_MSG_INT_HANDOVER_CMD = 0x72,
68 BSS_MAP_MSG_INT_HANDOVER_ENQUIRY = 0x73,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +020069
70 /* RELEASE MESSAGES */
71 BSS_MAP_MSG_CLEAR_CMD = 32,
72 BSS_MAP_MSG_CLEAR_COMPLETE = 33,
73 BSS_MAP_MSG_CLEAR_RQST = 34,
74 BSS_MAP_MSG_RESERVED_1 = 35,
75 BSS_MAP_MSG_RESERVED_2 = 36,
76 BSS_MAP_MSG_SAPI_N_REJECT = 37,
77 BSS_MAP_MSG_CONFUSION = 38,
78
79 /* OTHER CONNECTION RELATED MESSAGES */
80 BSS_MAP_MSG_SUSPEND = 40,
81 BSS_MAP_MSG_RESUME = 41,
82 BSS_MAP_MSG_CONNECTION_ORIENTED_INFORMATION = 42,
83 BSS_MAP_MSG_PERFORM_LOCATION_RQST = 43,
84 BSS_MAP_MSG_LSA_INFORMATION = 44,
85 BSS_MAP_MSG_PERFORM_LOCATION_RESPONSE = 45,
86 BSS_MAP_MSG_PERFORM_LOCATION_ABORT = 46,
87 BSS_MAP_MSG_COMMON_ID = 47,
Harald Weltec8585cf2014-06-21 22:28:12 +020088 BSS_MAP_MSG_REROUTE_CMD = 0x78,
89 BSS_MAP_MSG_REROUTE_COMPLETE = 0x79,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +020090
91 /* GENERAL MESSAGES */
92 BSS_MAP_MSG_RESET = 48,
93 BSS_MAP_MSG_RESET_ACKNOWLEDGE = 49,
94 BSS_MAP_MSG_OVERLOAD = 50,
95 BSS_MAP_MSG_RESERVED_3 = 51,
96 BSS_MAP_MSG_RESET_CIRCUIT = 52,
97 BSS_MAP_MSG_RESET_CIRCUIT_ACKNOWLEDGE = 53,
98 BSS_MAP_MSG_MSC_INVOKE_TRACE = 54,
99 BSS_MAP_MSG_BSS_INVOKE_TRACE = 55,
100 BSS_MAP_MSG_CONNECTIONLESS_INFORMATION = 58,
Harald Weltec8585cf2014-06-21 22:28:12 +0200101 BSS_MAP_MSG_RESET_IP_RSRC = 0x3d,
102 BSS_MAP_MSG_RESET_IP_RSRC_ACK = 0x3e,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200103
104 /* TERRESTRIAL RESOURCE MESSAGES */
105 BSS_MAP_MSG_BLOCK = 64,
106 BSS_MAP_MSG_BLOCKING_ACKNOWLEDGE = 65,
107 BSS_MAP_MSG_UNBLOCK = 66,
108 BSS_MAP_MSG_UNBLOCKING_ACKNOWLEDGE = 67,
109 BSS_MAP_MSG_CIRCUIT_GROUP_BLOCK = 68,
110 BSS_MAP_MSG_CIRCUIT_GROUP_BLOCKING_ACKNOWLEDGE = 69,
111 BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCK = 70,
112 BSS_MAP_MSG_CIRCUIT_GROUP_UNBLOCKING_ACKNOWLEDGE = 71,
113 BSS_MAP_MSG_UNEQUIPPED_CIRCUIT = 72,
114 BSS_MAP_MSG_CHANGE_CIRCUIT = 78,
115 BSS_MAP_MSG_CHANGE_CIRCUIT_ACKNOWLEDGE = 79,
116
117 /* RADIO RESOURCE MESSAGES */
118 BSS_MAP_MSG_RESOURCE_RQST = 80,
119 BSS_MAP_MSG_RESOURCE_INDICATION = 81,
120 BSS_MAP_MSG_PAGING = 82,
121 BSS_MAP_MSG_CIPHER_MODE_CMD = 83,
122 BSS_MAP_MSG_CLASSMARK_UPDATE = 84,
123 BSS_MAP_MSG_CIPHER_MODE_COMPLETE = 85,
124 BSS_MAP_MSG_QUEUING_INDICATION = 86,
125 BSS_MAP_MSG_COMPLETE_LAYER_3 = 87,
126 BSS_MAP_MSG_CLASSMARK_RQST = 88,
127 BSS_MAP_MSG_CIPHER_MODE_REJECT = 89,
128 BSS_MAP_MSG_LOAD_INDICATION = 90,
129
130 /* VGCS/VBS */
131 BSS_MAP_MSG_VGCS_VBS_SETUP = 4,
132 BSS_MAP_MSG_VGCS_VBS_SETUP_ACK = 5,
133 BSS_MAP_MSG_VGCS_VBS_SETUP_REFUSE = 6,
134 BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RQST = 7,
135 BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_RESULT = 28,
136 BSS_MAP_MSG_VGCS_VBS_ASSIGNMENT_FAILURE = 29,
137 BSS_MAP_MSG_VGCS_VBS_QUEUING_INDICATION = 30,
138 BSS_MAP_MSG_UPLINK_RQST = 31,
139 BSS_MAP_MSG_UPLINK_RQST_ACKNOWLEDGE = 39,
140 BSS_MAP_MSG_UPLINK_RQST_CONFIRMATION = 73,
141 BSS_MAP_MSG_UPLINK_RELEASE_INDICATION = 74,
142 BSS_MAP_MSG_UPLINK_REJECT_CMD = 75,
143 BSS_MAP_MSG_UPLINK_RELEASE_CMD = 76,
144 BSS_MAP_MSG_UPLINK_SEIZED_CMD = 77,
Harald Weltec8585cf2014-06-21 22:28:12 +0200145 BSS_MAP_MSG_VGCS_ADDL_INFO = 0x60,
Harald Weltec8585cf2014-06-21 22:28:12 +0200146 BSS_MAP_MSG_NOTIFICATION_DATA = 0x62,
147 BSS_MAP_MSG_UPLINK_APP_DATA = 0x63,
148
149 /* LOCAL SWITCHING */
150 BSS_MAP_MSG_LCLS_CONNECT_CTRL = 0x74,
151 BSS_MAP_MSG_LCLS_CONNECT_CTRL_ACK = 0x75,
152 BSS_MAP_MSG_LCLS_NOTIFICATION = 0x76,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200153};
154
155enum GSM0808_IE_CODING {
156 GSM0808_IE_CIRCUIT_IDENTITY_CODE = 1,
157 GSM0808_IE_RESERVED_0 = 2,
158 GSM0808_IE_RESOURCE_AVAILABLE = 3,
159 GSM0808_IE_CAUSE = 4,
160 GSM0808_IE_CELL_IDENTIFIER = 5,
161 GSM0808_IE_PRIORITY = 6,
162 GSM0808_IE_LAYER_3_HEADER_INFORMATION = 7,
163 GSM0808_IE_IMSI = 8,
164 GSM0808_IE_TMSI = 9,
165 GSM0808_IE_ENCRYPTION_INFORMATION = 10,
166 GSM0808_IE_CHANNEL_TYPE = 11,
167 GSM0808_IE_PERIODICITY = 12,
168 GSM0808_IE_EXTENDED_RESOURCE_INDICATOR = 13,
169 GSM0808_IE_NUMBER_OF_MSS = 14,
170 GSM0808_IE_RESERVED_1 = 15,
171 GSM0808_IE_RESERVED_2 = 16,
172 GSM0808_IE_RESERVED_3 = 17,
173 GSM0808_IE_CLASSMARK_INFORMATION_T2 = 18,
174 GSM0808_IE_CLASSMARK_INFORMATION_T3 = 19,
175 GSM0808_IE_INTERFERENCE_BAND_TO_USE = 20,
176 GSM0808_IE_RR_CAUSE = 21,
177 GSM0808_IE_RESERVED_4 = 22,
178 GSM0808_IE_LAYER_3_INFORMATION = 23,
179 GSM0808_IE_DLCI = 24,
180 GSM0808_IE_DOWNLINK_DTX_FLAG = 25,
181 GSM0808_IE_CELL_IDENTIFIER_LIST = 26,
182 GSM0808_IE_RESPONSE_RQST = 27,
183 GSM0808_IE_RESOURCE_INDICATION_METHOD = 28,
184 GSM0808_IE_CLASSMARK_INFORMATION_TYPE_1 = 29,
185 GSM0808_IE_CIRCUIT_IDENTITY_CODE_LIST = 30,
186 GSM0808_IE_DIAGNOSTIC = 31,
187 GSM0808_IE_LAYER_3_MESSAGE_CONTENTS = 32,
188 GSM0808_IE_CHOSEN_CHANNEL = 33,
189 GSM0808_IE_TOTAL_RESOURCE_ACCESSIBLE = 34,
190 GSM0808_IE_CIPHER_RESPONSE_MODE = 35,
191 GSM0808_IE_CHANNEL_NEEDED = 36,
192 GSM0808_IE_TRACE_TYPE = 37,
193 GSM0808_IE_TRIGGERID = 38,
194 GSM0808_IE_TRACE_REFERENCE = 39,
195 GSM0808_IE_TRANSACTIONID = 40,
196 GSM0808_IE_MOBILE_IDENTITY = 41,
197 GSM0808_IE_OMCID = 42,
198 GSM0808_IE_FORWARD_INDICATOR = 43,
199 GSM0808_IE_CHOSEN_ENCR_ALG = 44,
200 GSM0808_IE_CIRCUIT_POOL = 45,
201 GSM0808_IE_CIRCUIT_POOL_LIST = 46,
202 GSM0808_IE_TIME_INDICATION = 47,
203 GSM0808_IE_RESOURCE_SITUATION = 48,
204 GSM0808_IE_CURRENT_CHANNEL_TYPE_1 = 49,
205 GSM0808_IE_QUEUEING_INDICATOR = 50,
206 GSM0808_IE_SPEECH_VERSION = 64,
207 GSM0808_IE_ASSIGNMENT_REQUIREMENT = 51,
208 GSM0808_IE_TALKER_FLAG = 53,
209 GSM0808_IE_CONNECTION_RELEASE_RQSTED = 54,
210 GSM0808_IE_GROUP_CALL_REFERENCE = 55,
211 GSM0808_IE_EMLPP_PRIORITY = 56,
212 GSM0808_IE_CONFIG_EVO_INDI = 57,
213 GSM0808_IE_OLD_BSS_TO_NEW_BSS_INFORMATION = 58,
214 GSM0808_IE_LSA_IDENTIFIER = 59,
215 GSM0808_IE_LSA_IDENTIFIER_LIST = 60,
216 GSM0808_IE_LSA_INFORMATION = 61,
217 GSM0808_IE_LCS_QOS = 62,
218 GSM0808_IE_LSA_ACCESS_CTRL_SUPPR = 63,
219 GSM0808_IE_LCS_PRIORITY = 67,
220 GSM0808_IE_LOCATION_TYPE = 68,
221 GSM0808_IE_LOCATION_ESTIMATE = 69,
222 GSM0808_IE_POSITIONING_DATA = 70,
223 GSM0808_IE_LCS_CAUSE = 71,
224 GSM0808_IE_LCS_CLIENT_TYPE = 72,
225 GSM0808_IE_APDU = 73,
226 GSM0808_IE_NETWORK_ELEMENT_IDENTITY = 74,
227 GSM0808_IE_GPS_ASSISTANCE_DATA = 75,
228 GSM0808_IE_DECIPHERING_KEYS = 76,
229 GSM0808_IE_RETURN_ERROR_RQST = 77,
230 GSM0808_IE_RETURN_ERROR_CAUSE = 78,
231 GSM0808_IE_SEGMENTATION = 79,
232 GSM0808_IE_SERVICE_HANDOVER = 80,
233 GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_UMTS = 81,
234 GSM0808_IE_SOURCE_RNC_TO_TARGET_RNC_TRANSPARENT_CDMA2000= 82,
235 GSM0808_IE_RESERVED_5 = 65,
236 GSM0808_IE_RESERVED_6 = 66,
Harald Weltec8585cf2014-06-21 22:28:12 +0200237 GSM0808_IE_GERAN_CLASSMARK = 0x53,
238 GSM0808_IE_GERAN_BSC_CONTAINER = 0x54,
239 GSM0808_IE_NEW_BSS_TO_OLD_BSS_INFO = 0x61,
240 GSM0800_IE_INTER_SYSTEM_INFO = 0x63,
241 GSM0808_IE_SNA_ACCESS_INFO = 0x64,
242 GSM0808_IE_VSTK_RAND_INFO = 0x65,
243 GSM0808_IE_VSTK_INFO = 0x66,
244 GSM0808_IE_PAGING_INFO = 0x67,
245 GSM0808_IE_IMEI = 0x68,
246 GSM0808_IE_VELOCITY_ESTIMATE = 0x55,
247 GSM0808_IE_VGCS_FEATURE_FLAGS = 0x69,
248 GSM0808_IE_TALKER_PRIORITY = 0x6a,
249 GSM0808_IE_EMERGENCY_SET_INDICATION = 0x6b,
250 GSM0808_IE_TALKER_IDENTITY = 0x6c,
251 GSM0808_IE_CELL_ID_LIST_SEGMENT = 0x6d,
Harald Welte92107df2014-06-21 23:16:20 +0200252 GSM0808_IE_SMS_TO_VGCS = 0x6e,
Harald Weltec8585cf2014-06-21 22:28:12 +0200253 GSM0808_IE_VGCS_TALKER_MODE = 0x6f,
254 GSM0808_IE_VGCS_VBS_CELL_STATUS = 0x70,
255 GSM0808_IE_CELL_ID_LIST_SEG_EST_CELLS = 0x71,
256 GSM0808_IE_CELL_ID_LIST_SEG_CELLS_TBE = 0x72,
257 GSM0808_IE_CELL_ID_LIST_SEG_REL_CELLS = 0x73,
258 GSM0808_IE_CELL_ID_LIST_SEG_NE_CELLS = 0x74,
259 GSM0808_IE_GANSS_ASSISTANCE_DATA = 0x75,
260 GSM0808_IE_GANSS_POSITIONING_DATA = 0x76,
261 GSM0808_IE_GANSS_LOCATION_TYPE = 0x77,
262 GSM0808_IE_APP_DATA = 0x78,
263 GSM0808_IE_DATA_IDENTITY = 0x79,
264 GSM0808_IE_APP_DATA_INFO = 0x7a,
265 GSM0808_IE_MSISDN = 0x7b,
266 GSM0808_IE_AOIP_TRASP_ADDR = 0x7c,
267 GSM0808_IE_SPEECH_CODEC_LIST = 0x7d,
268 GSM0808_IE_SPEECH_CODEC = 0x7e,
269 GSM0808_IE_CALL_ID = 0x7f,
270 GSM0808_IE_CALL_ID_LIST = 0x80,
271 GSM0808_IE_A_IF_SEL_FOR_RESET = 0x81,
272 GSM0808_IE_KC_128 = 0x83,
273 GSM0808_IE_CSG_IDENTIFIER = 0x84,
274 GSM0808_IE_REDIR_ATTEMPT_FLAG = 0x85,
275 GSM0808_IE_REROUTE_REJ_CAUSE = 0x86,
276 GSM0808_IE_SEND_SEQ_NUM = 0x87,
277 GSM0808_IE_REROUTE_COMPL_OUTCOME = 0x88,
278 GSM0808_IE_GLOBAL_CALL_REF = 0x89,
279 GSM0808_IE_LCLS_CONFIG = 0x8a,
280 GSM0808_IE_LCLS_CONN_STATUS_CTRL = 0x8b,
Harald Welte92107df2014-06-21 23:16:20 +0200281 GSM0808_IE_LCLS_CORR_NOT_NEEDED = 0x8c,
Harald Weltec8585cf2014-06-21 22:28:12 +0200282 GSM0808_IE_LCLS_BSS_STATUS = 0x8d,
283 GSM0808_IE_LCLS_BREAK_REQ = 0x8e,
284 GSM0808_IE_CSFB_INDICATION = 0x8f,
285 GSM0808_IE_CS_TO_PS_SRVCC = 0x90,
286 GSM0808_IE_SRC_ENB_TO_TGT_ENB_TRANSP = 0x91,
287 GSM0808_IE_CS_TO_PS_SRVCC_IND = 0x92,
288 GSM0808_IE_CN_TO_MS_TRANSP_INFO = 0x93,
289 GSM0808_IE_SELECTED_PLMN_ID = 0x94,
290 GSM0808_IE_LAST_USED_EUTRAN_PLMN_ID = 0x95,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200291};
292
Harald Weltec8585cf2014-06-21 22:28:12 +0200293/* GSM 08.08 3.2.2.5 Cause */
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200294enum gsm0808_cause {
295 GSM0808_CAUSE_RADIO_INTERFACE_MESSAGE_FAILURE = 0,
296 GSM0808_CAUSE_RADIO_INTERFACE_FAILURE = 1,
297 GSM0808_CAUSE_UPLINK_QUALITY = 2,
298 GSM0808_CAUSE_UPLINK_STRENGTH = 3,
299 GSM0808_CAUSE_DOWNLINK_QUALITY = 4,
300 GSM0808_CAUSE_DOWNLINK_STRENGTH = 5,
301 GSM0808_CAUSE_DISTANCE = 6,
302 GSM0808_CAUSE_O_AND_M_INTERVENTION = 7,
303 GSM0808_CAUSE_RESPONSE_TO_MSC_INVOCATION = 8,
304 GSM0808_CAUSE_CALL_CONTROL = 9,
305 GSM0808_CAUSE_RADIO_INTERFACE_FAILURE_REVERSION = 10,
306 GSM0808_CAUSE_HANDOVER_SUCCESSFUL = 11,
307 GSM0808_CAUSE_BETTER_CELL = 12,
308 GSM0808_CAUSE_DIRECTED_RETRY = 13,
309 GSM0808_CAUSE_JOINED_GROUP_CALL_CHANNEL = 14,
310 GSM0808_CAUSE_TRAFFIC = 15,
Harald Weltec8585cf2014-06-21 22:28:12 +0200311 GSM0808_CAUSE_REDUCE_LOAD_IN_SERVING_CELL = 0x10,
312 GSM0808_CAUSE_TRAFFIC_LOAD_IN_TGT_HIGHER_THAN_IN_SRC_CELL = 0x11,
313 GSM0808_CAUSE_RELOCATION_TRIGGERED = 0x12,
314 GSM0808_CAUSE_REQUSTED_OPT_NOT_AUTHORISED = 0x14,
315 GSM0808_CAUSE_ALT_CHAN_CONFIG_REQUESTED = 0x15,
316 GSM0808_CAUSE_RESP_TO_INT_HO_ENQ_MSG = 0x16,
317 GSM0808_CAUSE_INT_HO_ENQUIRY_REJECT = 0x17,
318 GSM0808_CAUSE_REDUNDANCY_LEVEL_NOT_ADEQUATE = 0x18,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200319 GSM0808_CAUSE_EQUIPMENT_FAILURE = 32,
320 GSM0808_CAUSE_NO_RADIO_RESOURCE_AVAILABLE = 33,
321 GSM0808_CAUSE_RQSTED_TERRESTRIAL_RESOURCE_UNAVAILABLE = 34,
322 GSM0808_CAUSE_CCCH_OVERLOAD = 35,
323 GSM0808_CAUSE_PROCESSOR_OVERLOAD = 36,
324 GSM0808_CAUSE_BSS_NOT_EQUIPPED = 37,
325 GSM0808_CAUSE_MS_NOT_EQUIPPED = 38,
326 GSM0808_CAUSE_INVALID_CELL = 39,
327 GSM0808_CAUSE_TRAFFIC_LOAD = 40,
328 GSM0808_CAUSE_PREEMPTION = 41,
Harald Weltec8585cf2014-06-21 22:28:12 +0200329 GSM0808_CAUSE_DTM_HO_SGSN_FAILURE = 0x2a,
330 GSM0808_CAUSE_DTM_HO_PS_ALLOC_FAILURE = 0x2b,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200331 GSM0808_CAUSE_RQSTED_TRANSCODING_RATE_ADAPTION_UNAVAILABLE = 48,
332 GSM0808_CAUSE_CIRCUIT_POOL_MISMATCH = 49,
333 GSM0808_CAUSE_SWITCH_CIRCUIT_POOL = 50,
334 GSM0808_CAUSE_RQSTED_SPEECH_VERSION_UNAVAILABLE = 51,
335 GSM0808_CAUSE_LSA_NOT_ALLOWED = 52,
Harald Weltec8585cf2014-06-21 22:28:12 +0200336 GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_UNAVAIL = 0x35,
337 GSM0808_CAUSE_REQ_A_IF_TYPE_UNAVAIL = 0x36,
338 GSM0808_CAUSE_INVALID_CSG_CELL = 0x37,
339 GSM0808_CAUSE_REQ_REDUND_LEVEL_NOT_AVAIL = 0x3f,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200340 GSM0808_CAUSE_CIPHERING_ALGORITHM_NOT_SUPPORTED = 64,
Harald Weltec8585cf2014-06-21 22:28:12 +0200341 GSM0808_CAUSE_GERAN_IU_MODE_FAILURE = 0x41,
342 GSM0808_CAUSE_INC_RELOC_NOT_SUPP_DT_PUESBINE_FEATURE = 0x42,
343 GSM0808_CAUSE_ACCESS_RESTRICTED_DUE_TO_SHARED_NETWORKS = 0x43,
344 GSM0808_CAUSE_REQ_CODEC_TYPE_OR_CONFIG_NOT_SUPP = 0x44,
345 GSM0808_CAUSE_REQ_A_IF_TYPE_NOT_SUPP = 0x45,
346 GSM0808_CAUSE_REQ_REDUND_LVL_NOT_SUPP = 0x46,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200347 GSM0808_CAUSE_TERRESTRIAL_CIRCUIT_ALREADY_ALLOCATED = 80,
348 GSM0808_CAUSE_INVALID_MESSAGE_CONTENTS = 81,
349 GSM0808_CAUSE_INFORMATION_ELEMENT_OR_FIELD_MISSING = 82,
350 GSM0808_CAUSE_INCORRECT_VALUE = 83,
351 GSM0808_CAUSE_UNKNOWN_MESSAGE_TYPE = 84,
352 GSM0808_CAUSE_UNKNOWN_INFORMATION_ELEMENT = 85,
Harald Weltec8585cf2014-06-21 22:28:12 +0200353 GSM0808_CAUSE_DTM_HO_INVALID_PS_IND = 0x56,
354 GSM0808_CAUSE_CALL_ID_ALREADY_ALLOC = 0x57,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200355 GSM0808_CAUSE_PROTOCOL_ERROR_BETWEEN_BSS_AND_MSC = 96,
Harald Weltec8585cf2014-06-21 22:28:12 +0200356 GSM0808_CAUSE_VGCS_VBS_CALL_NON_EXISTANT = 0x61,
357 GSM0808_CAUSE_DTM_HO_TIMER_EXPIRY = 0x62,
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200358};
359
360/* GSM 08.08 3.2.2.11 Channel Type */
361enum gsm0808_chan_indicator {
362 GSM0808_CHAN_SPEECH = 1,
363 GSM0808_CHAN_DATA = 2,
364 GSM0808_CHAN_SIGN = 3,
365};
366
Harald Weltec8585cf2014-06-21 22:28:12 +0200367/* GSM 08.08 3.2.2.11 Channel Type */
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200368enum gsm0808_chan_rate_type_data {
369 GSM0808_DATA_FULL_BM = 0x8,
370 GSM0808_DATA_HALF_LM = 0x9,
371 GSM0808_DATA_FULL_RPREF = 0xa,
372 GSM0808_DATA_HALF_PREF = 0xb,
373 GSM0808_DATA_FULL_PREF_NO_CHANGE = 0x1a,
374 GSM0808_DATA_HALF_PREF_NO_CHANGE = 0x1b,
375 GSM0808_DATA_MULTI_MASK = 0x20,
376 GSM0808_DATA_MULTI_MASK_NO_CHANGE = 0x30,
377};
378
Harald Weltec8585cf2014-06-21 22:28:12 +0200379/* GSM 08.08 3.2.2.11 Channel Type */
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200380enum gsm0808_chan_rate_type_speech {
381 GSM0808_SPEECH_FULL_BM = 0x8,
382 GSM0808_SPEECH_HALF_LM = 0x9,
383 GSM0808_SPEECH_FULL_PREF= 0xa,
384 GSM0808_SPEECH_HALF_PREF= 0xb,
385 GSM0808_SPEECH_FULL_PREF_NO_CHANGE = 0x1a,
386 GSM0808_SPEECH_HALF_PREF_NO_CHANGE = 0x1b,
387 GSM0808_SPEECH_PERM = 0xf,
388 GSM0808_SPEECH_PERM_NO_CHANGE = 0x1f,
389};
390
Harald Weltec8585cf2014-06-21 22:28:12 +0200391/* GSM 08.08 3.2.2.11 Channel Type */
Holger Hans Peter Freytherebaed742010-04-15 03:14:51 +0200392enum gsm0808_permitted_speech {
393 GSM0808_PERM_FR1 = 0x01,
394 GSM0808_PERM_FR2 = 0x11,
395 GSM0808_PERM_FR3 = 0x21,
396 GSM0808_PERM_HR1 = GSM0808_PERM_FR1 | 0x4,
397 GSM0808_PERM_HR2 = GSM0808_PERM_FR2 | 0x4,
398 GSM0808_PERM_HR3 = GSM0808_PERM_FR3 | 0x4,
399};
Harald Weltec8585cf2014-06-21 22:28:12 +0200400
401/* GSM 08.08 3.2.2.44 Chosen Encryption Algorithm */
402enum gsm0808_chosen_enc_alg {
403 GSM0808_ALG_ID_A5_0 = 0x01,
404 GSM0808_ALG_ID_A5_1 = 0x02,
405 GSM0808_ALG_ID_A5_2 = 0x03,
406 GSM0808_ALG_ID_A5_3 = 0x04,
407 GSM0808_ALG_ID_A5_4 = 0x05,
408 GSM0808_ALG_ID_A5_5 = 0x06,
409 GSM0808_ALG_ID_A5_6 = 0x07,
410 GSM0808_ALG_ID_A5_7 = 0x08,
411};
412
413/* GSM 08.08 3.2.2.85 Paging Information */
414enum gsm0808_paging_info {
415 GSM0808_PAGINF_FOR_MT_CALL = 0x00,
416 GSM0808_PAGINF_FOR_SMS = 0x01,
417 GSM0808_PAGINF_FOR_USSD = 0x02,
418};