comparison include/gsm48_const.h @ 0:0e907d59d815

include: import from ThemWi1
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 25 Jun 2022 18:30:55 -0800
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:0e907d59d815
1 /*
2 * This header file contains some GSM 04.08 constants pulled from
3 * Osmocom header file <osmocom/gsm/protocol/gsm_04_08.h>,
4 * beyond those included in mncc.h essential interface definition.
5 */
6
7 #ifndef __GSM48_CONST_H
8 #define __GSM48_CONST_H
9
10 enum gsm48_chan_mode {
11 GSM48_CMODE_SIGN = 0x00,
12 GSM48_CMODE_SPEECH_V1 = 0x01,
13 GSM48_CMODE_SPEECH_EFR = 0x21,
14 GSM48_CMODE_SPEECH_AMR = 0x41,
15 GSM48_CMODE_DATA_14k5 = 0x0f,
16 GSM48_CMODE_DATA_12k0 = 0x03,
17 GSM48_CMODE_DATA_6k0 = 0x0b,
18 GSM48_CMODE_DATA_3k6 = 0x13,
19 GSM48_CMODE_SPEECH_V1_VAMOS = 0xc1,
20 GSM48_CMODE_SPEECH_V2_VAMOS = 0xc2,
21 GSM48_CMODE_SPEECH_V3_VAMOS = 0xc3,
22 GSM48_CMODE_SPEECH_V5_VAMOS = 0xc5,
23 };
24
25 /* Section 10.5.4.21 / Table 10.5.127 */
26
27 enum gsm48_progress_desc {
28 GSM48_PROGR_NOT_E2E = 0x00,
29 GSM48_PROGR_DEST_NOT_PLMN = 0x02,
30 GSM48_PROGR_ORIG_NOT_PLMN = 0x03,
31 GSM48_PROGR_RETURNED = 0x04,
32 GSM48_PROGR_IN_BAND_AVAIL = 0x08,
33 GSM48_PROGR_CALL_E2E = 0x20,
34 GSM48_PROGR_QUEUEING = 0x40,
35 };
36
37 /* Section 10.5.4.23 / Table 10.5.130 */
38 enum gsm48_signal_val {
39 GSM48_SIGNAL_DIALTONE = 0x00,
40 GSM48_SIGNAL_RINGBACK = 0x01,
41 GSM48_SIGNAL_INTERCEPT = 0x02,
42 GSM48_SIGNAL_NET_CONG = 0x03,
43 GSM48_SIGNAL_BUSY = 0x04,
44 GSM48_SIGNAL_CONFIRM = 0x05,
45 GSM48_SIGNAL_ANSWER = 0x06,
46 GSM48_SIGNAL_CALL_WAIT = 0x07,
47 GSM48_SIGNAL_OFF_HOOK = 0x08,
48 GSM48_SIGNAL_OFF = 0x3f,
49 GSM48_SIGNAL_ALERT_OFF = 0x4f,
50 };
51
52 /* Section 10.5.4.11 / Table 10.5.122 */
53 enum gsm48_cause_coding {
54 GSM48_CAUSE_CODING_CCITT_Q931 = 0x00,
55 GSM48_CAUSE_CODING_RESERVED = 0x01,
56 GSM48_CAUSE_CODING_NATIONAL = 0x02,
57 GSM48_CAUSE_CODING_GSM = 0x03,
58 };
59
60 enum gsm48_cause_loc {
61 GSM48_CAUSE_LOC_USER = 0x00,
62 GSM48_CAUSE_LOC_PRN_S_LU = 0x01,
63 GSM48_CAUSE_LOC_PUN_S_LU = 0x02,
64 GSM48_CAUSE_LOC_TRANS_NET = 0x03,
65 GSM48_CAUSE_LOC_PUN_S_RU = 0x04,
66 GSM48_CAUSE_LOC_PRN_S_RU = 0x05,
67 /* not defined */
68 GSM48_CAUSE_LOC_INN_NET = 0x07,
69 GSM48_CAUSE_LOC_NET_BEYOND = 0x0a,
70 };
71
72 /* Section 10.5.4.11 CC Cause / Table 10.5.123 */
73 enum gsm48_cc_cause {
74 GSM48_CC_CAUSE_UNASSIGNED_NR = 1,
75 GSM48_CC_CAUSE_NO_ROUTE = 3,
76 GSM48_CC_CAUSE_CHAN_UNACCEPT = 6,
77 GSM48_CC_CAUSE_OP_DET_BARRING = 8,
78 GSM48_CC_CAUSE_NORM_CALL_CLEAR = 16,
79 GSM48_CC_CAUSE_USER_BUSY = 17,
80 GSM48_CC_CAUSE_USER_NOTRESPOND = 18,
81 GSM48_CC_CAUSE_USER_ALERTING_NA = 19,
82 GSM48_CC_CAUSE_CALL_REJECTED = 21,
83 GSM48_CC_CAUSE_NUMBER_CHANGED = 22,
84 GSM48_CC_CAUSE_PRE_EMPTION = 25,
85 GSM48_CC_CAUSE_NONSE_USER_CLR = 26,
86 GSM48_CC_CAUSE_DEST_OOO = 27,
87 GSM48_CC_CAUSE_INV_NR_FORMAT = 28,
88 GSM48_CC_CAUSE_FACILITY_REJ = 29,
89 GSM48_CC_CAUSE_RESP_STATUS_INQ = 30,
90 GSM48_CC_CAUSE_NORMAL_UNSPEC = 31,
91 GSM48_CC_CAUSE_NO_CIRCUIT_CHAN = 34,
92 GSM48_CC_CAUSE_NETWORK_OOO = 38,
93 GSM48_CC_CAUSE_TEMP_FAILURE = 41,
94 GSM48_CC_CAUSE_SWITCH_CONG = 42,
95 GSM48_CC_CAUSE_ACC_INF_DISCARD = 43,
96 GSM48_CC_CAUSE_REQ_CHAN_UNAVAIL = 44,
97 GSM48_CC_CAUSE_RESOURCE_UNAVAIL = 47,
98 GSM48_CC_CAUSE_QOS_UNAVAIL = 49,
99 GSM48_CC_CAUSE_REQ_FAC_NOT_SUBSC= 50,
100 GSM48_CC_CAUSE_INC_BARRED_CUG = 55,
101 GSM48_CC_CAUSE_BEARER_CAP_UNAUTH= 57,
102 GSM48_CC_CAUSE_BEARER_CA_UNAVAIL= 58,
103 GSM48_CC_CAUSE_SERV_OPT_UNAVAIL = 63,
104 GSM48_CC_CAUSE_BEARERSERV_UNIMPL= 65,
105 GSM48_CC_CAUSE_ACM_GE_ACM_MAX = 68,
106 GSM48_CC_CAUSE_REQ_FAC_NOTIMPL = 69,
107 GSM48_CC_CAUSE_RESTR_BCAP_AVAIL = 70,
108 GSM48_CC_CAUSE_SERV_OPT_UNIMPL = 79,
109 GSM48_CC_CAUSE_INVAL_TRANS_ID = 81,
110 GSM48_CC_CAUSE_USER_NOT_IN_CUG = 87,
111 GSM48_CC_CAUSE_INCOMPAT_DEST = 88,
112 GSM48_CC_CAUSE_INVAL_TRANS_NET = 91,
113 GSM48_CC_CAUSE_SEMANTIC_INCORR = 95,
114 GSM48_CC_CAUSE_INVAL_MAND_INF = 96,
115 GSM48_CC_CAUSE_MSGTYPE_NOTEXIST = 97,
116 GSM48_CC_CAUSE_MSGTYPE_INCOMPAT = 98,
117 GSM48_CC_CAUSE_IE_NOTEXIST = 99,
118 GSM48_CC_CAUSE_COND_IE_ERR = 100,
119 GSM48_CC_CAUSE_MSG_INCOMP_STATE = 101,
120 GSM48_CC_CAUSE_RECOVERY_TIMER = 102,
121 GSM48_CC_CAUSE_PROTO_ERR = 111,
122 GSM48_CC_CAUSE_INTERWORKING = 127,
123 };
124
125 /* Table 10.5.118 / 3GPP TS 24.008 Section 10.5.4.7 */
126 enum gsm48_type_of_number {
127 GSM48_TON_UNKNOWN = 0,
128 GSM48_TON_INTERNATIONAL = 1,
129 GSM48_TON_NATIONAL = 2,
130 GSM48_TON_NET_SPEC = 3,
131 GSM48_TON_SHORT_CODE = 4,
132 /* reserved */
133 };
134
135 /* Table 10.5.118 / 3GPP TS 24.008 Section 10.5.4.7 */
136 enum gsm48_numbering_plan {
137 GSM48_NPI_UNKNOWN = 0,
138 GSM48_NPI_ISDN_E164 = 1,
139 GSM48_NPI_DATA_X121 = 3,
140 GSM48_NPI_TELEX_F69 = 4,
141 GSM48_NPI_NATIONAL = 8,
142 GSM48_NPI_PRIVATE = 9,
143 GSM48_NPI_CTS = 11,
144 /* reserved */
145 };
146
147 /* local addition, not from Osmocom: Table 10.5.120 from same spec as above */
148
149 enum gsm48_present_ind {
150 GSM48_PRES_ALLOW = 0,
151 GSM48_PRES_RESTR = 1,
152 GSM48_PRES_UNAVAIL = 2,
153 /* reserved */
154 };
155
156 enum gsm48_screen_ind {
157 GSM48_SCRN_USER_NS = 0,
158 GSM48_SCRN_USER_PASS = 1,
159 GSM48_SCRN_USER_FAIL = 2,
160 GSM48_SCRN_NETWORK = 3,
161 };
162
163 #endif /* include guard */