RLC BO, BO response and DL Data handling. [Issue-ID: ODUHIGH-181]
[o-du/l2.git] / src / 5gnrrlc / kw_lim.c
index 7ad2d14..12fb70f 100755 (executable)
      Desc:     Source code for RLC Lower Interface Module.
                This file contains following functions
       
-        --KwLiRguBndCfm
-        --KwLiRguCDatInd
-        --KwLiRguDDatInd
-        --KwLiRguCStaInd
-        --KwLiRguDStaInd
-        --KwLiRguHqStaInd
+        --RlcLiRguBndCfm
+        --rlcProcCommLcUlData
+        --rlcProcDedLcUlData
+        --rlcProcCommLcSchedRpt
+        --rlcProcDedLcSchedRpt
+        --RlcLiRguHqStaInd
 
      File:     kw_lim.c
 
@@ -44,22 +44,11 @@ static int RLOG_FILE_ID=196;
  * @brief RLC Lower Interface module
 */
 
-#define KW_MODULE KW_DBGMASK_INF
+#define RLC_MODULE RLC_DBGMASK_INF
 
 \f
 /* header (.h) include files */
-#include "envopt.h"        /* environment options */
-#include "envdep.h"        /* environment dependent */
-#include "envind.h"        /* environment independent */
-
-#include "gen.h"           /* general */
-#include "ssi.h"           /* system services */
-#include "cm5.h"           /* common timer defines */
-#include "cm_tkns.h"       /* common tokens defines */
-#include "cm_mblk.h"       /* common memory allocation library defines */
-#include "cm_llist.h"      /* common link list  defines  */
-#include "cm_hash.h"       /* common hash list  defines */
-#include "cm_lte.h"        /* common LTE defines */
+#include "common_def.h"
 #include "lkw.h"           /* LKW defines */
 #include "ckw.h"           /* CKW defines */
 #include "kwu.h"           /* KWU defines */
@@ -73,16 +62,6 @@ static int RLOG_FILE_ID=196;
 #include "kw_ul.h"
 
 /* extern (.x) include files */
-#include "gen.x"           /* general */
-#include "ssi.x"           /* system services */
-
-#include "cm5.x"           /* common timer library */
-#include "cm_tkns.x"       /* common tokens */
-#include "cm_mblk.x"       /* common memory allocation */
-#include "cm_llist.x"      /* common link list */
-#include "cm_hash.x"       /* common hash list */
-#include "cm_lte.x"        /* common LTE includes */
-#include "cm_lib.x"        /* common memory allocation library */
 #include "lkw.x"           /* LKW */
 #include "ckw.x"           /* CKW */
 #include "kwu.x"           /* KWU */
@@ -92,6 +71,8 @@ static int RLOG_FILE_ID=196;
 #include "kw_udx.x"
 #include "kw_dl.x"
 #include "kw_ul.x"
+#include "rlc_utils.h"
+#include "rlc_mac_inf.h"
 
 #ifdef __cplusplus
 EXTERN "C" {
@@ -106,8 +87,8 @@ EXTERN "C" {
  *
  * @details
  *    This function handles the bind confirmation received from MAC. If the 
- *    bind was successful changes the state of the SAP to KW_SAP_BND 
- *    else KW_SAP_CFG. Sends an alarm to LM in any case
+ *    bind was successful changes the state of the SAP to RLC_SAP_BND 
+ *    else RLC_SAP_CFG. Sends an alarm to LM in any case
  *
  * @param[in] pst     Post structure
  * @param[in] suId    Service User ID
@@ -119,14 +100,14 @@ EXTERN "C" {
  *
 */
 #ifdef ANSI
-PUBLIC S16 KwLiRguBndCfm
+S16 RlcLiRguBndCfm
 (
 Pst    *pst,   
 SuId   suId, 
 U8     status 
 )
 #else
-PUBLIC S16 KwLiRguBndCfm (pst, suId, status)
+S16 RlcLiRguBndCfm (pst, suId, status)
 Pst    *pst; 
 SuId   suId;
 U8     status;
@@ -134,63 +115,63 @@ U8     status;
 {
    U16          event;     /* Event */
    U16          cause;     /* Cause */
-   KwRguSapCb   *rguSap;   /* RGU SAP Control Block */
-   KwCb         *tKwCb;
+   RlcRguSapCb   *rguSap;   /* RGU SAP Control Block */
+   RlcCb         *tRlcCb;
 
-   TRC3(KwLiRguBndCfm)
+   TRC3(RlcLiRguBndCfm)
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (pst->dstInst >= KW_MAX_RLC_INSTANCES)
+   if (pst->dstInst >= MAX_RLC_INSTANCES)
    {
-      RETVALUE (RFAILED);
+      return  (RFAILED);
    }
 #endif
-   tKwCb = KW_GET_KWCB(pst->dstInst);
+   tRlcCb = RLC_GET_RLCCB(pst->dstInst);
 
-   RLOG2(L_DEBUG,"KwLiRguBndCfm(suId(%d), status(%d)", suId, status);
+   RLOG2(L_DEBUG,"RlcLiRguBndCfm(suId(%d), status(%d)", suId, status);
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (tKwCb->init.cfgDone != TRUE)
+   if (tRlcCb->init.cfgDone != TRUE)
    {
       RLOG0(L_FATAL,"General configuration not done");
       
-      KW_SEND_SAPID_ALARM(tKwCb,suId,LKW_EVENT_LI_BND_CFM, LCM_CAUSE_INV_STATE);
+      RLC_SEND_SAPID_ALARM(tRlcCb,suId,LKW_EVENT_LI_BND_CFM, LCM_CAUSE_INV_STATE);
 
-      RETVALUE(RFAILED);
+      return RFAILED;
    }
 
-   if ((suId >= tKwCb->genCfg.maxRguSaps) || (suId < 0))
+   if ((suId >= tRlcCb->genCfg.maxRguSaps) || (suId < 0))
    {
       RLOG0(L_ERROR, "Invalid suId");
       
-      KW_SEND_SAPID_ALARM(tKwCb,suId, LKW_EVENT_LI_BND_CFM, LCM_CAUSE_INV_SUID);
+      RLC_SEND_SAPID_ALARM(tRlcCb,suId, LKW_EVENT_LI_BND_CFM, LCM_CAUSE_INV_SUID);
 
-      RETVALUE(RFAILED);
+      return RFAILED;
    }
 #endif /* ERRCLASS & ERRCLS_INT_PAR */
 
-   rguSap = (tKwCb->genCfg.rlcMode == LKW_RLC_MODE_DL) ?
-            &(tKwCb->u.dlCb->rguDlSap[suId]) : &(tKwCb->u.ulCb->rguUlSap[suId]);
+   rguSap = (tRlcCb->genCfg.rlcMode == LKW_RLC_MODE_DL) ?
+            &(tRlcCb->u.dlCb->rguDlSap[suId]) : &(tRlcCb->u.ulCb->rguUlSap[suId]);
 
-   RLOG1(L_DEBUG, "KwLiRguBndCfm: For RGU SAP state=%d", rguSap->state)
+   RLOG1(L_DEBUG, "RlcLiRguBndCfm: For RGU SAP state=%d", rguSap->state)
 
    switch (rguSap->state)
    {
-      case KW_SAP_BINDING:
+      case RLC_SAP_BINDING:
       {
-         kwStopTmr (tKwCb,(PTR)rguSap, KW_EVT_WAIT_BNDCFM);
+         rlcStopTmr (tRlcCb,(PTR)rguSap, RLC_EVT_WAIT_BNDCFM);
 
          rguSap->retryCnt = 0;
           
          if (status == CM_BND_OK)
          {
-            rguSap->state = KW_SAP_BND;
+            rguSap->state = RLC_SAP_BND;
             event = LCM_EVENT_BND_OK;
             cause = LKW_CAUSE_SAP_BNDENB;
          }
          else
          {
-            rguSap->state = KW_SAP_CFG;
+            rguSap->state = RLC_SAP_CFG;
             event = LCM_EVENT_BND_FAIL;
             cause = LKW_CAUSE_UNKNOWN;
          }
@@ -204,13 +185,13 @@ U8     status;
    }
 
    /* Send an alarm with proper event and cause */
-   KW_SEND_SAPID_ALARM(tKwCb, suId, event, cause);
+   RLC_SEND_SAPID_ALARM(tRlcCb, suId, event, cause);
 
-   RETVALUE(ROK);
-} /* KwLiRguBndCfm */
+   return (ROK);
+} /* RlcLiRguBndCfm */
 
-PUBLIC int   rlcDDatIndRcvd;
-PUBLIC int   rlcCDatIndRcvd;
+int   rlcDDatIndRcvd;
+int   rlcCDatIndRcvd;
 /**
  * @brief Handler to process PDU received from MAC for common logical channels. 
  *
@@ -227,77 +208,63 @@ PUBLIC int   rlcCDatIndRcvd;
  *    -# RFAILED 
  *
 */
-#ifdef ANSI
-PUBLIC S16 KwLiRguCDatInd
-(
-Pst              *pst,   
-SuId             suId,  
-RguCDatIndInfo   *datInd
-)
-#else
-PUBLIC S16 KwLiRguCDatInd(pst,suId,datInd)
-Pst              *pst; 
-SuId             suId;
-RguCDatIndInfo   *datInd;
-#endif
+uint8_t rlcProcCommLcUlData(Pst *pst, SuId suId, RguCDatIndInfo *datInd)
 {
-   KwUlRbCb   *rbCb; 
-   KwCb       *tKwCb; 
+   RlcUlRbCb   *rbCb; 
+   RlcCb       *tRlcCb; 
 
    rlcCDatIndRcvd++;
-   TRC3(KwLiRguCDatInd)
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (pst->dstInst >= KW_MAX_RLC_INSTANCES)
+   if (pst->dstInst >= MAX_RLC_INSTANCES)
    {
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguCDatIndInfo));
-      RETVALUE (RFAILED);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguCDatIndInfo));
+      return RFAILED;
    }
 #endif
 
-   tKwCb = KW_GET_KWCB(pst->dstInst);
-
+   tRlcCb = RLC_GET_RLCCB(pst->dstInst);
 
 #if (ERRCLASS & ERRCLS_DEBUG)
-   if (tKwCb->genCfg.rlcMode == LKW_RLC_MODE_DL)
+   if (tRlcCb->genCfg.rlcMode == LKW_RLC_MODE_DL)
    {
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguCDatIndInfo));
-      RETVALUE(RFAILED);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguCDatIndInfo));
+      return RFAILED;
    }
 #endif
 
    /* kw006.201 ccpu00120058, Added array boundary condition check */
 #if (ERRCLASS & ERRCLS_DEBUG)
-   if(KW_MAX_LCH_PER_CELL <= datInd->lcId)
+   if(RLC_MAX_LCH_PER_CELL <= datInd->lcId)
    {
-      RLOG_ARG1(L_ERROR,DBG_LCID,datInd->lcId, "Invalid LcId, Max is [%d]",
-         KW_MAX_LCH_PER_CELL);
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguCDatIndInfo));
-      RETVALUE(RFAILED);
+      DU_LOG("\nRLC : rlcProcCommLcUlData : Invalid LcId [%d], Max is [%d]",\
+         datInd->lcId, RLC_MAX_LCH_PER_CELL);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguCDatIndInfo));
+      return RFAILED;
    }
 #endif /* (ERRCLASS & ERRCLS_DEBUG) */
 
    /* Fetch RbCb from lcId */
-   kwDbmFetchUlRbCbFromLchId(tKwCb, 0, datInd->cellId, datInd->lcId, &rbCb);
+   rlcDbmFetchUlRbCbFromLchId(tRlcCb, datInd->rnti, datInd->cellId, datInd->lcId, &rbCb);
    if (!rbCb)
    {
-      RLOG_ARG1(L_ERROR, DBG_CELLID,datInd->cellId, "LcId [%d] not found",
+      DU_LOG("\nRLC : rlcProcCommLcUlData : LcId [%d] not found",
          datInd->lcId);
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguCDatIndInfo));
-      RETVALUE(RFAILED);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguCDatIndInfo));
+      return RFAILED;
    }
 
    /* Dispatch to TM Module */
 #ifdef CCPU_OPT
-   kwTmmRcvFrmLi(tKwCb, rbCb, datInd->rnti, datInd->pdu);
+   rlcTmmRcvFrmMac(tRlcCb, rbCb, datInd->rnti, datInd->pdu);
 #else /* CCPU_OPT */
-   kwTmmRcvFrmLi(tKwCb, rbCb, datInd->pdu);
+   rlcTmmRcvFrmMac(tRlcCb, rbCb, datInd->pdu);
 #endif /* CCPU_OPT */
 
-   KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguCDatIndInfo));
+   RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguCDatIndInfo));
 
-   RETVALUE(ROK);
-} /* KwLiRguCDatInd */
+   return (ROK);
+} /* rlcProcCommLcUlData */
 
 /**
  * @brief Handler to process PDU received from MAC for 
@@ -317,50 +284,36 @@ RguCDatIndInfo   *datInd;
  *
 */
  
-#ifdef ANSI
-PUBLIC S16 KwLiRguDDatInd
-(
-Pst              *pst,   
-SuId             suId,  
-RguDDatIndInfo   *datInd
-)
-#else
-PUBLIC S16 KwLiRguDDatInd(pst, suId, datInd)
-Pst              *pst; 
-SuId             suId;
-RguDDatIndInfo   *datInd;
-#endif
+uint8_t rlcProcDedLcUlData(Pst *pst, SuId suId, RguDDatIndInfo *datInd)
 {
-   TRC3(KwLiRguDDatInd)
-
    rlcDDatIndRcvd++;
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (pst->dstInst >= KW_MAX_RLC_INSTANCES)
+   if (pst->dstInst >= MAX_RLC_INSTANCES)
    {
-       KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguDDatIndInfo));
-       RETVALUE (RFAILED);
+       RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguDDatIndInfo));
+       return RFAILED;
    }
 #endif
 
 #if (ERRCLASS & ERRCLS_DEBUG)
-   if (((KwCb*)KW_GET_KWCB(pst->dstInst))->genCfg.rlcMode == LKW_RLC_MODE_DL)
+   if (((RlcCb*)RLC_GET_RLCCB(pst->dstInst))->genCfg.rlcMode == LKW_RLC_MODE_DL)
    {
-       RLOG1(L_DEBUG,"KwLiRguDDatInd(pst, suId(%d))recieved in DL Inst",suId);
-       KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguDDatIndInfo));
-       RETVALUE(RFAILED);
+       DU_LOG("\nRLC : rlcProcDedLcUlData : suId(%d))recieved in DL Inst", suId);
+       RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguDDatIndInfo));
+       return RFAILED;
    }
 #endif
-   kwUtlRcvFrmLi(KW_GET_KWCB(pst->dstInst),datInd);
+   rlcUtlRcvFrmMac(RLC_GET_RLCCB(pst->dstInst),datInd);
 #ifndef SS_RBUF 
 #ifdef SS_LOCKLESS_MEMORY
-   KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, datInd, sizeof(RguDDatIndInfo));
+   RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguDDatIndInfo));
 #else
-   KW_PST_FREE(pst->region, pst->pool, datInd, sizeof(RguDDatIndInfo));
+   RLC_PST_FREE(RLC_MEM_REGION_UL, RLC_POOL, datInd, sizeof(RguDDatIndInfo));
 #endif
 #endif
 
-   RETVALUE(ROK);
-} /* KwLiRguDDatInd */
+   return ROK;
+} /* rlcProcDedLcUlData */
 
 /**
  * @brief Handler for trigerring the data transfer from RLC to MAC
@@ -380,53 +333,33 @@ RguDDatIndInfo   *datInd;
  *    -# RFAILED 
  *
 */ 
-#ifdef ANSI
-PUBLIC S16 KwLiRguCStaInd
-(
-Pst              *pst,  
-SuId             suId,
-RguCStaIndInfo   *staInd  
-)
-#else
-PUBLIC S16 KwLiRguCStaInd(pst,suId,staInd)
-Pst              *pst;   
-SuId             suId; 
-RguCStaIndInfo   *staInd; 
-#endif
+uint8_t rlcProcCommLcSchedRpt(Pst *pst, SuId suId, RguCStaIndInfo *staInd)
 {
-   KwDlRbCb   *rbCb;  
-   KwCb       *tKwCb;
-
-   TRC3(KwLiRguCStaInd)
+   RlcDlRbCb   *rbCb;  
+   RlcCb       *tRlcCb;
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (pst->dstInst >= KW_MAX_RLC_INSTANCES)
+   if (pst->dstInst >= MAX_RLC_INSTANCES)
    {
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
-      RETVALUE (RFAILED);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
+      return  (RFAILED);
    }
 #endif
 
-   tKwCb = KW_GET_KWCB(pst->dstInst);
-
+   tRlcCb = RLC_GET_RLCCB(pst->dstInst);
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if ((suId >= tKwCb->genCfg.maxRguSaps) || (suId < 0))
+   if ((suId >= tRlcCb->genCfg.maxRguSaps) || (suId < 0))
    {
-      KWLOGERROR(tKwCb,
-            ERRCLS_INT_PAR, 
-            EKW040, 
-            (ErrVal) suId,
-            "KwLiRguCStaInd: Invalid RGU suId\n");
-      RETVALUE(RFAILED); 
+      DU_LOG("\nRLC: rlcProcCommLcSchedRpt: Invalid RGU suId %d\n", suId);
+      return RFAILED; 
    }
-   if (tKwCb->genCfg.rlcMode == LKW_RLC_MODE_UL)
+   if (tRlcCb->genCfg.rlcMode == LKW_RLC_MODE_UL)
    {
-       RLOG_ARG1(L_ERROR,DBG_LCID,staInd->lcId,
-             "Received in RLC UL CELLID:%d",
+       DU_LOG("\nRLC: rlcProcCommLcSchedRpt: Received in RLC UL CELLID:%d",
              staInd->cellId);
-       KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
-       RETVALUE(RFAILED);
+       RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
+       return RFAILED;
    }
 #endif
 
@@ -434,48 +367,38 @@ RguCStaIndInfo   *staInd;
 
    /* kw006.201 ccpu00120058, added boundary condition check */
 #if (ERRCLASS & ERRCLS_DEBUG)
-   if(KW_MAX_LCH_PER_CELL < staInd->lcId)
+   if(RLC_MAX_LCH_PER_CELL < staInd->lcId)
    {
-      RLOG_ARG2(L_ERROR,DBG_LCID,staInd->lcId, 
-            "Invalid LcId, Max is [%d] CELLID:%d",
-            KW_MAX_LCH_PER_CELL,
-            staInd->cellId);
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
-      RETVALUE(RFAILED);
+      DU_LOG("\nRLC: rlcProcCommLcSchedRpt: Invalid LcId, Max is [%d] CELLID:%d",
+         RLC_MAX_LCH_PER_CELL, staInd->cellId);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
+      return RFAILED;
    }
 #endif /* (ERRCLASS & ERRCLS_DEBUG) */
    /* Fertch RbCb from lcId */
-   kwDbmFetchDlRbCbFromLchId(tKwCb,0, staInd->cellId, staInd->lcId, &rbCb);
+   rlcDbmFetchDlRbCbFromLchId(tRlcCb,0, staInd->cellId, staInd->lcId, &rbCb);
    if(!rbCb)                                               
    {
-      RLOG_ARG1(L_ERROR, DBG_CELLID,staInd->cellId, 
-            "LcId [%d] not found CELLID:%d",
-            staInd->lcId);
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
-      RETVALUE(RFAILED);
+      DU_LOG("\nRLC: rlcProcCommLcSchedRpt: LcId [%d] not found CELLID:%d",
+         staInd->lcId, staInd->cellId);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
+      return RFAILED;
    }
 
    /* Dispatch to TM Module */
    rbCb->transId = staInd->transId;
-   /* ccpu00136940 */
-  /* If trace flag is enabled send the trace indication */
-   if(tKwCb->init.trc == TRUE)
-   {
-     /* Populate the trace params */
-      kwLmmSendTrc(tKwCb,EVTRGUCSTAIND, NULLP);
-   }                            
-   kwTmmSndToLi(tKwCb, suId, rbCb, staInd);
+   rlcTmmSendToMac(tRlcCb, suId, rbCb, staInd);
 #ifndef SS_RBUF
 #ifdef SS_LOCKLESS_MEMORY
-   KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
+   RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
 #else
-   KW_PST_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
+   RLC_PST_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
 #endif
 #else
-   KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguCStaIndInfo));
+   RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguCStaIndInfo));
 #endif
-   RETVALUE(ROK);
-} /* KwLiRguCStaInd */
+   return ROK;
+} /* rlcProcCommLcSchedRpt */
 
 /**
  * @brief Handler for trigerring the data transfer from RLC to MAC
@@ -496,56 +419,39 @@ RguCStaIndInfo   *staInd;
  *    -# RFAILED 
  *
 */ 
-#ifdef ANSI
-PUBLIC S16 KwLiRguDStaInd
-(
-Pst              *pst,  
-SuId             suId,
-RguDStaIndInfo   *staInd 
-)
-#else
-PUBLIC S16 KwLiRguDStaInd(pst, suId, staInd)
-Pst              *pst; 
-SuId             suId; 
-RguDStaIndInfo   *staInd; 
-#endif
+uint8_t rlcProcDedLcSchedRpt(Pst *pst, SuId suId, RguDStaIndInfo *staInd)
 {
-   KwCb        *gCb;
-   TRC3(KwLiRguDStaInd)
+   RlcCb        *gCb;
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (pst->dstInst >= KW_MAX_RLC_INSTANCES)
+   if (pst->dstInst >= MAX_RLC_INSTANCES)
    {
-      KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguDStaIndInfo));
-      RETVALUE (RFAILED);
+      RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguDStaIndInfo));
+      return RFAILED;
    }
 #endif
 
-   gCb = KW_GET_KWCB(pst->dstInst);
+   gCb = RLC_GET_RLCCB(pst->dstInst);
 
 #if (ERRCLASS & ERRCLS_INT_PAR)
-   if (((KwCb*)KW_GET_KWCB(pst->dstInst))->genCfg.rlcMode == LKW_RLC_MODE_UL)
+   if (((RlcCb*)RLC_GET_RLCCB(pst->dstInst))->genCfg.rlcMode == LKW_RLC_MODE_UL)
    {
-       RLOG_ARG0(L_ERROR,DBG_CELLID,staInd->cellId,"Received in RLC UL ");
-       KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguDStaIndInfo));
-       RETVALUE(RFAILED);
+       DU_LOG("\nRLC: rlcProcDedLcSchedRpt: Received in RLC UL ");
+       RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguDStaIndInfo));
+       return RFAILED;
    }
    if ((suId >= gCb->genCfg.maxRguSaps) || (suId < 0))
    {
-      KWLOGERROR(gCb,
-            ERRCLS_INT_PAR, 
-            EKW040, 
-            (ErrVal) suId,
-            "KwLiRguDStaInd: Invalid RGU suId\n");
-      RETVALUE(RFAILED); 
+      DU_LOG("\nRLC: rlcProcDedLcSchedRpt: Invalid RGU suId %d\n", suId);
+      return (RFAILED); 
    }
 #endif
-   kwUtlSndToLi(gCb, suId, staInd);
+   rlcUtlSendToMac(gCb, suId, staInd);
 
    /* kw002.201 :Freeing from proper region */
-   KW_SHRABL_STATIC_BUF_FREE(pst->region, pst->pool, staInd, sizeof(RguDStaIndInfo));
-   RETVALUE(ROK);
-} /* KwLiRguDStaInd */
+   RLC_SHRABL_STATIC_BUF_FREE(RLC_MEM_REGION_DL, RLC_POOL, staInd, sizeof(RguDStaIndInfo));
+   return ROK;
+} /* rlcProcDedLcSchedRpt */
 
 /**
  * @brief Handler for handling the flow cntrl Ind from MAC
@@ -553,7 +459,7 @@ RguDStaIndInfo   *staInd;
  *
  * @details
  *   This function receives the flow control indication from
- *   MAC and calls kwUtlTrigPdbFlowCntrl
+ *   MAC and calls rlcUtlTrigPdbFlowCntrl
  *
  * @param[in] pst       Post structure
  * @param[in] suId      Service User ID
@@ -566,37 +472,37 @@ RguDStaIndInfo   *staInd;
  *
 */ 
 #ifdef ANSI
-PUBLIC S16 KwLiRguFlowCntrlInd
+S16 RlcLiRguFlowCntrlInd
 (
 Pst              *pst,  
 SuId             suId,
 RguFlowCntrlInd *flowCntrlInd
 )
 #else
-PUBLIC S16 KwLiRguFlowCntrlInd(pst, suId, flowCntrlInd)
+S16 RlcLiRguFlowCntrlInd(pst, suId, flowCntrlInd)
 Pst              *pst; 
 SuId             suId; 
 RguFlowCntrlInd  *flowCntrlInd; 
 #endif
 {
-   KwCb       *tKwCb; 
-   KwDlRbCb   *rbCb = NULLP;
+   RlcCb       *tRlcCb; 
+   RlcDlRbCb   *rbCb = NULLP;
    U32        idx;
    U32        lcIdx;
 
-   tKwCb = KW_GET_KWCB(pst->dstInst);
+   tRlcCb = RLC_GET_RLCCB(pst->dstInst);
    for (idx = 0; idx < flowCntrlInd->numUes; idx++)
    {
       for (lcIdx = 0; lcIdx < flowCntrlInd->ueFlowCntrlInfo[idx].numLcs; lcIdx++)  
       {
          RguLcFlowCntrlInfo *lcInfo = &(flowCntrlInd->ueFlowCntrlInfo[idx].lcInfo[lcIdx]); 
-         kwDbmFetchDlRbCbFromLchId(tKwCb, flowCntrlInd->ueFlowCntrlInfo[idx].ueId, flowCntrlInd->cellId, lcInfo->lcId, &rbCb);
+         rlcDbmFetchDlRbCbFromLchId(tRlcCb, flowCntrlInd->ueFlowCntrlInfo[idx].ueId, flowCntrlInd->cellId, lcInfo->lcId, &rbCb);
          if (rbCb)
          {
            
             if (lcInfo->pktAdmitCnt == 0) /* Special case */
             {
-               kwUtlTrigPdbFlowCntrl(tKwCb, rbCb, lcInfo->pktAdmitCnt);
+               rlcUtlTrigPdbFlowCntrl(tRlcCb, rbCb, lcInfo->pktAdmitCnt);
                continue;
             }
             if (rbCb->mode == CM_LTE_MODE_AM)
@@ -616,11 +522,11 @@ RguFlowCntrlInd  *flowCntrlInd;
                   continue;
                }
             }
-            kwUtlTrigPdbFlowCntrl(tKwCb, rbCb, lcInfo->pktAdmitCnt);
+            rlcUtlTrigPdbFlowCntrl(tRlcCb, rbCb, lcInfo->pktAdmitCnt);
          }
       }
    }
-   RETVALUE(ROK);
+   return ROK;
 }
 /* kw005.201 added support for L2 Measurement */
 #ifdef LTE_L2_MEAS
@@ -648,46 +554,46 @@ RguFlowCntrlInd  *flowCntrlInd;
  *
  */
 #ifdef ANSI
-PUBLIC S16 KwLiRguHqStaInd
+S16 RlcLiRguHqStaInd
 (
 Pst                *pst, 
 SuId               suId,
 RguHarqStatusInd   *staInd 
 )
 #else
-PUBLIC S16 KwLiRguHqStaInd(pst,suId,staInd)
+S16 RlcLiRguHqStaInd(pst,suId,staInd)
 Pst                *pst;  
 SuId               suId; 
 RguHarqStatusInd   *staInd;
 #endif
 {
 
-   KwUeKey   ueKey;
+   RlcUeKey   ueKey;
    S16       ret; 
-   KwDlUeCb    *ueCb;
+   RlcDlUeCb    *ueCb;
    U8        tbIdx;
-   KwCb       *tKwCb; 
+   RlcCb       *tRlcCb; 
 
-   TRC3(KwLiRguHqStaInd)
+   TRC3(RlcLiRguHqStaInd)
 
-   tKwCb = KW_GET_KWCB(pst->dstInst);
+   tRlcCb = RLC_GET_RLCCB(pst->dstInst);
    ueKey.cellId = staInd->cellId;
    ueKey.ueId   = staInd->ueId;
 
-   ret = kwDbmFetchDlUeCb(tKwCb, ueKey.ueId, ueKey.cellId, &ueCb);
+   ret = rlcDbmFetchDlUeCb(tRlcCb, ueKey.ueId, ueKey.cellId, &ueCb);
    if (ret != ROK )
    {
-      RETVALUE(RFAILED);
+      return RFAILED;
    }
 
-   /*Call kwUtlProcHarqInd as many times as number of Tbs present*/
+   /*Call rlcUtlProcHarqInd as many times as number of Tbs present*/
    for ( tbIdx = 0; tbIdx < staInd->numTbs; tbIdx++)
    {
-      kwUtlProcHarqInd(tKwCb, staInd, ueCb, tbIdx);
+      rlcUtlProcHarqInd(tRlcCb, staInd, ueCb, tbIdx);
    }
 
-   RETVALUE(ROK);
-} /* KwLiRguHqStaInd */
+   return (ROK);
+} /* RlcLiRguHqStaInd */
 #endif /* LTE_L2_MEAS */
 
 #ifdef __cplusplus