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 Name: Upper Layer Interface - RLC
24 Desc: Structures, variables and typedefs required by
29 *********************************************************************21*/
40 @brief Defines for RGU interface.
44 /***********************************************************************
46 ***********************************************************************/
48 #define RGU_INVALID_TBID 64 /*!< Invalid TBID that is set by RLC for DL TPT
49 Calculations in Dat Req to MAC. */
51 /* rgu_h_001.main_3 Changing from 10 to 5 for optimization */
52 #define RGU_MAX_PDU 16 /*!< Maximum number of PDUs that can be received in a datreq. */
53 #define RGU_RESID_SIZE 6 /*!< Size of Contention resolution ID in bytes.*/
54 /* rgu_h_001.main_4 - Adding RGU_MAX_TB*/
55 #define RGU_MAX_TB 2 /*!< Maximum of 2 TB's per DDat Req */
57 /* rgu_h_001.main_3 Changing from 20 to 10 for optimization */
58 #ifdef XEON_SPECIFIC_CHANGES /* This change is done to avoid Heap allocation with 16UE/TTI config */
59 #define RGU_MAX_LC 8 /*!< Maximum Number of dedicated Logical Channels.*/
61 #define RGU_MAX_LC 4 /*!< Maximum Number of dedicated Logical Channels.*/
64 /* Event corresponding to each primitive at this interface */
65 #define EVTRGUBNDREQ 1 /*!< Bind Request */
66 #define EVTRGUUBNDREQ 2 /*!< Un-Bind Request */
67 #define EVTRGUBNDCFM 3 /*!< Bind Confirm */
68 #define EVTRGUCDATREQ 4 /*!< Common Channel Data Request */
69 #define EVTRGUCDATIND 5 /*!< Common Channel Data Indication */
70 #define EVTRGUDDATREQ 6 /*!< Dedicated Channel Data Request */
71 #define EVTRGUDDATIND 7 /*!< Dedicated Channel Data Indication */
72 #define EVTRGUCSTARSP 8 /*!< Common Channel status response */
73 #define EVTRGUCSTAIND 9 /*!< Common Channel status Indication */
74 #define EVTRGUDSTARSP 10 /*!< Dedicated Channel status response */
75 #define EVTRGUDSTAIND 11 /*!< Dedicated Channel status Indication */
76 /*rgu_h_001.main_5 - ADD - L2M Support */
78 #define EVTRGUHQSTAIND 12 /*!< HARQ status Indication */
79 #define EVTRGUL2MULTHRPMEASREQ 13 /*!< L2M LCID On/Off Status Response */
80 #define RGU_L2M_UL_BURST_START 0 /*!< Data Burst Start in Uplink DTCH */
81 #define RGU_L2M_UL_BURST_END 1 /*!< Data Burst End in Uplink DTCH */
83 #define EVTRGUFLOWCNTRLIND 14
84 /* If you change the value of below macro then you have to change value of
85 * RG_MAX_NUM_UE_PER_TTI in file rg_env.h */
86 #ifdef EIGHT_UE_PER_TTI_CHANGES
87 #define RGU_MAX_NUM_UE_PER_TTI 16 /*!< Max UEs Per Tti */
89 #define RGU_MAX_NUM_UE_PER_TTI 8 /*!< Max UEs Per Tti */
92 /* pack unpack error code */
96 #define ERGU001 (ERRRGU + 1) /* rgu.c: 155 */
97 #define ERGU002 (ERRRGU + 2) /* rgu.c: 163 */
98 #define ERGU003 (ERRRGU + 3) /* rgu.c: 172 */
99 #define ERGU004 (ERRRGU + 4) /* rgu.c: 218 */
100 #define ERGU005 (ERRRGU + 5) /* rgu.c: 227 */
101 #define ERGU006 (ERRRGU + 6) /* rgu.c: 271 */
102 #define ERGU007 (ERRRGU + 7) /* rgu.c: 279 */
103 #define ERGU008 (ERRRGU + 8) /* rgu.c: 288 */
104 #define ERGU009 (ERRRGU + 9) /* rgu.c: 334 */
105 #define ERGU010 (ERRRGU + 10) /* rgu.c: 343 */
106 #define ERGU011 (ERRRGU + 11) /* rgu.c: 388 */
107 #define ERGU012 (ERRRGU + 12) /* rgu.c: 396 */
108 #define ERGU013 (ERRRGU + 13) /* rgu.c: 405 */
109 #define ERGU014 (ERRRGU + 14) /* rgu.c: 452 */
110 #define ERGU015 (ERRRGU + 15) /* rgu.c: 461 */
111 #define ERGU016 (ERRRGU + 16) /* rgu.c: 506 */
112 #define ERGU017 (ERRRGU + 17) /* rgu.c: 515 */
113 #define ERGU018 (ERRRGU + 18) /* rgu.c: 525 */
114 #define ERGU019 (ERRRGU + 19) /* rgu.c: 535 */
115 #define ERGU020 (ERRRGU + 20) /* rgu.c: 582 */
116 #define ERGU021 (ERRRGU + 21) /* rgu.c: 596 */
117 #define ERGU022 (ERRRGU + 22) /* rgu.c: 642 */
118 /*rgu_h_001.main_5 - ADD - L2M Support */
119 #define ERGU023 (ERRRGU + 23) /* rgu.c: 656 */
120 #define ERGU024 (ERRRGU + 24) /* rgu.c: 666 */
121 #define ERGU025 (ERRRGU + 25) /* rgu.c: 676 */
122 #define ERGU026 (ERRRGU + 26) /* rgu.c: 723 */
123 #define ERGU027 (ERRRGU + 27) /* rgu.c: 742 */
124 #define ERGU028 (ERRRGU + 28) /* rgu.c: 788 */
125 #define ERGU029 (ERRRGU + 29) /* rgu.c: 797 */
126 #define ERGU030 (ERRRGU + 30) /* rgu.c: 807 */
127 #define ERGU031 (ERRRGU + 31) /* rgu.c: 817 */
128 #define ERGU032 (ERRRGU + 32) /* rgu.c: 864 */
129 #define ERGU033 (ERRRGU + 33) /* rgu.c: 873 */
130 #define ERGU034 (ERRRGU + 34) /* rgu.c: 882 */
131 #define ERGU035 (ERRRGU + 35) /* rgu.c: 928 */
132 #define ERGU036 (ERRRGU + 36) /* rgu.c: 937 */
133 #define ERGU037 (ERRRGU + 37) /* rgu.c: 947 */
134 #define ERGU038 (ERRRGU + 38) /* rgu.c: 957 */
135 #define ERGU039 (ERRRGU + 39) /* rgu.c:1004 */
136 #define ERGU040 (ERRRGU + 40) /* rgu.c:1013 */
137 #define ERGU041 (ERRRGU + 41) /* rgu.c:1022 */
138 #define ERGU042 (ERRRGU + 42) /* rgu.c:1068 */
139 #define ERGU043 (ERRRGU + 43) /* rgu.c:1077 */
140 #define ERGU044 (ERRRGU + 44) /* rgu.c:1087 */
141 #define ERGU045 (ERRRGU + 45) /* rgu.c:1097 */
142 #define ERGU046 (ERRRGU + 46) /* rgu.c:1144 */
143 #define ERGU047 (ERRRGU + 47) /* rgu.c:1153 */
144 #define ERGU048 (ERRRGU + 48) /* rgu.c:1162 */
145 #define ERGU049 (ERRRGU + 49) /* rgu.c:1372 */
146 #define ERGU050 (ERRRGU + 50) /* rgu.c:1381 */
147 #define ERGU051 (ERRRGU + 51) /* rgu.c:1391 */
148 #define ERGU052 (ERRRGU + 52) /* rgu.c:1401 */
149 #define ERGU053 (ERRRGU + 53) /* rgu.c:1449 */
150 #define ERGU054 (ERRRGU + 54) /* rgu.c:1458 */
151 #define ERGU055 (ERRRGU + 55) /* rgu.c:1467 */
152 #define ERGU056 (ERRRGU + 56) /* rgu.c:1517 */
153 #define ERGU057 (ERRRGU + 57) /* rgu.c:1526 */
154 #define ERGU058 (ERRRGU + 58) /* rgu.c:1536 */
155 #define ERGU059 (ERRRGU + 59) /* rgu.c:1546 */
156 #define ERGU060 (ERRRGU + 60) /* rgu.c:1593 */
157 #define ERGU061 (ERRRGU + 61) /* rgu.c:1602 */
158 #define ERGU062 (ERRRGU + 62) /* rgu.c:1611 */
159 #define ERGU063 (ERRRGU + 63) /* rgu.c:1659 */
160 #define ERGU064 (ERRRGU + 64) /* rgu.c:1668 */
161 #define ERGU065 (ERRRGU + 65) /* rgu.c:1678 */
162 #define ERGU066 (ERRRGU + 66) /* rgu.c:1688 */
163 #define ERGU067 (ERRRGU + 67) /* rgu.c:1737 */
164 #define ERGU068 (ERRRGU + 68) /* rgu.c:1746 */
165 #define ERGU069 (ERRRGU + 69) /* rgu.c:1755 */
166 #define ERGU070 (ERRRGU + 70) /* rgu.c:1878 */
167 #define ERGU071 (ERRRGU + 71) /* rgu.c:1901 */
168 #define ERGU072 (ERRRGU + 72) /* rgu.c:1913 */
169 #define ERGU073 (ERRRGU + 73) /* rgu.c:2033 */
170 #define ERGU074 (ERRRGU + 74) /* rgu.c:2043 */
171 #define ERGU075 (ERRRGU + 75) /* rgu.c:2059 */
172 #define ERGU076 (ERRRGU + 76) /* rgu.c:2114 */
173 #define ERGU077 (ERRRGU + 77) /* rgu.c:2123 */
174 #define ERGU078 (ERRRGU + 78) /* rgu.c:2133 */
175 #define ERGU079 (ERRRGU + 79) /* rgu.c:2143 */
176 #define ERGU080 (ERRRGU + 80) /* rgu.c:2192 */
177 #define ERGU081 (ERRRGU + 81) /* rgu.c:2201 */
178 #define ERGU082 (ERRRGU + 82) /* rgu.c:2210 */
179 #define ERGU083 (ERRRGU + 83) /* rgu.c:2708 */
185 #endif /* __RGUH__ */
187 /********************************************************************30**
190 **********************************************************************/