X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Fkw_utl_ul.c;h=b8a56f479c9a6152dfdb1a5e6b5764abea5a1c3a;hb=b9a6860b8d95b57307e3e30b95642c83a762241e;hp=6472e15a5eca9b30bb92268724e6808ffb25cbc0;hpb=3f340f5742e5c7c92b8541479ee7f2d670200cfb;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/kw_utl_ul.c b/src/5gnrrlc/kw_utl_ul.c index 6472e15a5..b8a56f479 100755 --- a/src/5gnrrlc/kw_utl_ul.c +++ b/src/5gnrrlc/kw_utl_ul.c @@ -120,7 +120,7 @@ uint8_t rlcUtlRcvFrmMac(RlcCb *gCb, KwDatIndInfo *datIndInfo) { if(datIndInfo->lchData[i].pdu.mBuf[j]) { - RLC_FREE_BUF_WC(datIndInfo->lchData[i].pdu.mBuf[j]); + ODU_PUT_MSG_BUF(datIndInfo->lchData[i].pdu.mBuf[j]); } } } @@ -155,7 +155,7 @@ uint8_t rlcUtlRcvFrmMac(RlcCb *gCb, KwDatIndInfo *datIndInfo) { if(pduInfo->mBuf[j]) { - RLC_FREE_BUF_WC(pduInfo->mBuf[j]); + ODU_PUT_MSG_BUF(pduInfo->mBuf[j]); } } continue; @@ -221,7 +221,7 @@ uint8_t rlcUtlSendUlDataToDu(RlcCb *gCb, RlcUlRbCb *rbCb, Buffer *sdu) { DU_LOG("\nRLC : rlcUtlSendUlDataToDu: Memory allocation failed UEID:%d \ CELLID:%d", rbCb->rlcId.ueId, rbCb->rlcId.cellId); - RLC_FREE_BUF(sdu); + ODU_PUT_MSG_BUF(sdu); return RFAILED; } #endif /* ERRCLASS & ERRCLS_ADD_RES */ @@ -270,13 +270,13 @@ uint8_t rlcUtlSendUlDataToDu(RlcCb *gCb, RlcUlRbCb *rbCb, Buffer *sdu) } /* rlcUtlSendUlDataToDu */ -PRIVATE Void dumpRLCUlRbInformation(RlcUlRbCb* ulRbCb) +static Void dumpRLCUlRbInformation(RlcUlRbCb* ulRbCb) { if(ulRbCb->mode == CM_LTE_MODE_UM) { - U32 i; - U32 pdusInReceptionBuffer = 0; - U32 windSz = ulRbCb->m.umUl.umWinSz << 1; + uint32_t i; + uint32_t pdusInReceptionBuffer = 0; + uint32_t windSz = ulRbCb->m.umUl.umWinSz << 1; for(i = 0; i< windSz; i++) { @@ -294,10 +294,10 @@ PRIVATE Void dumpRLCUlRbInformation(RlcUlRbCb* ulRbCb) } else if(ulRbCb->mode == CM_LTE_MODE_AM) { - U32 i; - U32 pdusInReceptionBuffer = 0; - U32 totalSegs = 0; - U32 windSz = RLC_AM_GET_WIN_SZ(ulRbCb->m.amUl.snLen) << 1; + uint32_t i; + uint32_t pdusInReceptionBuffer = 0; + uint32_t totalSegs = 0; + uint32_t windSz = RLC_AM_GET_WIN_SZ(ulRbCb->m.amUl.snLen) << 1; for(i = 0; i< windSz; i++) { @@ -330,7 +330,7 @@ Void DumpRLCUlDebugInformation(Void) (PTR) ueCb, (PTR *)&ueCb)) { - U32 i; + uint32_t i; for(i = 0; i< RLC_MAX_SRB_PER_UE; i++) { RlcUlRbCb* ulRbCb = ueCb->srbCb[i]; @@ -375,7 +375,7 @@ Void DumpRLCUlDebugInformation(Void) */ S16 rlcUtlL2MeasUlInit(RlcCb *gCb) { - U16 cntr; + uint16_t cntr; gCb->u.ulCb->rlcL2Cb.rlcNumMeas=0; for(cntr = 0; cntr < LKW_MAX_L2MEAS; cntr++) @@ -400,21 +400,9 @@ S16 rlcUtlL2MeasUlInit(RlcCb *gCb) * @return Void * */ -#ifdef ANSI - Void rlcUtlCalUlIpThrPutIncTTI -( -RlcCb *gCb, -RlcUlRbCb *rbCb, -U32 ttiCnt -) -#else -Void rlcUtlCalUlIpThrPutIncTTI(gCb, rbCb, ttiCnt) -RlcCb *gCb; -RlcUlRbCb *rbCb; -U32 ttiCnt; -#endif +Void rlcUtlCalUlIpThrPutIncTTI(RlcCb *gCb,RlcUlRbCb *rbCb,uint32_t ttiCnt) { - VOLATILE U32 startTime = 0; + volatile uint32_t startTime = 0; /*starting Task*/ SStartTask(&startTime, PID_RLC_IP_TPT_INCTTI); @@ -478,24 +466,16 @@ U32 ttiCnt; * @return Void * */ -#ifdef ANSI - Void rlcUtlCalUlIpThrPut +Void rlcUtlCalUlIpThrPut ( -RlcCb *gCb, -RlcUlRbCb *rbCb, -Buffer *pdu, -U32 ttiCnt +RlcCb *gCb, +RlcUlRbCb *rbCb, +Buffer *pdu, +uint32_t ttiCnt ) -#else -Void rlcUtlCalUlIpThrPut(gCb, rbCb, pdu, ttiCnt) - RlcCb *gCb; - RlcUlRbCb *rbCb; - Buffer *pdu; - U32 ttiCnt; -#endif { MsgLen rlcSduSz = 0; /*Holds length of Rlc Sdu*/ - VOLATILE U32 startTime = 0; + volatile uint32_t startTime = 0; /*starting Task*/ SStartTask(&startTime, PID_RLC_IP_TPT_INCVOL); @@ -533,21 +513,11 @@ Void rlcUtlCalUlIpThrPut(gCb, rbCb, pdu, ttiCnt) * -# ROK */ -#ifdef ANSI -S16 rlcUtlHdlL2TmrExp -( -RlcCb *gCb, -RlcL2MeasEvtCb *measEvtCb -) -#else -S16 rlcUtlHdlL2TmrExp(measEvtCb) -RlcCb *gCb; -RlcL2MeasEvtCb *measEvtCb; -#endif +S16 rlcUtlHdlL2TmrExp(RlcCb *gCb,RlcL2MeasEvtCb *measEvtCb) { #ifdef LTE_L2_MEAS_RLC - U16 qciIdx; + uint16_t qciIdx; RlcL2MeasCb *measCb; /* Clean up the RB data structures */ @@ -588,28 +558,17 @@ RlcL2MeasEvtCb *measEvtCb; * -# ROK */ -#ifdef ANSI -S16 rlcUtlSndUlL2MeasCfm -( -RlcCb *gCb, -RlcL2MeasEvtCb *measEvtCb -) -#else -S16 rlcUtlSndUlL2MeasCfm(gCb, measEvtCb) -RlcCb *gCb; -RlcL2MeasEvtCb *measEvtCb; -#endif +S16 rlcUtlSndUlL2MeasCfm(RlcCb *gCb,RlcL2MeasEvtCb *measEvtCb) { - U32 qciIdx; - RlcL2MeasCb *measCb; - RlcL2MeasCfmEvt measCfmEvt; - - U64 ulDataVol; - U64 ulTime; - U16 cntr; + uint32_t qciIdx; + RlcL2MeasCb *measCb; + RlcL2MeasCfmEvt measCfmEvt; + uint64_t ulDataVol; + uint64_t ulTime; + uint16_t cntr; /* Discard new changes starts */ - U8 qci = 0; - U32 cfmIdx =0; + uint8_t qci = 0; + uint32_t cfmIdx =0; /* Discard new changes ends */ /* kw006.201 ccpu00120058 emoved 64 bit compilation warning */ @@ -694,19 +653,7 @@ RlcL2MeasEvtCb *measEvtCb; * -# ROK */ -#ifdef ANSI -S16 rlcUtlSndUlL2MeasNCfm -( -RlcCb *gCb, -RlcL2MeasReqEvt *measReqEvt, -RlcL2MeasCfmEvt *measCfmEvt -) -#else -S16 rlcUtlSndUlL2MeasNCfm(gCb, measReqEvt, measCfmEvt) -RlcCb *gCb; -RlcL2MeasReqEvt *measReqEvt; -RlcL2MeasCfmEvt *measCfmEvt; -#endif +S16 rlcUtlSndUlL2MeasNCfm(RlcCb *gCb,RlcL2MeasReqEvt *measReqEvt,RlcL2MeasCfmEvt *measCfmEvt) { RlcMiLkwL2MeasCfm(&gCb->genCfg.lmPst, measCfmEvt); @@ -728,37 +675,28 @@ RlcL2MeasCfmEvt *measCfmEvt; * @param[out] numLCh Number of LCh in array lChId. **/ -#ifdef ANSI S16 rlcUtlValidateL2Meas ( RlcL2MeasReqEvt *measReqEvt, RlcL2MeasCfmEvt *measCfmEvt, -CmLteLcId *lChId, -U8 *numLCh +CmLteLcId *lChId, +uint8_t *numLCh ) -#else -S16 rlcUtlValidateL2Meas(measReqEvt, measCfmEvt, lChId, numLCh) -RlcL2MeasReqEvt *measReqEvt; -RlcL2MeasCfmEvt *measCfmEvt; -CmLteLcId *lChId; -U8 *numLCh; -#endif { - U8 measType; - S16 ret; - U8 qciIdx; - U8 qci; - U8 idx; - U8 *qciVal; - U8 numQci; + uint8_t measType; + S16 ret; + uint8_t qciIdx; + uint8_t qci; + uint8_t idx; + uint8_t *qciVal; + uint8_t numQci; RlcUlRbCb *rbCb; - - RlcUlUeCb *ueCb; + RlcUlUeCb *ueCb; RbCb **rbCbLst; - U8 rbIdx; - U8 lsbNibble = 0; - U8 msbNibble = 0; - U8 numFaild = 0; + uint8_t rbIdx; + uint8_t lsbNibble = 0; + uint8_t msbNibble = 0; + uint8_t numFaild = 0; idx = 0; rbCb = NULLP; @@ -830,7 +768,7 @@ U8 *numLCh; { qci = qciVal[qciIdx]; ret = cmHashListFind(&(rlcCb.rlcL2Cb.qciHlCp), - (U8 *)&qci, (U16)sizeof(qci), 0, (PTR *)&rbCb); + (uint8_t *)&qci, (uint16_t)sizeof(qci), 0, (PTR *)&rbCb); if(ret != ROK) { measCfmEvt->val.nonIpThMeas.measCfm[measCfmEvt->val.nonIpThMeas.numCfm].qci = qci; @@ -870,21 +808,11 @@ U8 *numLCh; }/* rlcUtlValidateL2Meas */ #endif -#ifdef ANSI -S16 rlcUtlValidateIpThL2Meas -( -RlcL2MeasReqEvt *measReqEvt, -RlcL2MeasCfmEvt *measCfmEvt -) -#else -S16 rlcUtlValidateIpThL2Meas(measReqEvt, measCfmEvt) -RlcL2MeasReqEvt *measReqEvt; -RlcL2MeasCfmEvt *measCfmEvt; -#endif +S16 rlcUtlValidateIpThL2Meas(RlcL2MeasReqEvt *measReqEvt,RlcL2MeasCfmEvt *measCfmEvt) { - U8 measType; - U8 lsbNibble = 0; - U8 msbNibble = 0; + uint8_t measType; + uint8_t lsbNibble = 0; + uint8_t msbNibble = 0; measType = measReqEvt->measReq.measType; /* Check for the range of measType */ @@ -928,24 +856,12 @@ RlcL2MeasCfmEvt *measCfmEvt; * * @return Void */ -#ifdef ANSI -Void rlcUtlResetUlL2MeasInRlcRb -( -RlcCb *gCb, -RlcL2MeasCb *measCb, -U8 measType -) -#else -Void rlcUtlResetUlL2MeasInRlcRb(measCb, measType) -RlcCb *gCb; -RlcL2MeasCb *measCb; -U8 measType; -#endif +Void rlcUtlResetUlL2MeasInRlcRb(RlcCb *gCb,RlcL2MeasCb *measCb,uint8_t measType) { - U32 rbIdx; - U32 ueIdx; - U32 qciIdx; + uint32_t rbIdx; + uint32_t ueIdx; + uint32_t qciIdx; RlcUlUeCb *ueCb = NULL; @@ -999,19 +915,7 @@ U8 measType; * @return S16 * -# ROK */ -#ifdef ANSI -Void rlcUtlPlcMeasDatInL2Sts -( -RlcL2Cntr *measData, -RlcL2MeasRbCb *rbL2Cb, -U8 measType -) -#else -Void rlcUtlPlcMeasDatInL2Sts(measData, rbL2Cb, measType) -RlcL2Cntr *measData; -RlcL2MeasRbCb *rbL2Cb; -U8 measType; -#endif +Void rlcUtlPlcMeasDatInL2Sts(RlcL2Cntr *measData,RlcL2MeasRbCb *rbL2Cb,uint8_t measType) { /* We should check the number of measType in the request. This can be done * by looking at each bit in the measType. Also store the measData in the @@ -1089,7 +993,7 @@ RlcAmRecBuf* rlcUtlGetRecBuf(CmLListCp *recBufLst, RlcSn sn) { uint32_t hashKey; CmLListCp *recBufLstCp; - RlcAmRecBuf *recBuf; + RlcAmRecBuf *recBuf; CmLList *node = NULLP; hashKey = (sn % RLC_RCV_BUF_BIN_SIZE ); @@ -1106,7 +1010,7 @@ RlcAmRecBuf* rlcUtlGetRecBuf(CmLListCp *recBufLst, RlcSn sn) CM_LLIST_NEXT_NODE(recBufLstCp, node); } return NULLP; -} /* rlcUtlStoreRecBuf */ +} /* rlcUtlGetRecBuf */ /** * * @brief Delete the UL buffer from the list @@ -1123,19 +1027,81 @@ RlcAmRecBuf* rlcUtlGetRecBuf(CmLListCp *recBufLst, RlcSn sn) */ void rlcUtlDelRecBuf(CmLListCp *recBufLst, RlcAmRecBuf *recBuf, RlcCb *gCb) { - uint32_t hashKey; + uint32_t hashKey; CmLListCp *recBufLstCp; hashKey = (recBuf->amHdr.sn % RLC_RCV_BUF_BIN_SIZE ); recBufLstCp = &recBufLst[hashKey]; cmLListDelFrm(recBufLstCp, &recBuf->lnk); - RLC_FREE_WC(gCb, recBuf, sizeof(RlcAmRecBuf)); + RLC_FREE(gCb, recBuf, sizeof(RlcAmRecBuf)); return; } /* rlcUtlDelRecBuf */ +#ifdef NR_RLC_UL +/** + * + * @brief Store the UL buffer in hashList + * + * + * @b Description + * + * Use the SN % binSize as key and store the received UL buffer + * @param[in] recBufLst List CP array + * @param[in] recBuf received buffer + * @param[in] sn sn of the received buffer + * + * + * @return Void + */ +void rlcUtlStoreUmRecBuf(CmLListCp *recBufLst, RlcUmRecBuf *recBuf, RlcSn sn) +{ + uint32_t hashKey; + + hashKey = (sn % RLC_RCV_BUF_BIN_SIZE ); + recBuf->lnk.node = (PTR)recBuf; + cmLListAdd2Tail(&(recBufLst[hashKey]), &recBuf->lnk); + + return; +} /* rlcUtlStoreUmRecBuf */ +/** + * + * @brief Retrieve the UL buffer from the list + * + * + * @Description + * + * Use the SN % binSize as key and retrieve the UL buffer + * @param[in] recBufLst List CP array + * @param[in] sn sn of the received buffer + * + * + * @return Void + */ +RlcUmRecBuf* rlcUtlGetUmRecBuf(CmLListCp *recBufLst, RlcSn sn) +{ + uint32_t hashKey; + CmLListCp *recBufLstCp; + RlcUmRecBuf *recBuf; + CmLList *node = NULLP; + hashKey = (sn % RLC_RCV_BUF_BIN_SIZE ); + + recBufLstCp = &recBufLst[hashKey]; + CM_LLIST_FIRST_NODE(recBufLstCp, node); + while(node) + { + recBuf = (RlcUmRecBuf *) node->node; + if(recBuf->umHdr.sn == sn) + { + return recBuf; + } + CM_LLIST_NEXT_NODE(recBufLstCp, node); + } + return NULLP; +} /* rlcUtlGetUmRecBuf */ +#endif /********************************************************************30**