#include "lkw.h" /* LKW defines */
#include "ckw.h" /* CKW defines */
#include "kwu.h" /* KWU defines */
-#include "kw_env.h" /* RLC environment options */
-#include "kw.h" /* RLC defines */
+#include "rlc_env.h" /* RLC environment options */
+#include "rlc_err.h"
/* header/extern include files (.x) */
#include "lkw.x" /* LKW */
#include "ckw.x" /* CKW */
#include "kwu.x" /* KWU */
-#include "kw_err.h"
-#include "kw.x"
+#include "rlc_utils.h" /* RLC defines */
#include "du_app_rlc_inf.h"
#include "rlc_mgr.h"
+CmLListCp *arrTputPerSnssai[DIR_BOTH]; /*Stores the address of Througput LL*/
-RlcDuUeCfgRsp rlcUeCfgRspOpts[] =
+RlcDuUeCreateRsp rlcUeCreateRspOpts[] =
{
- packRlcDuUeCfgRsp, /* 0 - loosely coupled */
- DuProcRlcUeCfgRsp, /* 1 - tightly coupled */
- packRlcDuUeCfgRsp /* 2 - LWLC loosely coupled */
+ packRlcDuUeCreateRsp, /* 0 - loosely coupled */
+ DuProcRlcUeCreateRsp, /* 1 - tightly coupled */
+ packRlcDuUeCreateRsp /* 2 - LWLC loosely coupled */
};
+RlcDuUeReconfigRsp rlcUeReconfigRspOpts[] =
+{
+ packRlcDuUeReconfigRsp, /* 0 - loosely coupled */
+ DuProcRlcUeReconfigRsp, /* 1 - tightly coupled */
+ packRlcDuUeReconfigRsp /* 2 - LWLC loosely coupled */
+};
/***********************************************************
*
* -# RFAILED
*
*************************************************************/
-uint8_t SendRlcUeRspToDu(Pst *pst, RlcCfgCfmInfo *cfgRsp)
+uint8_t SendRlcUeCreateRspToDu(Pst *pst, RlcCfgCfmInfo *cfgRsp)
{
/* jump to specific primitive depending on configured selector */
uint8_t ret = ROK;
- RlcUeCfgRsp *ueRsp = NULLP;
+ RlcCb *gCb;
+ RlcUeCreateRsp *ueRsp = NULLP;
- RLC_ALLOC_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCfgRsp));
+ gCb = RLC_GET_RLCCB(pst->srcInst);
+ RLC_ALLOC_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCreateRsp));
if(!ueRsp)
{
DU_LOG("\nERROR --> RLC: Memory allocation failed for ueRsp at SendRlcUeCreateRspToDu()");
else
{
/* Mapping Old api to New Api */
- ret = fillRlcUeCfgRsp(ueRsp, cfgRsp);
+ ret = fillRlcUeCreateRsp(ueRsp, cfgRsp);
+ if(!ret)
+ {
+ ret = (*rlcUeCreateRspOpts[pst->selector])(pst, ueRsp);
+ if(ret)
+ {
+ DU_LOG("\nERROR --> RLC: Failed at SendRlcUeCreateRspToDu()");
+ RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCreateRsp));
+ }
+ }
+ else
+ {
+ DU_LOG("\nERROR --> RLC: Failed at fillRlcUeCreateRsp() for event %d", pst->event);
+ RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCreateRsp));
+ }
+ }
+ RLC_FREE(gCb, cfgRsp, sizeof(RlcCfgCfmInfo));
+ return ret;
+} /* end of SendRlcUeCreateRspToDu */
+
+/***********************************************************
+ *
+ * @brief
+ *
+ * Handler for the ue Reconfig response to DUAPP
+ *
+ * @b Description:
+ *
+ * This function reports ue Reconfig response to DUAPP
+ *
+ * @param[in] post Post structure
+ * @param[in] cfgRsp ue reconfig Config Response
+ *
+ * @return uint16_t
+ * -# ROK
+ * -# RFAILED
+ *
+ *************************************************************/
+uint8_t SendRlcUeReconfigRspToDu(Pst *pst, RlcCfgCfmInfo *cfgRsp)
+{
+ /* jump to specific primitive depending on configured selector */
+ uint8_t ret = ROK;
+ RlcCb *gCb;
+ RlcUeReconfigRsp *ueRsp = NULLP;
+
+ gCb = RLC_GET_RLCCB(pst->srcInst);
+ RLC_ALLOC_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeReconfigRsp));
+ if(!ueRsp)
+ {
+ DU_LOG("\nERROR --> RLC: Memory allocation failed for ueRsp at SendRlcUeReconfigRspToDu()");
+ ret = RFAILED;
+ }
+ else
+ {
+ /* Mapping Old api to New Api */
+ ret = fillRlcUeCreateRsp(ueRsp, cfgRsp);
if(!ret)
{
- ret = (*rlcUeCfgRspOpts[pst->selector])(pst, ueRsp);
+ ret = (*rlcUeReconfigRspOpts[pst->selector])(pst, ueRsp);
if(ret)
{
- DU_LOG("\nERROR --> RLC: Failed at SendRlcUeRspToDu()");
- RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCfgRsp));
+ DU_LOG("\nERROR --> RLC: Failed at SendRlcUeReconfigRspToDu()");
+ RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeReconfigRsp));
}
}
else
{
- DU_LOG("\nERROR --> RLC: Failed at fillRlcUeCfgRsp() for event %d", pst->event);
- RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeCfgRsp));
+ DU_LOG("\nERROR --> RLC: Failed at fillRlcUeCreateRsp() for event %d", pst->event);
+ RLC_FREE_SHRABL_BUF(pst->region, pst->pool, ueRsp, sizeof(RlcUeReconfigRsp));
}
}
+ RLC_FREE(gCb, cfgRsp, sizeof(RlcCfgCfmInfo));
return ret;
-} /* end of SendRlcUeRspToDu */
+} /* end of SendRlcUeReconfigRspToDu */
/**********************************************************************
End of file