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 /************************************************************************
25 Desc: C source code file for SPS related functions which are
30 **********************************************************************/
31 /* header include files -- defines (.h) */
32 #include "common_def.h"
38 #include "rg_sch_inf.h"
40 #include "rg_sch_err.h"
41 #include "rg_sch_cmn.h"
43 /* header/extern include files (.x) */
44 #include "tfu.x" /* TFU types */
45 #include "lrg.x" /* layer management typedefs for MAC */
46 #include "rgr.x" /* layer management typedefs for MAC */
47 #include "rgm.x" /* layer management typedefs for MAC */
48 #include "rg_sch_inf.x" /* typedefs for Scheduler */
49 #include "rg_sch.x" /* typedefs for Scheduler */
50 #include "rg_sch_cmn.x"
53 *@brief Initializes the SPS related global data structures
56 * Function : rgSCHCmnSpsInit
67 Void rgSCHCmnSpsInit ()
74 *@brief Initializes UE with SPS info
77 * Function : rgSCHCmnSpsUeCfg
92 S16 rgSCHCmnSpsUeCfg (cell, ue, ueCfg, err)
104 *@brief Re-Initializes UE with SPS info
107 * Function : rgSCHCmnSpsUeReCfg
114 S16 rgSCHCmnSpsUeRecfg
122 S16 rgSCHCmnSpsUeRecfg (cell, ue, ueCfg, err)
134 *@brief Clears the UE of SPS info
137 * Function : rgSCHCmnSpsUeDel
144 Void rgSCHCmnSpsUeDel
150 Void rgSCHCmnSpsUeDel (cell, ue)
160 *@brief Validates cell config for SPS
163 * Function : rgSCHCmnSpsCellCfg
170 S16 rgSCHCmnSpsCellCfg
177 S16 rgSCHCmnSpsCellCfg(cell, cellCfg, err)
188 *@brief Deletes cell config for SPS
191 * Function : rgSCHCmnSpsCellDel
198 Void rgSCHCmnSpsCellDel
203 Void rgSCHCmnSpsCellDel (cell)
212 *@brief Configures DL LC for SPS
215 * Function :rgSCHCmnSpsDlLcCfg
222 S16 rgSCHCmnSpsDlLcCfg
231 S16 rgSCHCmnSpsDlLcCfg(cell, ue, dlLc, lcCfg, err)
243 Void rgSchCmnDlSfHqDel
252 S16 rgSCHCmnSpsDlLcRecfg ARGS((
256 RgrLchRecfg *lcRecfg,
264 Void rgSCHCmnSpsUlLcgDel ARGS((
273 Void rgSCHCmnSpsDlLcDel ARGS((
282 S16 rgSCHCmnSpsUlTti ARGS((
284 RgSchCmnUlRbAllocInfo *allocInfo
291 Void rgSCHCmnSpsDlDedBoUpd ARGS((
301 Void rgSCHCmnSpsDlProcAddToRetx ARGS((
310 Void rgSCHCmnSpsDlCqiIndHndlr ARGS((
313 CmLteTimingInfo timingInfo
320 S16 rgSCHCmnSpsUlCqiInd ARGS((
329 S16 rgSCHCmnSpsBsrRpt ARGS((
339 Void rgSCHCmnSpsPhrInd ARGS((
348 Void rgSCHCmnSpsDlRelPdcchFbk ARGS((
358 Void rgSCHCmnSpsDlProcAck ARGS((
367 Void rgSCHCmnSpsDlUeReset ARGS((
376 Void rgSCHCmnSpsUlUeReset ARGS((
385 Void rgSCHCmnSpsUlProcRelInd ARGS((
395 Void rgSCHCmnSpsUlProcActInd ARGS((
405 S16 rgSCHCmnSpsUlProcCrcInd ARGS((
408 CmLteTimingInfo crcTime
415 S16 rgSCHCmnSpsUlProcDtxInd ARGS((
418 CmLteTimingInfo dtxTime
425 Void rgSCHCmnSpsDlUpdDlSfAllocWithSps ARGS((
427 CmLteTimingInfo schdTime,
439 /**********************************************************************
442 **********************************************************************/