Committing in PDCP code
[o-du/l2.git] / src / cm / pju.h
1 /*******************************************************************************
2 ################################################################################
3 #   Copyright (c) [2017-2019] [Radisys]                                        #
4 #                                                                              #
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                                    #
8 #                                                                              #
9 #       http://www.apache.org/licenses/LICENSE-2.0                             #
10 #                                                                              #
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 *******************************************************************************/
18
19 /********************************************************************20**
20   
21         Name:    LTE PDCP Interface  
22     
23         Type:    C include file
24   
25         Desc:    This file contains the defines required by PDCP user.
26  
27         File:    pju.h
28   
29 *********************************************************************21*/
30 \f
31 #ifndef __PJU_H__
32 #define __PJU_H__
33
34 #ifdef __cplusplus
35 EXTERN "C" {
36 #endif  /*for extern "C"*/
37
38 /**
39  * @file 
40  * @brief Macro for PJU Interface 
41  */
42
43 \f
44 #define PJU_SEL_LC         0
45 /* cause for status Indication */   
46 #define PJU_INTVER_FAILED      1      /*!< Integrity Verification Failed */
47 #define PJU_DCIP_FAILED        2      /*!< Deciphering Failed */
48 #define PJU_DCOMP_FAILED       3      /*!< Decompression Failed */
49 #define PJU_COMP_FAILED        4      /*!< Compression Failed */
50 #define PJU_INTPROT_FAILED     5      /*!< Integrity Protection Failed */
51 #define PJU_CIPHER_FAILED      6      /*!< Ciphering Failed */
52 #define PJU_MAX_SDU_SIZ_EXCEED 7      /*!< Maximum SDU Size Exceeded */
53
54 /* event values 0x00 - 0x40 is used for CPJ interface */
55
56 #define EVTPJUBNDREQ      0x40    /*!< Bind request */
57 #define EVTPJUBNDCFM      0x41    /*!< Bind confirm */
58 #define EVTPJUUBNDREQ     0x42    /*!< Unbind request */
59 #define EVTPJUDATREQ      0x43    /*!< Data reqest */
60 #define EVTPJUDATIND      0x44    /*!< PJU data indication */
61 #define EVTPJUDATCFM      0x45    /*!< Data request confirm */ 
62 #define EVTPJUSTAIND      0x46    /*!< PJU status indication */
63 #define EVTPJUDATFWDREQ   0x47    /*!< PJU status indication */
64 #define EVTPJUDATFWDIND   0x48    /*!< PJU status indication */
65 #ifdef TENB_AS_SECURITY
66 #define EVTPJUTTIIND      0x49    /*!< TTI Indication from CL just in case
67                                     PDCP wants to do some periodic activity*/
68 #endif
69 #define EVTFPPJUDATIND    0x50    /*!< PJU data indication for BC */
70 #define EVTPCAPIPDATIND    0x51    /*!< PJU data indication for PCAP Data Indication */
71
72 #define PJU_DAT_CFM_SUCCESS 0     /*!< Data confirm status */
73 #define PJU_RLC_TRANS_FAIL  1     /*!< RLC transaction failed */
74 #define PJU_DISCARD_TMR_EXP 2     /*!< Discard timer expiry */
75
76 /* MAX values */
77 #define PJU_MAX_SDU_CFM    1024     /*!< Maximum SDUs that can be 
78                                        confirmed in a DatCfm */
79
80 /* Error Codes */
81 #define EPJUXXX                     0
82 #define ERRPJU                      0
83
84 #define EPJU001         (ERRPJU + 1)
85 #define EPJU002         (ERRPJU + 2)
86 #define EPJU003         (ERRPJU + 3)
87 #define EPJU004         (ERRPJU + 4)
88 #define EPJU005         (ERRPJU + 5)
89 #define EPJU006         (ERRPJU + 6)
90 #define EPJU007         (ERRPJU + 7)
91 #define EPJU008         (ERRPJU + 8)
92 #define EPJU009         (ERRPJU + 9)
93 #define EPJU010         (ERRPJU + 10)
94 #define EPJU011         (ERRPJU + 11)
95 #define EPJU012         (ERRPJU + 12)
96 #define EPJU013         (ERRPJU + 13)
97 #define EPJU014         (ERRPJU + 14)
98 #define EPJU015         (ERRPJU + 15)
99 #define EPJU016         (ERRPJU + 16)
100 #define EPJU017         (ERRPJU + 17)
101 #define EPJU018         (ERRPJU + 18)
102 #define EPJU019         (ERRPJU + 19)
103 #define EPJU020         (ERRPJU + 20)
104 #define EPJU021         (ERRPJU + 21)
105 #define EPJU022         (ERRPJU + 22)
106 #define EPJU023         (ERRPJU + 23)
107 #define EPJU024         (ERRPJU + 24)
108 #define EPJU025         (ERRPJU + 25)
109 #define EPJU026         (ERRPJU + 26)
110 #define EPJU027         (ERRPJU + 27)
111 #define EPJU028         (ERRPJU + 28)
112 #define EPJU029         (ERRPJU + 29)
113 #define EPJU030         (ERRPJU + 30)
114 #define EPJU031         (ERRPJU + 31)
115 #define EPJU032         (ERRPJU + 32)
116 #define EPJU033         (ERRPJU + 33)
117 #define EPJU034         (ERRPJU + 34)
118 #define EPJU035         (ERRPJU + 35)
119 #define EPJU036         (ERRPJU + 36)
120 #define EPJU037         (ERRPJU + 37)
121 #define EPJU038         (ERRPJU + 38)
122 #define EPJU039         (ERRPJU + 39)
123 #define EPJU040         (ERRPJU + 40)
124 #define EPJU041         (ERRPJU + 41)
125 #define EPJU042         (ERRPJU + 42)
126 #define EPJU043         (ERRPJU + 43)
127 #define EPJU044         (ERRPJU + 44)
128 #define EPJU045         (ERRPJU + 45)
129 #define EPJU046         (ERRPJU + 46)
130 #define EPJU047         (ERRPJU + 47)
131 #define EPJU048         (ERRPJU + 48)
132 #define EPJU049         (ERRPJU + 49)
133 #define EPJU050         (ERRPJU + 50)
134 #define EPJU051         (ERRPJU + 51)
135 #define EPJU052         (ERRPJU + 52)
136 #define EPJU053         (ERRPJU + 53)
137 #define EPJU054         (ERRPJU + 54)
138 #define EPJU055         (ERRPJU + 55)
139 #define EPJU056         (ERRPJU + 56)
140 #define EPJU057         (ERRPJU + 57)
141 #define EPJU058         (ERRPJU + 58)
142 #define EPJU059         (ERRPJU + 59)
143 #define EPJU060         (ERRPJU + 60)
144 #define EPJU061         (ERRPJU + 61)
145 #define EPJU062         (ERRPJU + 62)
146 #define EPJU063         (ERRPJU + 63)
147 #define EPJU064         (ERRPJU + 64)
148 #define EPJU065         (ERRPJU + 65)
149 #define EPJU066         (ERRPJU + 66)
150 #define EPJU067         (ERRPJU + 67)
151 #define EPJU068         (ERRPJU + 68)
152 #define EPJU069         (ERRPJU + 69)
153 #define EPJU070         (ERRPJU + 70)
154 #define EPJU071         (ERRPJU + 71)
155 #define EPJU072         (ERRPJU + 72)
156 #define EPJU073         (ERRPJU + 73)
157 #define EPJU074         (ERRPJU + 74)
158 #define EPJU075         (ERRPJU + 75)
159 #define EPJU076         (ERRPJU + 76)
160 #define EPJU077         (ERRPJU + 77)
161 #define EPJU078         (ERRPJU + 78)
162 #define EPJU079         (ERRPJU + 79)
163 #define EPJU080         (ERRPJU + 80)
164 #define EPJU081         (ERRPJU + 81)
165 #define EPJU082         (ERRPJU + 82)
166 #define EPJU083         (ERRPJU + 83)
167 #define EPJU084         (ERRPJU + 84)
168 #define EPJU085         (ERRPJU + 85)
169 #define EPJU086         (ERRPJU + 86)
170 #define EPJU087         (ERRPJU + 87)
171 #define EPJU088         (ERRPJU + 88)
172 #define EPJU089         (ERRPJU + 89)
173 #define EPJU090         (ERRPJU + 90)
174 #define EPJU091         (ERRPJU + 91)
175
176 #ifdef __cplusplus
177 }
178 #endif /* __cplusplus */
179 #endif /* __PJU_H__ */
180
181 \f
182 /********************************************************************30**
183   
184          End of file
185 **********************************************************************/