ab8e9cc482a701bb2df5ca92aed7647cb2d673ee
[o-du/l2.git] / src / 5gnrsch / rg_sch_inf.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      Name:    Scheduler interface - RG_SCH_INF
21
22      Type:    C header file
23
24      Desc:    Constants needed for interface
25
26      File:    rg_sch_inf.h
27
28 *********************************************************************21*/
29
30 #ifndef __GKSCH_H__ 
31 #define __GKSCH_H__
32
33 /* Operation type for Harq Rls Req */
34
35 #define RGINF_RLS_HQ_NO_ACTION 0x00
36 #define RGINF_RLS_HQ_SAVE_TB   0x01
37 #define RGINF_RLS_HQ_DEL_TB    0x02
38
39 /*5g_NR RGU_MAX_LC has been reduced to 10 to 4*/
40 #define RGINF_MAX_NUM_DED_LC         4
41 #define RGINF_MAX_TB_PER_UE          2
42 #define RGINF_MAX_NUM_UE_PER_TTI     1
43 #define RGINF_MAX_LCG_PER_UE   4
44 /* RRM_SP1_START */
45 #define RGINF_MAX_GBR_QCI_REPORTS  4
46 /* RRM_SP1_END */
47 #define RGINF_BCH_INFO   (1<<0)
48 #define RGINF_BCCH_INFO  (1<<1)
49 #define RGINF_PCCH_INFO  (1<<2) 
50 #ifdef EMTC_ENABLE
51 #define RGINF_EMTC_BCCH_INFO  (1<<3)
52 #define RGINF_EMTC_PCCH_INFO  (1<<4)
53 #endif
54 /* Event corresponding to each primitive at this interface */
55 /* SCH interface events values startes from 1 and max up to 49 because 50
56    onwards is used between MAC-MAC interface*/
57 #define EVTINFCELLREGREQ          1
58 #define EVTINFSFALLOCREQ          2
59 #define EVTINFRLSHQREQ            3
60 #define EVTINFRLSRNTIREQ          4
61 #define EVTINFDEDBOUPDTREQ        5
62 #define EVTINFCMNBOUPDTREQ        6
63 #define EVTINFSFRECPIND           7
64 /* Added support for SPS*/
65 #ifdef LTEMAC_SPS
66 #define EVTINFSPSLCREG               8
67 #define EVTINFSPSLCDEREG             9
68 #define EVTINFSPSRELIND              10
69 #define EVTINFSPSRESET               18
70 #endif /* LTEMAC_SPS */
71
72 #ifdef LTE_L2_MEAS
73 #define EVTINFL2MEASREQ              11
74 #define EVTINFL2MEASCFM              12
75 /*Added for radisys oam*/
76 #define EVTINFL2MEASSENDREQ          14
77 #define EVTINFL2MEASSTOPREQ          15
78 #define EVTINFL2MEASSTOPCFM          16
79 #endif
80 /*Fix: Inform UE delete to scheduler*/
81 #define EVTINFUEDELIND               13
82
83 #define EVTINFLCGREG                 17
84
85 #ifdef LTE_ADV
86 #define EVTINFHQENTRESET             19
87 #endif
88
89 #define RGSCHINF_FREE_MSG(_buf)\
90 {\
91    if (NULLP != (_buf)) \
92    { \
93       ODU_PUT_MSG_BUF((_buf)); \
94       _buf = NULLP; \
95    } \
96 }
97 #endif /* __GKSCH_H__ */
98
99 /********************************************************************30**
100
101          End of file
102 **********************************************************************/