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: CKW RRC Control Interface
25 Desc: This file Contains the Data structures for and prototypes
30 *********************************************************************21*/
37 #endif /*for extern "C"*/
40 @brief CKW Interface File (ckw.h)
43 /* CKW Interface Hash Defines */
45 /* CKW Interface defines */
46 /* TODO: To verify if CKW_MAX_ENT_CFG represents LC or LCGs */
47 #define CKW_MAX_ENT_CFG 32 /*!< Maximum number of entities to configure */
48 /* ckw_h_001.main_3 added support for L2 Measurement */
50 #define CKW_MAX_QCI 10
52 /* CKW Interface configuration type */
53 #define CKW_CFG_ADD 1 /*!< Add RLC Entity */
54 #define CKW_CFG_MODIFY 2 /*!< Modify RLC Entity */
55 #define CKW_CFG_DELETE 3 /*!< Delete RLC entity */
56 #define CKW_CFG_REESTABLISH 4 /*!< Re-establish RLC entity */
57 #define CKW_CFG_DELETE_UE 5 /*!< Release RLC entities per UE */
58 #define CKW_CFG_DELETE_CELL 6 /*!< Release RLC entities per Cell */
60 /* CKW RLC entity direction configuration */
61 #define CKW_CFG_DIR_UL 1 /*!< Unlink direction */
62 #define CKW_CFG_DIR_DL 2 /*!< Downlink direction */
63 #define CKW_CFG_DIR_BOTH 3 /*!< Both Downlink and Unlink */
65 /* CKW Configuration confirmations */
66 #define CKW_CFG_CFM_OK 1 /*!< Configuration confirmation success */
67 #define CKW_CFG_CFM_NOK 2 /*!< Configuration confirmation failed */
69 /* CKW Configuration Failure Reasons */
70 #define CKW_CFG_REAS_NONE 0 /*!< No Failure */
71 #define CKW_CFG_REAS_RB_CREAT_FAIL 1 /*!< RB CB creation Failure */
72 #define CKW_CFG_REAS_UE_CREAT_FAIL 2 /*!< UE CB creation Failure */
73 #define CKW_CFG_REAS_CELL_CREAT_FAIL 3 /*!< CELL CB creation Failure */
74 #define CKW_CFG_REAS_RB_PRSNT 4 /*!< RB CB already present */
75 #define CKW_CFG_REAS_LCHTYPE_MIS 5 /*!< Logical channel type mismatch
77 #define CKW_CFG_REAS_RB_UNKWN 6 /*!< RB Cb unknown */
78 #define CKW_CFG_REAS_UE_UNKWN 7 /*!< UE Cb unknown */
79 #define CKW_CFG_REAS_CELL_UNKWN 8 /*!< Cell Cb unknown */
80 #define CKW_CFG_REAS_RB_DEL_FAIL 9 /*!< RB Cb Deletion Failure */
81 #define CKW_CFG_REAS_UE_DEL_FAIL 10 /*!< UE Cb Deletion Failure */
82 #define CKW_CFG_REAS_RB_REEST_FAIL 11 /*!< RB Cb Re establish Failure */
83 #define CKW_CFG_REAS_RB_MODE_MIS 12 /*!< RB Cb Mode mismatch */
84 #define CKW_CFG_REAS_REEST_FAIL 13 /*!< RB Cb Re-establishment Failed */
85 #define CKW_CFG_REAS_RECFG_FAIL 14 /*!< RB Cb Re-configuration Failed */
86 #define CKW_CFG_REAS_INVALID_CFG 15 /*!< Invalid Configuration Type */
87 #define CKW_CFG_REAS_SAME_UEID 16 /*!< UE Ids match in ChngUeId Request */
88 #define CKW_CFG_REAS_CELL_DEL_FAIL 17 /*!< Cell Cb Deletion Failure */
89 #define CKW_CFG_REAS_INVALID_LCHID 18 /*!< Invalid LChId */
90 #define CKW_CFG_REAS_INVALID_DIR 19 /*!< Invalid Direction */
91 #define CKW_CFG_REAS_UE_EXISTS 20 /*!< UE ID already exists */
92 #define CKW_CFG_REAS_INVALID_SNLEN 21 /*!< Invalid SN Length */
93 #define CKW_CFG_REAS_SNLEN_MIS 22 /*!< SN Length mismatch */
94 #define CKW_CFG_REAS_INVALID_RGUSAP 23 /*!< Invalid RGU SAP ID */
96 /***********************************************************************
97 Defines for CKW Interface Events
98 ***********************************************************************/
99 #define CKW_EVT_BND_REQ 0x01 /*!< Bind Request */
100 #define CKW_EVT_BND_CFM 0x02 /*!< Bind Confirm */
101 #define CKW_EVT_UBND_REQ 0x03 /*!< Unbind Request */
102 #define CKW_EVT_CFG_CFM 0x05 /*!< Config Confirm */
103 #define CKW_EVT_UEIDCHG_REQ 0x06 /*!< UE Id Change Request */
104 #define CKW_EVT_UEIDCHG_CFM 0x07 /*!< UE Id Change Confirm */
110 #define ECKW001 (ERRCKW + 1) /* ckw.c: 162 */
111 #define ECKW002 (ERRCKW + 2) /* ckw.c: 167 */
112 #define ECKW003 (ERRCKW + 3) /* ckw.c: 168 */
113 #define ECKW004 (ERRCKW + 4) /* ckw.c: 213 */
114 #define ECKW005 (ERRCKW + 5) /* ckw.c: 218 */
115 #define ECKW006 (ERRCKW + 6) /* ckw.c: 219 */
116 #define ECKW007 (ERRCKW + 7) /* ckw.c: 264 */
117 #define ECKW008 (ERRCKW + 8) /* ckw.c: 270 */
118 #define ECKW009 (ERRCKW + 9) /* ckw.c: 271 */
119 #define ECKW010 (ERRCKW + 10) /* ckw.c: 543 */
120 #define ECKW011 (ERRCKW + 11) /* ckw.c: 588 */
121 #define ECKW012 (ERRCKW + 12) /* ckw.c: 606 */
122 #define ECKW013 (ERRCKW + 13) /* ckw.c: 622 */
123 #define ECKW014 (ERRCKW + 14) /* ckw.c: 702 */
124 #define ECKW015 (ERRCKW + 15) /* ckw.c: 747 */
125 #define ECKW016 (ERRCKW + 16) /* ckw.c: 765 */
126 #define ECKW017 (ERRCKW + 17) /* ckw.c: 781 */
127 #define ECKW018 (ERRCKW + 18) /* ckw.c: 863 */
128 #define ECKW019 (ERRCKW + 19) /* ckw.c: 884 */
129 #define ECKW020 (ERRCKW + 20) /* ckw.c: 885 */
130 #define ECKW021 (ERRCKW + 21) /* ckw.c: 935 */
131 #define ECKW022 (ERRCKW + 22) /* ckw.c: 950 */
132 #define ECKW023 (ERRCKW + 23) /* ckw.c: 951 */
133 #define ECKW024 (ERRCKW + 24) /* ckw.c: 995 */
134 #define ECKW025 (ERRCKW + 25) /* ckw.c: 996 */
135 #define ECKW026 (ERRCKW + 26) /* ckw.c:1034 */
136 #define ECKW027 (ERRCKW + 27) /* ckw.c:1035 */
137 #define ECKW028 (ERRCKW + 28) /* ckw.c:1072 */
138 #define ECKW029 (ERRCKW + 29) /* ckw.c:1073 */
139 #define ECKW030 (ERRCKW + 30) /* ckw.c:1299 */
140 #define ECKW031 (ERRCKW + 31) /* ckw.c:1417 */
141 #define ECKW032 (ERRCKW + 32) /* ckw.c:1424 */
142 #define ECKW033 (ERRCKW + 33) /* ckw.c:1472 */
143 #define ECKW034 (ERRCKW + 34) /* ckw.c:1493 */
144 #define ECKW035 (ERRCKW + 35) /* ckw.c:1548 */
145 #define ECKW036 (ERRCKW + 36) /* ckw.c:1570 */
146 #define ECKW037 (ERRCKW + 37) /* ckw.c:1653 */
147 #define ECKW038 (ERRCKW + 38) /* ckw.c:1663 */
148 #define ECKW039 (ERRCKW + 39) /* ckw.c:1678 */
149 #define ECKW040 (ERRCKW + 40) /* ckw.c:1691 */
150 #define ECKW041 (ERRCKW + 41) /* ckw.c:1706 */
151 #define ECKW042 (ERRCKW + 42) /* ckw.c:1755 */
152 #define ECKW043 (ERRCKW + 43) /* ckw.c:1765 */
153 #define ECKW044 (ERRCKW + 44) /* ckw.c:1780 */
157 #endif /* __cplusplus */
158 #endif /* __CKW_H__ */
162 /********************************************************************30**
164 **********************************************************************/