1 /*******************************************************************************
2 ################################################################################
3 # Copyright (c) [2017-2019] [Radisys] #
5 # Licensed under the Apache License, Version 2.0 (the "License"); #
6 # you may not use this file except in compliance with the License. #
7 # You may obtain a copy of the License at #
9 # http://www.apache.org/licenses/LICENSE-2.0 #
11 # Unless required by applicable law or agreed to in writing, software #
12 # distributed under the License is distributed on an "AS IS" BASIS, #
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
14 # See the License for the specific language governing permissions and #
15 # limitations under the License. #
16 ################################################################################
17 *******************************************************************************/
19 /********************************************************************20**
21 Name: LTE PDCP Interface
25 Desc: This file contains the defines required by PDCP user
29 *********************************************************************21*/
35 #endif /*for extern "C"*/
39 * @brief Macro for UDX Interface
42 #define UDX_SEL_LC 0 /* UDX loose couple selector */
43 #define UDX_SEL_LWLC 1
46 #define UDX_7BIT_SN_SIZE 7 /*!< Sequence length is 7-bit */
47 #define UDX_12BIT_SN_SIZE 12 /*!< Sequence length is 12-bit */
48 #define UDX_MAX_CFG 10 /*!< Maximum PDCP entity to be configured */
49 #define UDX_MAX_DRB 12 /*!< Maximum DRBs per UE */
51 /* UDX Configuration Failure Reasons */
52 #define UDX_CFG_REAS_NONE 0 /*!< No Failure */
53 #define UDX_CFG_REAS_ENT_CREAT_FAIL 1 /*!< PDCP Entity Creation Failure*/
54 #define UDX_CFG_REAS_UE_CREAT_FAIL 2 /*!< UE CB Creation Failure */
55 #define UDX_CFG_REAS_INVALID_PDCPID 3 /*!< Invalid PDCP ID */
56 #define UDX_CFG_REAS_PDCPID_PRSNT 4 /*!< PDCP ID already present */
57 #define UDX_CFG_REAS_INVALID_RLCMODE 5 /*!< Invalid RLC Mode */
58 #define UDX_CFG_REAS_PDCPID_UNKWN 6 /*!< PDCP ID Unknown */
59 #define UDX_CFG_REAS_UE_UNKWN 7 /*!< UE Cb Unknown */
60 #define UDX_CFG_REAS_CIPHER_ALGO_INVALID 8 /*!< Invalid Cipher Algo */
61 #define UDX_CFG_REAS_ENT_DEL_FAIL 9 /*!< PDCP Entity Deletion Failure */
62 #define UDX_CFG_REAS_UE_DEL_FAIL 10 /*!< UE Cb Deletion Failure */
63 #define UDX_CFG_REAS_REEST_FAIL 11 /*!< PDCP Reestablish Failure */
64 #define UDX_CFG_REAS_COMP_ALGO_INVALID 12 /*!< Compression Algo not
66 #define UDX_CFG_REAS_RECFG_FAIL 13 /*!< PDCP Reconfiguration Failed */
67 #define UDX_CFG_REAS_INVALID_CFG 14 /*!< Invalid Configuration Type */
68 #define UDX_CFG_REAS_SAME_UEID 15 /*!< UE IDs match in ChngUeId
70 #define UDX_CFG_REAS_SAME_RBID 16 /*!< UE IDs match in ChngUeId
72 #define UDX_CFG_REAS_INVALID_RBID 17 /*!< Invalid RB ID */
74 #define UDX_CFG_REAS_INTINIT_FAILED 18 /*!< Integrity Init Failed */
75 #define UDX_CFG_REAS_CCIPHR_FAILED 19 /*!< Control Plane Cihper Init Failed */
76 #define UDX_CFG_REAS_UCIPHR_FAILED 20 /*!< User Plane Cipher Init Failed */
78 #define UDX_CFG_REAS_NO_DRBS 21 /*!< No DRBs Present */
79 #define UDX_CFG_REAS_OBD_TIMEOUT 22 /*!< No DRBs Present */
80 #define UDX_CFG_REAS_INVALID_STATE 23 /*!< Invalid state to perform re-establishment */
82 /* UDX Configuration confirmations */
83 #define UDX_CFG_CFM_OK 1 /*!< Confirm status OK */
84 #define UDX_CFG_CFM_NOK 2 /*!< Confirm status NOK */
87 #define UDX_EVC_RESET_FAILED 1 /*!< Reset Failed */
89 #define EVTUDXBNDREQ 0x20 /*!< Bind Request */
90 #define EVTUDXBNDCFM 0x21 /*!< Bind Confirmation */
91 #define EVTUDXUBNDREQ 0x22 /*!< Unbind Request */
92 #define EVTUDXCFGREQ 0x23 /*!< Config Request */
93 #define EVTUDXCFGCFM 0x24 /*!< Config Confirmation */
94 #define EVTUDXUEIDCHGREQ 0x25 /*!< UE ID Change Request */
95 #define EVTUDXUEIDCHGCFM 0x26 /*!< UE ID Change Confirmation */
96 #define EVTUDXSECCFGREQ 0x27 /*!< Security Config Request */
97 #define EVTUDXSECCFGCFM 0x28 /*!< Security Config Confirm */
98 #define EVTUDXREESTREQ 0x29 /*!< Count C Request */
99 #define EVTUDXREESTCFM 0x2A /*!< Count C Confirm */
100 #define EVTUDXCOUNTREQ 0x2B /*!< Count C Request */
101 #define EVTUDXCOUNTCFM 0x2C /*!< Count C Confirm */
102 #define EVTUDXSDUSTAREQ 0x2D /*!< SDU Status Request */
103 #define EVTUDXSDUSTACFM 0x2E /*!< SDU Status Confirm */
104 #define EVTUDXREESTTRIG 0x2F /*!< Reestablishment trigger */
105 #define EVTUDXULSTAREP 0x30 /*!< UL PDCP Status Report */
106 #define EVTUDXDLSTAREP 0x31 /*!< DL PDCP Status Report */
107 #define EVTUDXULROHCFDB 0x32 /*!< ROHC FEEDBACK PKT INFO */
108 #define EVTUDXDLROHCFDB 0x33 /*!< ROHC FEEDBACK PKT INFO */
109 #define EVTUDXDATRESUME 0x34 /*!< Data Resume */
110 #define EVTUDXDATFRWD 0x35 /*!< Data Forwarding */
111 #define EVTUDXDATRESUMECFM 0x36 /*!< Dats Resume Confirm */
112 #define EVTUDXDATFRWDCFM 0x37 /*!< Dats Forwarding Confirm */
113 #define PJ_UDX_EVT_L2MEAS_REQ 0x38 /*!< L2 measurement request */
114 #define PJ_UDX_EVT_L2MEAS_SEND_REQ 0x39 /*!< L2 measurement send request */
115 #define PJ_UDX_EVT_L2MEAS_STOP_REQ 0x40 /*!< L2 measurement stop request */
117 #define UDX_CIPHER_KEY_LEN 16 /*!< Ciphering key length */
118 #define UDX_INTG_KEY_LEN 16 /*!< Integrity key length */
119 #define UDX_MAX_ROHC_PROF_LIST 9 /*!< ROHC profile list */
120 #define UDX_MAX_CFM 10 /*!< Maximum number of confirm */
122 #define UDX_CFG_ADD 0x01 /*!< Configure new PDCP entity
123 in the requested UE */
124 #define UDX_CFG_MODIFY 0x02 /*!< Reconfigure PDCP entity
125 in the requested UE */
126 #define UDX_CFG_DELETE 0x03 /*!< Delete PDCP entity
127 in the requested UE */
128 #define UDX_CFG_REESTABLISH 0x04 /*!< Reestablish PDCP entity
129 in the requested UE */
130 #define UDX_CFG_DELETE_UE 0x05 /*!< Delete UE in PDCP */
133 #define UDX_SEC_INTG_INFO 0x01 /*!< Integrity information */
134 #define UDX_SEC_CIPHER_INFO 0x02 /*!< Ciphering information */
136 #define UDX_SEC_ALG_NULL 0x01 /*!< NULL algorithm */
137 #define UDX_SEC_ALG_SNOW3G 0x02 /*!< Snow 3G algorithm */
138 #define UDX_SEC_ALG_AES 0x03 /*!< AES algorithm */
142 /* Defines which is used in ModCfg to set the bitflag */
143 #define UDX_RECFG_DISRQD 0x01 /*!< Discard Required is present*/
144 #define UDX_RECFG_CFMREQ 0x02 /*!< Confirm Required is present */
146 /* Flags will be used to fill the Hand off information */
147 #define UDX_HO_NOT_PRSNT 0 /*!< Hand of Info is not present */
148 #define UDX_HO_UL 1 /*!< Uplink count present */
149 #define UDX_HO_DL 2 /*!< Downlink count present */
151 /* cpj_h_001.main_2 added support for L2 Measurement */
153 #define UDX_MAX_QCI 10
160 #define EUDX001 (ERRUDX + 1)
161 #define EUDX002 (ERRUDX + 2)
162 #define EUDX003 (ERRUDX + 3)
163 #define EUDX004 (ERRUDX + 4)
164 #define EUDX005 (ERRUDX + 5)
165 #define EUDX006 (ERRUDX + 6)
166 #define EUDX007 (ERRUDX + 7)
167 #define EUDX008 (ERRUDX + 8)
168 #define EUDX009 (ERRUDX + 9)
169 #define EUDX010 (ERRUDX + 10)
170 #define EUDX011 (ERRUDX + 11)
171 #define EUDX012 (ERRUDX + 12)
172 #define EUDX013 (ERRUDX + 13)
173 #define EUDX014 (ERRUDX + 14)
174 #define EUDX015 (ERRUDX + 15)
175 #define EUDX016 (ERRUDX + 16)
176 #define EUDX017 (ERRUDX + 17)
177 #define EUDX018 (ERRUDX + 18)
178 #define EUDX019 (ERRUDX + 19)
179 #define EUDX020 (ERRUDX + 20)
180 #define EUDX021 (ERRUDX + 21)
181 #define EUDX022 (ERRUDX + 22)
182 #define EUDX023 (ERRUDX + 23)
183 #define EUDX024 (ERRUDX + 24)
184 #define EUDX025 (ERRUDX + 25)
185 #define EUDX026 (ERRUDX + 26)
186 #define EUDX027 (ERRUDX + 27)
187 #define EUDX028 (ERRUDX + 28)
188 #define EUDX029 (ERRUDX + 29)
189 #define EUDX030 (ERRUDX + 30)
190 #define EUDX031 (ERRUDX + 31)
191 #define EUDX032 (ERRUDX + 32)
192 #define EUDX033 (ERRUDX + 33)
193 #define EUDX034 (ERRUDX + 34)
194 #define EUDX035 (ERRUDX + 35)
195 #define EUDX036 (ERRUDX + 36)
196 #define EUDX037 (ERRUDX + 37)
197 #define EUDX038 (ERRUDX + 38)
198 #define EUDX039 (ERRUDX + 39)
199 #define EUDX040 (ERRUDX + 40)
200 #define EUDX041 (ERRUDX + 41)
201 #define EUDX042 (ERRUDX + 42)
202 #define EUDX043 (ERRUDX + 43)
203 #define EUDX044 (ERRUDX + 44)
204 #define EUDX045 (ERRUDX + 45)
205 #define EUDX046 (ERRUDX + 46)
206 #define EUDX047 (ERRUDX + 47)
207 #define EUDX048 (ERRUDX + 48)
208 #define EUDX049 (ERRUDX + 49)
209 #define EUDX050 (ERRUDX + 50)
210 #define EUDX051 (ERRUDX + 51)
211 #define EUDX052 (ERRUDX + 52)
212 #define EUDX053 (ERRUDX + 53)
213 #define EUDX054 (ERRUDX + 54)
214 #define EUDX055 (ERRUDX + 55)
215 #define EUDX056 (ERRUDX + 56)
216 #define EUDX057 (ERRUDX + 57)
217 #define EUDX058 (ERRUDX + 58)
218 #define EUDX059 (ERRUDX + 59)
219 #define EUDX060 (ERRUDX + 60)
220 #define EUDX061 (ERRUDX + 61)
221 #define EUDX062 (ERRUDX + 62)
222 #define EUDX063 (ERRUDX + 63)
223 #define EUDX064 (ERRUDX + 64)
224 #define EUDX065 (ERRUDX + 65)
225 #define EUDX066 (ERRUDX + 66)
226 #define EUDX067 (ERRUDX + 67)
227 #define EUDX068 (ERRUDX + 68)
228 #define EUDX069 (ERRUDX + 69)
229 #define EUDX070 (ERRUDX + 70)
230 #define EUDX071 (ERRUDX + 71)
231 #define EUDX072 (ERRUDX + 72)
232 #define EUDX073 (ERRUDX + 73)
233 #define EUDX074 (ERRUDX + 74)
234 #define EUDX075 (ERRUDX + 75)
235 #define EUDX076 (ERRUDX + 76)
236 #define EUDX077 (ERRUDX + 77)
237 #define EUDX078 (ERRUDX + 78)
238 #define EUDX079 (ERRUDX + 79)
239 #define EUDX080 (ERRUDX + 80)
240 #define EUDX081 (ERRUDX + 81)
241 #define EUDX082 (ERRUDX + 82)
242 #define EUDX083 (ERRUDX + 83)
243 #define EUDX084 (ERRUDX + 84)
244 #define EUDX085 (ERRUDX + 85)
245 #define EUDX086 (ERRUDX + 86)
246 #define EUDX087 (ERRUDX + 87)
247 #define EUDX088 (ERRUDX + 88)
248 #define EUDX089 (ERRUDX + 89)
249 #define EUDX090 (ERRUDX + 90)
250 #define EUDX091 (ERRUDX + 91)
251 #define EUDX092 (ERRUDX + 92)
252 #define EUDX093 (ERRUDX + 93)
253 #define EUDX094 (ERRUDX + 94)
254 #define EUDX095 (ERRUDX + 95)
255 #define EUDX096 (ERRUDX + 96)
256 #define EUDX097 (ERRUDX + 97)
257 #define EUDX098 (ERRUDX + 98)
258 #define EUDX099 (ERRUDX + 99)
259 #define EUDX100 (ERRUDX + 100)
260 #define EUDX101 (ERRUDX + 101)
261 #define EUDX102 (ERRUDX + 102)
262 #define EUDX103 (ERRUDX + 103)
263 #define EUDX104 (ERRUDX + 104)
264 #define EUDX105 (ERRUDX + 105)
265 #define EUDX106 (ERRUDX + 106)
266 #define EUDX107 (ERRUDX + 107)
267 #define EUDX108 (ERRUDX + 108)
268 #define EUDX109 (ERRUDX + 109)
269 #define EUDX110 (ERRUDX + 110)
270 #define EUDX111 (ERRUDX + 111)
271 #define EUDX112 (ERRUDX + 112)
272 #define EUDX113 (ERRUDX + 113)
273 #define EUDX114 (ERRUDX + 114)
274 #define EUDX115 (ERRUDX + 115)
275 #define EUDX116 (ERRUDX + 116)
276 #define EUDX117 (ERRUDX + 117)
277 #define EUDX118 (ERRUDX + 118)
278 #define EUDX119 (ERRUDX + 119)
279 #define EUDX120 (ERRUDX + 120)
280 #define EUDX121 (ERRUDX + 121)
281 #define EUDX122 (ERRUDX + 122)
286 #endif /* __cplusplus */
287 #endif /* __UDX_H__ */
289 /********************************************************************30**
292 **********************************************************************/