JIRA ID:[ODUHIGH-282]:UL REASSEMBLE SDU
[o-du/l2.git] / src / 5gnrrlc / kw_utl_dl.c
index 146eaf9..daeb948 100755 (executable)
@@ -73,7 +73,9 @@ static int RLOG_FILE_ID=209;
 
 #include "rlc_utils.h"
 #include "rlc_mac_inf.h"
+#include "du_app_rlc_inf.h"
 #include "rlc_lwr_inf_api.h"
+#include "rlc_upr_inf_api.h"
 
 #include "ss_rbuf.h"
 #include "ss_rbuf.x" 
@@ -111,15 +113,15 @@ Void PrintRLCStats(Void)
                      ulInst->genSts.pdusRecv,
                      ulInst->genSts.unexpPdusRecv,
                      ulInst->genSts.errorPdusRecv);
-   RLOG4(L_ALWAYS,"RLC Stats: AMDL: "
+   RLOG4(L_ALWAYS,"RLC Stats: RLC_AMDL: "
                      "StaPduSent:%lu NacksInStaPdu:%lu BytesUnused:%lu PollTimerExpires SRB:%lu ",
                      gRlcStats.amRlcStats.numDLStaPduSent, gRlcStats.amRlcStats.numDLNacksInStaPdu, 
                      gRlcStats.amRlcStats.numDLBytesUnused, gRlcStats.amRlcStats.numDLPollTimerExpiresSrb);
-   RLOG3(L_ALWAYS,"RLC Stats: AMDL: "
+   RLOG3(L_ALWAYS,"RLC Stats: RLC_AMDL: "
                      "DRB:%lu MaxRetx:%lu RetransPdus:%lu", 
                      gRlcStats.amRlcStats.numDLPollTimerExpiresDrb, gRlcStats.amRlcStats.numDLMaxRetx, 
                      gRlcStats.amRlcStats.numDLRetransPdus);
-   RLOG4(L_ALWAYS,"RLC Stats: AMUL: "
+   RLOG4(L_ALWAYS,"RLC Stats: RLC_AMUL: "
                      " PdusDiscarded:%lu ReOrdTimerExpires:%lu StaPduRcvd:%lu NackInStaPduRcvd:%lu ", 
                      gRlcStats.amRlcStats.numULPdusDiscarded, gRlcStats.amRlcStats.numULReOrdTimerExpires, 
                      gRlcStats.amRlcStats.numULStaPduRcvd, gRlcStats.amRlcStats.numULNackInStaPduRcvd);
@@ -134,8 +136,8 @@ Void PrintRLCStats(Void)
                      ulInst->genSts.unexpPdusRecv,
                      ulInst->genSts.errorPdusRecv);
    RTLIN_DUMP_DEBUG("RLC Stats:"
-                    "AMDL: StaPduSent:%lu NacksInStaPdu:%lu BytesUnused:%lu PollTimerExpires SRB:%lu DRB:%lu MaxRetx:%lu RetransPdus:%lu \n"
-                    "AMUL: PdusDiscarded:%lu ReOrdTimerExpires:%lu StaPduRcvd:%lu NackInStaPduRcvd:%lu \n", 
+                    "RLC_AMDL: StaPduSent:%lu NacksInStaPdu:%lu BytesUnused:%lu PollTimerExpires SRB:%lu DRB:%lu MaxRetx:%lu RetransPdus:%lu \n"
+                    "RLC_AMUL: PdusDiscarded:%lu ReOrdTimerExpires:%lu StaPduRcvd:%lu NackInStaPduRcvd:%lu \n", 
                      gRlcStats.amRlcStats.numDLStaPduSent, gRlcStats.amRlcStats.numDLNacksInStaPdu, gRlcStats.amRlcStats.numDLBytesUnused, 
                      gRlcStats.amRlcStats.numDLPollTimerExpiresSrb, gRlcStats.amRlcStats.numDLPollTimerExpiresDrb, gRlcStats.amRlcStats.numDLMaxRetx, 
                      gRlcStats.amRlcStats.numDLRetransPdus, gRlcStats.amRlcStats.numULPdusDiscarded, gRlcStats.amRlcStats.numULReOrdTimerExpires, 
@@ -157,21 +159,21 @@ Void PrintRLCStats(Void)
                      ulInst->genSts.pdusRecv,
                      ulInst->genSts.unexpPdusRecv,
                      ulInst->genSts.errorPdusRecv);
-   RLOG4(L_ALWAYS,"RLC Stats: AMDL: "
+   RLOG4(L_ALWAYS,"RLC Stats: RLC_AMDL: "
                      "StaPduSent:%lu NacksInStaPdu:%lu BytesUnused:%lu PollTimerExpires SRB:%lu ",
                      gRlcStats.amRlcStats.numDLStaPduSent, gRlcStats.amRlcStats.numDLNacksInStaPdu, 
                      gRlcStats.amRlcStats.numDLBytesUnused, gRlcStats.amRlcStats.numDLPollTimerExpiresSrb);
-   RLOG3(L_ALWAYS,"RLC Stats: AMDL: "
+   RLOG3(L_ALWAYS,"RLC Stats: RLC_AMDL: "
                      "DRB:%lu MaxRetx:%lu RetransPdus:%lu", 
                      gRlcStats.amRlcStats.numDLPollTimerExpiresDrb, gRlcStats.amRlcStats.numDLMaxRetx, 
                      gRlcStats.amRlcStats.numDLRetransPdus);
-   RLOG4(L_ALWAYS,"RLC Stats: AMUL: "
+   RLOG4(L_ALWAYS,"RLC Stats: RLC_AMUL: "
                      " PdusDiscarded:%lu ReOrdTimerExpires:%lu StaPduRcvd:%lu NackInStaPduRcvd:%lu ", 
                      gRlcStats.amRlcStats.numULPdusDiscarded, gRlcStats.amRlcStats.numULReOrdTimerExpires, 
                      gRlcStats.amRlcStats.numULStaPduRcvd, gRlcStats.amRlcStats.numULNackInStaPduRcvd);
  /*  RTLIN_DUMP_DEBUG("AM RLC Stats:"
-                    "AMDL: SDUs Tx :(%u) SDU Bytes Tx :(%u) SDUs Retx :(%u) MaxRetx:(%u) WindowStalls: (%u) \n"
-                    "AMUL: DropOutWinRx :(%u) SDUs Rx :(%u) SDU Bytes Rx :(%u) SDUNack Rx :(%u) Duplicate Pdu Rx :(%u) \n",
+                    "RLC_AMDL: SDUs Tx :(%u) SDU Bytes Tx :(%u) SDUs Retx :(%u) MaxRetx:(%u) WindowStalls: (%u) \n"
+                    "RLC_AMUL: DropOutWinRx :(%u) SDUs Rx :(%u) SDU Bytes Rx :(%u) SDUNack Rx :(%u) Duplicate Pdu Rx :(%u) \n",
                      gRlcStats.amRlcStats.numRlcAmCellSduTx, gRlcStats.amRlcStats.numRlcAmCellSduBytesTx,
                      gRlcStats.amRlcStats.numRlcAmCellRetxPdu, gRlcStats.amRlcStats.numRlcAmMaxRetx, gRlcStats.amRlcStats.numRlcAmCellWinStall,
                      gRlcStats.amRlcStats.numRlcAmCellDropOutWinRx, gRlcStats.amRlcStats.numRlcAmCellSduRx,
@@ -186,10 +188,10 @@ Void PrintRLCStats(Void)
                      ulInst->genSts.pdusRecv,
                      ulInst->genSts.unexpPdusRecv,
                      ulInst->genSts.errorPdusRecv);
-   RTLIN_DUMP_DEBUG("AMDL: StaPduSent:%u NacksInStaPdu:%u BytesUnused:%u PollTimerExpires SRB:%u DRB:%u MaxRetx:%u RetransPdus:%u \n"
+   RTLIN_DUMP_DEBUG("RLC_AMDL: StaPduSent:%u NacksInStaPdu:%u BytesUnused:%u PollTimerExpires SRB:%u DRB:%u MaxRetx:%u RetransPdus:%u \n"
                     "      SDUs Tx :(%u) SDU Bytes Tx :(%u) SDUs Retx :(%u) WindowStalls: (%u) \n"
 
-                    "AMUL: PdusDiscarded:%u ReOrdTimerExpires:%u StaPduRcvd:%u NackInStaPduRcvd:%u \n"
+                    "RLC_AMUL: PdusDiscarded:%u ReOrdTimerExpires:%u StaPduRcvd:%u NackInStaPduRcvd:%u \n"
                     "      DropOutWinRx :(%u) SDUs Rx :(%u) SDU Bytes Rx :(%u) SDUNack Rx :(%u) Duplicate Pdu Rx:(%u) \n", 
                      gRlcStats.amRlcStats.numDLStaPduSent, gRlcStats.amRlcStats.numDLNacksInStaPdu, gRlcStats.amRlcStats.numDLBytesUnused, 
                      gRlcStats.amRlcStats.numDLPollTimerExpiresSrb, gRlcStats.amRlcStats.numDLPollTimerExpiresDrb,
@@ -230,14 +232,15 @@ uint8_t rlcSendDedLcDlData(Pst *post, SpId spId, RguDDatReqInfo *datReqInfo)
    RguDatReqTb      datPerTb;   /* DL data info per TB */
    RguLchDatReq     datPerLch;  /* DL data info per Lch */
    RlcData          *dlData;    /* DL data to be sent to MAC */
+   RlcDlRrcMsgRsp   *dlRrcMsgRsp;/* DL Data Msg Rsp sent to DU */
    Pst              pst;        /* Post structure */
    uint16_t         pduLen;     /* PDU length */
    uint16_t         copyLen;    /* Number of bytes copied */
 
    dlData = NULLP;
+   dlRrcMsgRsp = NULLP;
    RLC_ALLOC_SHRABL_BUF(RLC_MEM_REGION_DL, RLC_POOL,
                        dlData, sizeof(RlcData));
-#if (ERRCLASS & ERRCLS_ADD_RES)
    if ( dlData == NULLP )
    {
       DU_LOG("\nRLC: rlcSendDedLcDlData: Memory allocation failed for dl data");
@@ -245,7 +248,6 @@ uint8_t rlcSendDedLcDlData(Pst *post, SpId spId, RguDDatReqInfo *datReqInfo)
           datReqInfo, sizeof(RguDDatReqInfo));
       return RFAILED;
    }
-#endif /* ERRCLASS & ERRCLS_ADD_RES */
 
    for(ueIdx = 0; ueIdx < datReqInfo->nmbOfUeGrantPerTti; ueIdx++)
    {
@@ -304,6 +306,25 @@ uint8_t rlcSendDedLcDlData(Pst *post, SpId spId, RguDDatReqInfo *datReqInfo)
          }/* For Data per Lch */
       }/* For Data per Tb */
 
+      RLC_ALLOC_SHRABL_BUF(RLC_MEM_REGION_DL, RLC_POOL,
+                     dlRrcMsgRsp, sizeof(RlcDlRrcMsgRsp));
+      if( dlRrcMsgRsp == NULLP )
+      {
+         DU_LOG("\nRLC: rlcSendDedLcDlData: Memory allocation failed for dlRrcMsgRsp");
+         for(pduIdx = 0; pduIdx < dlData->numPdu; pduIdx++)
+         {
+            RLC_FREE_SHRABL_BUF(pst.region, pst.pool, dlData->pduInfo[pduIdx].pduBuf,\
+               dlData->pduInfo[pduIdx].pduLen);
+         }
+          RLC_FREE_SHRABL_BUF(pst.region, pst.pool, dlData, sizeof(RlcData));
+         RLC_FREE_SHRABL_BUF(RLC_MEM_REGION_DL, RLC_POOL,
+             datReqInfo, sizeof(RguDDatReqInfo));
+         return RFAILED;
+      }
+
+      dlRrcMsgRsp->cellId = dlData->cellId;
+      dlRrcMsgRsp->crnti = dlData->rnti;
+
       /* Sending DL Data per UE to MAC */
       memset(&pst, 0, sizeof(Pst));
       FILL_PST_RLC_TO_MAC(pst, RLC_DL_INST, EVENT_DL_DATA_TO_MAC);
@@ -315,6 +336,17 @@ uint8_t rlcSendDedLcDlData(Pst *post, SpId spId, RguDDatReqInfo *datReqInfo)
               dlData->pduInfo[pduIdx].pduLen);
         }
          RLC_FREE_SHRABL_BUF(pst.region, pst.pool, dlData, sizeof(RlcData));
+        /* Update DL RRC MSG Rsp State */
+         dlRrcMsgRsp->state = TRANSMISSION_FAILED;
+      }
+      else
+         dlRrcMsgRsp->state = TRANSMISSION_COMPLETE;
+
+      /* Send Dl RRC Msg Rsp to DU APP */
+      FILL_PST_RLC_TO_DUAPP(pst, RLC_DL_INST, EVENT_DL_RRC_MSG_RSP_TO_DU);
+      if(rlcSendDlRrcMsgRspToDu(&pst, dlRrcMsgRsp) != ROK)
+      {
+         RLC_FREE_SHRABL_BUF(pst.region, pst.pool, dlRrcMsgRsp, sizeof(RlcDlRrcMsgRsp));
       }
    } /* For Data per UE */
 
@@ -458,8 +490,8 @@ uint8_t rlcUtlSendToMac(RlcCb *gCb, SuId suId, KwDStaIndInfo *staIndInfo)
                   datIndSz += len; 
                }
                datReqTb->lchData[count].setMaxUlPrio = FALSE;
-               if (RLC_AM_IS_POLL_BIT_SET(AMDL) && 
-                   (AMDL.sduQ.count > 1))
+               if (RLC_AM_IS_POLL_BIT_SET(RLC_AMDL) && 
+                   (RLC_AMDL.sduQ.count > 1))
                { 
                   /* Poll bit is set indicate to MAC*/
                   datReqTb->lchData[count].setMaxUlPrio = TRUE;
@@ -591,7 +623,7 @@ uint8_t rlcUtlSendDedLcBoStatus(RlcCb *gCb, RlcDlRbCb *rbCb, int32_t bo, \
 
 #ifndef TENB_ACC
    if ((rbCb->lastRprtdBoToMac > (uint32_t)8000) && (rbCb->boUnRprtdCnt < (uint32_t)5) 
-       && (!staPduPrsnt) && ((CM_LTE_MODE_AM == rbCb->mode ) && (AMDL.nxtRetx == NULLP)))
+       && (!staPduPrsnt) && ((CM_LTE_MODE_AM == rbCb->mode ) && (RLC_AMDL.nxtRetx == NULLP)))
    {
       rbCb->boUnRprtdCnt++;
       return ROK;
@@ -637,7 +669,6 @@ uint8_t rlcUtlSendDedLcBoStatus(RlcCb *gCb, RlcDlRbCb *rbCb, int32_t bo, \
  */
 /* kw005.201 added support for L2 Measurement */
 #ifdef LTE_L2_MEAS_RLC
-#ifdef ANSI
 Void rlcUtlEmptySduQ
 (
 RlcCb        *gCb, 
@@ -645,23 +676,11 @@ RlcDlRbCb    *rbCb,
 CmLListCp   *sduQ 
 )
 #else
-Void rlcUtlEmptySduQ(gCb,rbCb, sduQ)
-RlcCb        *gCb;
-RlcDlRbCb    *rbCb;
-CmLListCp   *sduQ;
-#endif
-#else
-#ifdef ANSI
 Void rlcUtlEmptySduQ
 (
 RlcCb        *gCb,
 CmLListCp   *sduQ 
 )
-#else
-Void rlcUtlEmptySduQ(gCb,sduQ)
-RlcCb        *gCb;
-CmLListCp   *sduQ; 
-#endif
 #endif
 {
 #ifdef LTE_L2_MEAS_RLC
@@ -747,17 +766,7 @@ void rlcUtlCalcLiForSdu(RlcCb *gCb, uint16_t numLi, MsgLen msgLen, int16_t *pduS
  *
  * @return  void 
  */
-#ifdef ANSI
-Void rlcDlUtlSetReestInProgressForRB
-(
-RlcCb     *gCb,
-RlcDlRbCb *rbCb
-)
-#else
-Void rlcDlUtlSetReestInProgressForRB(gCb,rbCb)
-RlcCb     *gCb;
-RlcDlRbCb *rbCb;
-#endif 
+Void rlcDlUtlSetReestInProgressForRB(RlcCb *gCb,RlcDlRbCb *rbCb)
 {
       
    rbCb->reestInProgress = TRUE;
@@ -806,15 +815,7 @@ bool rlcDlUtlIsReestInProgress(RlcDlRbCb *rbCb)
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcDlUtlResetReestInProgress
-(
-RlcDlRbCb *rbCb
-)
-#else
-Void rlcDlUtlResetReestInProgress(rbCb)
-RlcDlRbCb *rbCb;
-#endif 
+Void rlcDlUtlResetReestInProgress(RlcDlRbCb *rbCb)
 {
 
    rbCb->reestInProgress = FALSE;
@@ -833,17 +834,7 @@ RlcDlRbCb *rbCb;
  *
  * @return  void 
  */
-#ifdef ANSI
-Void rlcDlUtlSetReestInProgressForAllRBs
-(
-RlcCb     *gCb,
-RlcDlUeCb *ueCb
-)
-#else
-Void rlcDlUtlSetReestInProgressForAllRBs(gCb,ueCb)
-RlcCb     *gCb;
-RlcDlUeCb *ueCb;
-#endif 
+Void rlcDlUtlSetReestInProgressForAllRBs(RlcCb *gCb,RlcDlUeCb *ueCb)
 {
    uint32_t        rbIdx;
    
@@ -921,17 +912,7 @@ void rlcUtlIncrementGenStsBytesAndPdusSent(RlcGenSts *genSts, Buffer *pdu)
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcUtlInitToBeFreed
-(
-RlcCb                *gCb,
-RlcDlDataToBeFreed   *toBeFreed
-)
-#else
-Void rlcUtlInitToBeFreed(gCb, toBeFreed)
-RlcCb                *gCb;
-RlcDlDataToBeFreed   *toBeFreed;
-#endif
+Void rlcUtlInitToBeFreed(RlcCb *gCb,RlcDlDataToBeFreed *toBeFreed)
 {
    cmLListInit(&(toBeFreed->sduLst));
    cmLListInit(&(toBeFreed->rbLst));
@@ -949,15 +930,7 @@ RlcDlDataToBeFreed   *toBeFreed;
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcUtlInitializeSelfPst
-(
-RlcCb *gCb  
-)
-#else
-Void rlcUtlInitializeSelfPst(gCb)
-RlcCb *gCb;
-#endif
+Void rlcUtlInitializeSelfPst(RlcCb *gCb)
 {
    Pst *selfPst = &gCb->u.dlCb->selfPst;
    
@@ -1016,17 +989,7 @@ void rlcUtlAddSduToBeFreedQueue(RlcCb *gCb, RlcSdu *sdu)
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcUtlAddReTxPduToBeFreedQueue
-(
-RlcCb     *gCb,
-RlcRetx   *retx
-)
-#else
-Void rlcUtlAddReTxPduToBeFreedQueue(gCb, retx)
-RlcCb     *gCb;
-RlcRetx   *retx;
-#endif
+Void rlcUtlAddReTxPduToBeFreedQueue(RlcCb *gCb,RlcRetx *retx)
 {
    cmLListAdd2Tail(&(gCb->u.dlCb->toBeFreed.reTxLst), &(retx->lstEnt));
    return;
@@ -1041,17 +1004,7 @@ RlcRetx   *retx;
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcUtlAddTxPduToBeFreedQueue
-(
-RlcCb   *gCb,
-RlcTx   *pdu
-)
-#else
-Void rlcUtlAddTxPduToBeFreedQueue(gCb, pdu)
-RlcCb   *gCb;
-RlcTx   *pdu;
-#endif
+Void rlcUtlAddTxPduToBeFreedQueue(RlcCb   *gCb,RlcTx   *pdu)
 {
    pdu->rlsLnk.node = (PTR)pdu;
    cmLListAdd2Tail(&(gCb->u.dlCb->toBeFreed.txLst), &(pdu->rlsLnk));
@@ -1074,48 +1027,36 @@ RlcTx   *pdu;
  *     - TRUE if more data to be freed
  *     - FALSE if all the data has been freed
  */
-#ifdef ANSI
-static Bool rlcUtlFreeDlAmRbMemory
-(
-RlcCb       *gCb,
-RlcDlRbCb   *rbCb,
-uint32_t    *toBeFreed
-)
-#else
-static Bool rlcUtlFreeDlAmRbMemory(gCb, rbCb, toBeFreed)
-RlcCb       *gCb;
-RlcDlRbCb   *rbCb;
-uint32_t    *toBeFreed
-#endif
+static Bool rlcUtlFreeDlAmRbMemory(RlcCb *gCb,RlcDlRbCb *rbCb,uint32_t *toBeFreed)
 {
    RlcRetx   *retx;   /* retransmission buffer */
    RlcSn     mTxNext;    /* send state variable */
    RlcTx      *txBuf;
 
-   MODAMT(AMDL.txNext, mTxNext, AMDL.txNextAck,AMDL.snModMask);
+   MODAMT(RLC_AMDL.txNext, mTxNext, RLC_AMDL.txNextAck,RLC_AMDL.snModMask);
 
    /* TODO : to be checked changed from <= to < */
    while ((0 < mTxNext) && *toBeFreed)
    {
-      txBuf =  rlcUtlGetTxBuf(AMDL.txBufLst, AMDL.txNextAck);
+      txBuf =  rlcUtlGetTxBuf(RLC_AMDL.txBufLst, RLC_AMDL.txNextAck);
       if (txBuf && txBuf->pduLst.first)
       {
          while(txBuf->pduLst.first)
         {
            RlcDlPduInfo *pduInfo = (RlcDlPduInfo *)(txBuf->pduLst.first->node);
-           RLC_FREE_BUF(pduInfo->pdu);
+           ODU_PUT_MSG_BUF(pduInfo->pdu);
            /* Delete node from the txBuf Pdu lst */
            cmLListDelFrm(&txBuf->pduLst, txBuf->pduLst.first);
-           RLC_FREE_WC(gCb, pduInfo, sizeof(RlcDlPduInfo));
+           RLC_FREE(gCb, pduInfo, sizeof(RlcDlPduInfo));
         }
-         rlcUtlDelTxBuf(AMDL.txBufLst, txBuf, gCb);
+         rlcUtlDelTxBuf(RLC_AMDL.txBufLst, txBuf, gCb);
          if(gCb->u.dlCb->shutdownReceived == 0)
          {   
             (*toBeFreed)--;
         }
       }
-      AMDL.txNextAck = (AMDL.txNextAck + 1) & AMDL.snModMask;
-      MODAMT(AMDL.txNext, mTxNext, AMDL.txNextAck,AMDL.snModMask);
+      RLC_AMDL.txNextAck = (RLC_AMDL.txNextAck + 1) & RLC_AMDL.snModMask;
+      MODAMT(RLC_AMDL.txNext, mTxNext, RLC_AMDL.txNextAck,RLC_AMDL.snModMask);
    }
    if(*toBeFreed == 0)
    {
@@ -1123,19 +1064,19 @@ uint32_t    *toBeFreed
    }
    
 #ifndef LTE_TDD 
-      RLC_FREE(gCb,AMDL.txBufLst, (RLC_TX_BUF_BIN_SIZE * sizeof(CmLListCp)));
+      RLC_FREE(gCb,RLC_AMDL.txBufLst, (RLC_TX_BUF_BIN_SIZE * sizeof(CmLListCp)));
 #endif
 
-   RLC_LLIST_FIRST_RETX(AMDL.retxLst, retx);
+   RLC_LLIST_FIRST_RETX(RLC_AMDL.retxLst, retx);
    while (retx && (*toBeFreed)) /* Till to be freed becomes 0 */
    {
 
-      RLC_FREE_BUF(retx->seg);
+      ODU_PUT_MSG_BUF(retx->seg);
 
-      cmLListDelFrm(&AMDL.retxLst, &retx->lstEnt);
-      RLC_FREE_WC(gCb, retx, sizeof(RlcRetx));
+      cmLListDelFrm(&RLC_AMDL.retxLst, &retx->lstEnt);
+      RLC_FREE(gCb, retx, sizeof(RlcRetx));
 
-      RLC_LLIST_FIRST_RETX(AMDL.retxLst, retx);
+      RLC_LLIST_FIRST_RETX(RLC_AMDL.retxLst, retx);
       if(gCb->u.dlCb->shutdownReceived == 0)
       {
       (*toBeFreed)--;
@@ -1143,18 +1084,18 @@ uint32_t    *toBeFreed
 
    }
 
-   AMDL.nxtRetx = NULLP;
+   RLC_AMDL.nxtRetx = NULLP;
 
    /* clean up if there is info about STATUS PDU to be sent */
-   if(AMDL.pStaPdu)
+   if(RLC_AMDL.pStaPdu)
    {
       Pst *udxPst;
       udxPst = &gCb->u.dlCb->udxDlSap->pst;
       RLC_FREE_SHRABL_BUF_WC(udxPst->region,
                            udxPst->pool,
-                           AMDL.pStaPdu, 
+                           RLC_AMDL.pStaPdu, 
                            sizeof(RlcUdxDlStaPdu));
-      AMDL.pStaPdu = NULLP;
+      RLC_AMDL.pStaPdu = NULLP;
    }
 
    if(*toBeFreed == 0)
@@ -1177,15 +1118,7 @@ uint32_t    *toBeFreed
  *
  * @return  Void
  */
-#ifdef ANSI
-Void rlcUtlFreeDlMemory
-(
-RlcCb *gCb  
-)
-#else
-Void rlcUtlFreeDlMemory(gCb)
-RlcCb *gCb;
-#endif
+Void rlcUtlFreeDlMemory(RlcCb *gCb)
 {
    uint32_t toBeFreed; 
 
@@ -1237,8 +1170,8 @@ RlcCb *gCb;
    {
       RlcRetx* seg = (RlcRetx *)(lst->first->node);
       cmLListDelFrm(lst, lst->first);
-      RLC_FREE_BUF_WC(seg->seg);
-      RLC_FREE_WC(gCb,seg, sizeof(RlcRetx));
+      ODU_PUT_MSG_BUF(seg->seg);
+      RLC_FREE(gCb,seg, sizeof(RlcRetx));
       toBeFreed--;
    }   
 
@@ -1257,10 +1190,10 @@ RlcCb *gCb;
          RlcDlPduInfo *pduInfo = (RlcDlPduInfo *)(pdu->pduLst.first->node);
          
         cmLListDelFrm(&pdu->pduLst, pdu->pduLst.first);
-        RLC_FREE_BUF_WC(pduInfo->pdu);
-        RLC_FREE_WC(gCb, pduInfo, sizeof(RlcDlPduInfo));
+        ODU_PUT_MSG_BUF(pduInfo->pdu);
+        RLC_FREE(gCb, pduInfo, sizeof(RlcDlPduInfo));
       }
-      RLC_FREE_WC(gCb,pdu, sizeof(RlcTx));
+      RLC_FREE(gCb,pdu, sizeof(RlcTx));
       toBeFreed--;
    }
 
@@ -1290,7 +1223,7 @@ RlcCb *gCb;
       if(!moreToBeFreed)
       {
          cmLListDelFrm(lst, lst->first);
-         RLC_FREE_WC(gCb, rbCb, sizeof(RlcDlRbCb));
+         RLC_FREE(gCb, rbCb, sizeof(RlcDlRbCb));
       }
    } 
 
@@ -1346,7 +1279,6 @@ S16 rlcUtlL2MeasDlInit(RlcCb *gCb)
  *  @return  Void
  *
  */
-#ifdef ANSI
 Void rlcUtlUpdateBurstSdus
 (
 RlcCb            *gCb,
@@ -1355,14 +1287,6 @@ RlcContSduLst    *contSduLst,
 S32              dataVol,
 uint32_t         schPduSz
 )
-#else
-Void  rlcUtlUpdateBurstSdus (gCb, rbCb, contSduLst, dataVol, schPduSz)
-RlcCb            *gCb;
-RlcDlRbCb        *rbCb;
-RlcContSduLst    *contSduLst;
-S32              dataVol;
-uint32_t         schPduSz;
-#endif
 {
 
    RlcL2MeasDlIpTh   *l2MeasDlIpThruput = NULLP;
@@ -1444,17 +1368,7 @@ uint32_t         schPduSz;
  *
  *  @return  Void
  */
-#ifdef ANSI
-Void rlcUtlUpdateContainedSduLst
-(
-uint8_t            sduIdx,
-RlcContSduLst  *contSduLst
-)
-#else
-Void rlcUtlUpdateContainedSduLst(sduIdx, contSduLst)
-uint8_t            sduIdx;
-RlcContSduLst  *contSduLst;
-#endif
+Void rlcUtlUpdateContainedSduLst(uint8_t sduIdx,RlcContSduLst *contSduLst)
 {
    if (contSduLst->numSdus < RLC_L2MEAS_MAX_OUTSTNGSDU)
    {
@@ -1482,23 +1396,14 @@ RlcContSduLst  *contSduLst;
  *
  *  @return  Void
  */
-#ifdef ANSI
 Void rlcUtlUpdateOutStandingSduLst
 (
 RlcL2MeasDlIpTh   *dlIpThPut, 
-uint8_t               sduIdx, 
-MsgLen           sduLen, 
-uint32_t              sduId,
-Bool             newIdx
+uint8_t           sduIdx, 
+MsgLen            sduLen, 
+uint32_t          sduId,
+Bool              newIdx
 )
-#else
-Void rlcUtlUpdateOutStandingSduLst(dlIpThPut, sduIdx, sduLen, sduId, newIdx)
-RlcL2MeasDlIpTh   *dlIpThPut;
-uint8_t               sduIdx;
-MsgLen           sduLen; 
-uint32_t              sduId;
-Bool             newIdx;
-#endif
 {
    if (sduIdx < RLC_L2MEAS_MAX_OUTSTNGSDU)
    {
@@ -1512,17 +1417,7 @@ Bool             newIdx;
    }
    return;
 }
-#ifdef ANSI
-RlcL2MeasTb * rlcUtlGetCurMeasTb
-(
-RlcCb     *gCb,
-RlcDlRbCb *rbCb
-)
-#else
-RlcL2MeasTb * rlcUtlGetCurMeasTb(gCb, rbCb)
-RlcCb     *gCb;
-RlcDlRbCb *rbCb;
-#endif
+RlcL2MeasTb * rlcUtlGetCurMeasTb(RlcCb *gCb,RlcDlRbCb *rbCb)
 {
    RlcL2MeasTb  *curL2MeasTb;
    uint16_t         idx;
@@ -1574,7 +1469,6 @@ RlcDlRbCb *rbCb;
  *      -# ROK
  */
 
-#ifdef ANSI
 S16 rlcUtlProcHarqInd
 (
 RlcCb            *gCb,
@@ -1582,13 +1476,6 @@ RguHarqStatusInd *hqStaInd,
 RlcDlUeCb        *ueCb,
 uint8_t          tbIdx
 )
-#else
-S16 rlcUtlProcHarqInd(gCb, hqStaInd, ueCb, tbIdx)
-RlcCb             *gCb;
-RguHarqStatusInd  *hqStaInd;
-RlcDlUeCb         *ueCb;
-uint8_t            tbIdx;
-#endif
 {
 #ifdef LTE_L2_MEAS
    RlcDlRbCb        *rlcRbCb;           /* KW Control Block */
@@ -1782,17 +1669,7 @@ uint8_t            tbIdx;
  *      -# ROK
  */
 
-#ifdef ANSI
-S16 rlcUtlSndDlL2MeasCfm
-(
-RlcCb                  *gCb,
-RlcL2MeasEvtCb         *measEvtCb
-)
-#else
-S16 rlcUtlSndDlL2MeasCfm(gCb, measEvtCb)
-RlcCb                  *gCb;
-RlcL2MeasEvtCb         *measEvtCb;
-#endif
+S16 rlcUtlSndDlL2MeasCfm(RlcCb *gCb,RlcL2MeasEvtCb *measEvtCb)
 {
    uint32_t         qciIdx;
    RlcL2MeasCb      *measCb = NULLP;
@@ -1939,19 +1816,7 @@ RlcL2MeasEvtCb         *measEvtCb;
  *      -# ROK
  */
 
-#ifdef ANSI
-S16 rlcUtlSndDlL2MeasNCfm
-(
-RlcCb           *gCb,
-RlcL2MeasReqEvt *measReqEvt,
-RlcL2MeasCfmEvt *measCfmEvt
-)
-#else
-S16 rlcUtlSndDlL2MeasNCfm(gCb,measReqEvt, measCfmEvt)
-RlcCb           *gCb;
-RlcL2MeasReqEvt *measReqEvt;
-RlcL2MeasCfmEvt *measCfmEvt;
-#endif
+S16 rlcUtlSndDlL2MeasNCfm(RlcCb *gCb,RlcL2MeasReqEvt *measReqEvt,RlcL2MeasCfmEvt *measCfmEvt)
 {
 
    RlcMiLkwL2MeasCfm(&gCb->genCfg.lmPst, measCfmEvt);
@@ -1971,20 +1836,8 @@ RlcL2MeasCfmEvt *measCfmEvt;
  *
  *  @return  Void
  */
-#ifdef ANSI
 
-Void rlcUtlResetDlL2MeasInRlcRb
-(
-RlcCb       *gCb,
-RlcL2MeasCb *measCb,
-uint8_t      measType
-)
-#else
-Void rlcUtlResetDlL2MeasInRlcRb(gCb, measCb, measType)
-RlcCb       *gCb;
-RlcL2MeasCb *measCb;
-uint8_t      measType;
-#endif
+Void rlcUtlResetDlL2MeasInRlcRb(RlcCb *gCb,RlcL2MeasCb *measCb,uint8_t measType)
 {
    uint32_t           ueIdx;
    uint32_t           qciIdx;
@@ -2134,15 +1987,7 @@ Void DumpRLCDlDebugInformation(Void)
  *  @return  Void
  */
 
-#ifdef ANSI
-void rlcUtlFreeDlMem
-(
- Void
-)
-#else
-void rlcUtlFreeDlMem()
-Void;
-#endif
+void rlcUtlFreeDlMem( Void)
 {
   rlcUtlFreeDlMemory(RLC_GET_RLCCB(RLC_DL_INST));
 }
@@ -2166,15 +2011,7 @@ void rlcUtlGetCurrTime(uint32_t  *currTime)
 
 #if defined(MAC_RLC_HARQ_STA_RBUF) || defined (SS_RBUF)
 #ifdef LTE_L2_MEAS
-#ifdef ANSI
-void rlcUtlDlBatchProcHqStaInd
-(
- Void
-)
-#else
-void rlcUtlDlBatchProcHqStaInd()
-Void;
-#endif
+void rlcUtlDlBatchProcHqStaInd( Void)
 {
    /* Read from Ring Buffer and process PDCP packets */
    //Pst pst = {0};
@@ -2218,19 +2055,7 @@ Void;
  *  @return  Void
  *
  */
-#ifdef ANSI
-Void rlcUtlTrigPdbFlowCntrl
-(
-RlcCb       *gCb,
-RlcDlRbCb   *rbCb,
-uint32_t    pktAdmitCnt
-)
-#else
-Void rlcUtlTrigPdbFlowCntrl(gCb,rbCb,pktAdmitCnt)
-RlcCb       *gCb;
-RlcDlRbCb   *rbCb;
-uint32_t    pktAdmitCnt;
-#endif
+Void rlcUtlTrigPdbFlowCntrl(RlcCb  *gCb,RlcDlRbCb *rbCb,uint32_t pktAdmitCnt)
 {
    KwuFlowCntrlIndInfo    *flowCntrlInfo;
    RlcKwuSapCb*            rlckwuSap;
@@ -2323,19 +2148,7 @@ RlcTx* rlcUtlGetTxBuf(CmLListCp *txBufLst, RlcSn sn)
  *
  *  @return  Void
  */
-#ifdef ANSI
-Void rlcUtlDelTxBuf 
-(
-CmLListCp        *txBufLst,
-RlcTx            *txBuf,
-RlcCb              *gCb                              
-)
-#else
-Void rlcUtlDelTxBuf(txBufLst, txBuf, gCb)
-CmLListCp        *txBufLst;
-RlcTx             *txBuf;
-RlcCb             *gCb;                              
-#endif
+Void rlcUtlDelTxBuf (CmLListCp *txBufLst,RlcTx  *txBuf,RlcCb *gCb)
 {
    uint32_t            hashKey; 
    CmLListCp           *txBufLstCp;
@@ -2345,7 +2158,7 @@ RlcCb             *gCb;
    txBufLstCp = &txBufLst[hashKey];
    //printf("D-sn(%d)\n", txBuf->hdr.sn);
    cmLListDelFrm(txBufLstCp, &txBuf->lnk);
-   RLC_FREE_WC(gCb, txBuf, sizeof(RlcTx));
+   RLC_FREE(gCb, txBuf, sizeof(RlcTx));
    return;
 } /* rlcUtlDelTxBuf */
 
@@ -2363,19 +2176,7 @@ RlcCb             *gCb;
  *
  *  @return  Void
  */
-#ifdef ANSI
-Void rlcUtlRemovTxBuf 
-(
-CmLListCp        *txBufLst,
-RlcTx            *txBuf,
-RlcCb              *gCb                              
-)
-#else
-Void rlcUtlRemovTxBuf(txBufLst, txBuf, gCb)
-CmLListCp        *txBufLst;
-RlcTx             *txBuf;
-RlcCb             *gCb;                              
-#endif
+Void rlcUtlRemovTxBuf(CmLListCp *txBufLst,RlcTx  *txBuf,RlcCb *gCb)
 {
    uint32_t            hashKey; 
    CmLListCp           *txBufLstCp;