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 *******************************************************************************/
18 /* This file defines API towards RLC interface */
19 #include "common_def.h"
20 #include "rgu.h" /* RGU interface includes*/
21 #include "lkw.h" /* LKW defines */
22 #include "ckw.h" /* CKW defines */
23 #include "kwu.h" /* KWU defines */
24 #include "kw_env.h" /* RLC environment options */
25 #include "kw.h" /* RLC defines */
28 /* header/extern include files (.x) */
30 #include "lkw.x" /* LKW */
31 #include "ckw.x" /* CKW */
32 #include "kwu.x" /* KWU */
36 #include "du_app_rlc_inf.h"
39 RlcUlDuUeCreateRsp rlcUlUeCreateRspOpts[] =
41 packRlcUlDuUeCreateRsp, /* 0 - loosely coupled */
42 DuProcRlcUlUeCreateRsp, /* 1 - tightly coupled */
43 packRlcUlDuUeCreateRsp, /* 2 - LWLC loosely coupled */
47 /***********************************************************
51 * Handler for the ue create response to DUAPP
55 * This function reports ue create response to DUAPP
57 * @param[in] post Post structure
58 * @param[in] cfgRsp ue create Config Response
64 *************************************************************/
65 uint8_t SendRlcUlUeCreateRspToDu(Pst *pst, RlcCfgCfmInfo *cfgRsp)
67 /* jump to specific primitive depending on configured selector */
69 RlcUeCfgRsp *ueCreateRsp = NULLP;
71 RLC_ALLOC_SHRABL_BUF(pst->region, pst->pool, ueCreateRsp, sizeof(RlcUeCfgRsp));
74 DU_LOG("RLC: Memory allocation failed for ueCreateRsp at SendRlcUlUeCreateRspToDu()");
79 /* Mapping Old api to New Api */
80 fillRlcUlUeCfgRsp(ueCreateRsp, cfgRsp);
81 ret = (*rlcUlUeCreateRspOpts[pst->selector])(pst, ueCreateRsp);
84 DU_LOG("RLC: Failed at SendRlcUlUeCreateRspToDu()");
85 RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueCreateRsp, sizeof(RlcUeCfgRsp));
90 } /* end of SendRlcUlUeCreateRspToDu */
92 /**********************************************************************
94 **********************************************************************/