X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Fkw_cfg_dl.c;h=4e58f68c686e738151809e57ded3439220387959;hb=refs%2Fchanges%2F91%2F5391%2F11;hp=1d636d43169a563b8865d5fa88e5233a16cfc31e;hpb=0a26c487f1b6bbb5217e47b15fa8273b2e749283;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/kw_cfg_dl.c b/src/5gnrrlc/kw_cfg_dl.c index 1d636d431..4e58f68c6 100755 --- a/src/5gnrrlc/kw_cfg_dl.c +++ b/src/5gnrrlc/kw_cfg_dl.c @@ -82,12 +82,12 @@ static int RLOG_FILE_ID=191; * -# RFAILED * */ -PRIVATE S16 rlcHdlMeasDlUeIdChg(RlcCb *gCb, U8 cellId,U8 oldUeId, U8 newUeId) +static S16 rlcHdlMeasDlUeIdChg(RlcCb *gCb, uint8_t cellId,uint8_t oldUeId, uint8_t newUeId) { RlcL2MeasEvtCb *measEvtCb = NULLP; RlcL2MeasCb *measCb = NULLP; - U16 cntr; - U16 ueIdx = 0; + uint16_t cntr; + uint16_t ueIdx = 0; for(cntr = 0; cntr < LKW_MAX_L2MEAS; cntr++) { @@ -123,12 +123,12 @@ PRIVATE S16 rlcHdlMeasDlUeIdChg(RlcCb *gCb, U8 cellId,U8 oldUeId, U8 newUeId) * -# RFAILED * */ -PRIVATE S16 rlcDelFrmDlL2Meas(RlcCb *gCb, U8 cellId,U8 ueId) +static S16 rlcDelFrmDlL2Meas(RlcCb *gCb, uint8_t cellId,uint8_t ueId) { RlcL2MeasEvtCb *measEvtCb = NULLP; RlcL2MeasCb *measCb = NULLP; - U16 cntr; - U16 ueIdx = 0; + uint16_t cntr; + uint16_t ueIdx = 0; for(cntr = 0; cntr < LKW_MAX_L2MEAS; cntr++) @@ -160,19 +160,19 @@ PRIVATE S16 rlcDelFrmDlL2Meas(RlcCb *gCb, U8 cellId,U8 ueId) } -PRIVATE S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,U8 cellId,U8 ueId) +static S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,uint8_t cellId,uint8_t ueId) { RlcL2MeasEvtCb *measEvtCb = NULLP; RlcL2MeasCb *measCb = NULLP; - U16 cntr; - U16 cntr1; - U16 ueIdx = 0; - U16 qciIdx = 0; - U16 *numQci; + uint16_t cntr; + uint16_t cntr1; + uint16_t ueIdx = 0; + uint16_t qciIdx = 0; + uint16_t *numQci; #ifndef XEON_SPECIFIC_CHANGES - U8 freeIdx = gCb->genCfg.maxUe; + uint8_t freeIdx = gCb->genCfg.maxUe; #else - U16 freeIdx = LKW_MAX_UE; + uint16_t freeIdx = LKW_MAX_UE; #endif @@ -202,7 +202,7 @@ PRIVATE S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,U8 cellId,U8 ueId) { if (measCb->measType & LKW_L2MEAS_ACT_UE) { - if((rlcRbCb->mode == CM_LTE_MODE_UM) && + if((rlcRbCb->mode == RLC_MODE_UM) && (rlcRbCb->dir & RLC_DIR_DL )) { if (rlcRbCb->m.umDl.sduQ.count) @@ -214,7 +214,7 @@ PRIVATE S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,U8 cellId,U8 ueId) } } } - else if (rlcRbCb->mode == CM_LTE_MODE_AM) + else if (rlcRbCb->mode == RLC_MODE_AM) { if ((rlcRbCb->m.amDl.cntrlBo) || (rlcRbCb->m.amDl.retxBo) || @@ -262,7 +262,7 @@ PRIVATE S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,U8 cellId,U8 ueId) ueIdx = freeIdx; } measCb->val.ipThMeas.ueInfoLst[ueIdx].isValid = TRUE; - cmMemset((U8 *)&measCb->val.ipThMeas.ueInfoLst[ueIdx].measData[0],0x00,(sizeof(RlcL2Cntr) *LKW_MAX_QCI)); + memset(&measCb->val.ipThMeas.ueInfoLst[ueIdx].measData[0],0x00,(sizeof(RlcL2Cntr) *LKW_MAX_QCI)); measCb->val.ipThMeas.ueInfoLst[ueIdx].numQci = 0; } measCb->val.ipThMeas.ueInfoLst[ueIdx].ueId = ueId; @@ -315,23 +315,8 @@ PRIVATE S16 rlcAddToDlL2Meas(RlcCb *gCb, RlcDlRbCb *rlcRbCb,U8 cellId,U8 ueId) * -#ROK * -#RFAILED */ -#ifdef ANSI -PRIVATE S16 rlcCfgFillDlRbCb -( -RlcCb *gCb, -RlcDlRbCb *rbCb, -RlcDlUeCb *ueCb, -RlcEntCfgInfo *entCfg -) -#else -PRIVATE S16 rlcCfgFillDlRbCb(gCb,rbCb,entCfg) -RlcCb *gCb; -RlcDlRbCb *rbCb; -RlcDlUeCb *ueCb; -RlcEntCfgInfo *entCfg; -#endif +static S16 rlcCfgFillDlRbCb(RlcCb *gCb,RlcDlRbCb *rbCb,RlcDlUeCb *ueCb,RlcEntCfgInfo *entCfg) { - TRC3(rlcCfgFillDlRbCb) RLOG_ARG3(L_DEBUG,DBG_RBID,entCfg->rbId, "rlcCfgFillRbCb(ueId(%d),cellId(%d) rbType(%d))", @@ -342,7 +327,7 @@ RlcEntCfgInfo *entCfg; /* Initialize according to entMode */ switch (entCfg->entMode) { - case CM_LTE_MODE_TM: + case RLC_MODE_TM: { rbCb->lch.lChId = entCfg->lCh[0].lChId; rbCb->lch.lChType = entCfg->lCh[0].type; @@ -350,22 +335,30 @@ RlcEntCfgInfo *entCfg; break; } - case CM_LTE_MODE_UM: + case RLC_MODE_UM: { rbCb->lch.lChId = entCfg->lCh[0].lChId; rbCb->lch.lChType = entCfg->lCh[0].type; rbCb->dir = entCfg->dir; + + /* Spec 38.322 Section 7.1 + * All UM state variables can take values from 0 to 63 for 6 bit SN or + * from 0 to 4095 for 12 bit SN. All arithmetic operations on UM state + * variables are affected by the UM modulus + * (i.e. final value = [value from arithmetic operation] modulo 64 + * for 6 bit SN and 4096 for 12 bit SN) + */ rbCb->m.umDl.snLen = entCfg->m.umInfo.dl.snLen; - if (entCfg->m.umInfo.dl.snLen == RLC_UM_CFG_5BIT_SN_LEN) - rbCb->m.umDl.modBitMask = 0x1f; + if (entCfg->m.umInfo.dl.snLen == RLC_UM_CFG_6BIT_SN_LEN) + rbCb->m.umDl.modBitMask = 0x3f; else - rbCb->m.umDl.modBitMask = 0x3ff; + rbCb->m.umDl.modBitMask = 0xfff; ueCb->lCh[rbCb->lch.lChId - 1].dlRbCb = rbCb; break; } - case CM_LTE_MODE_AM: + case RLC_MODE_AM: { /* Down Link Information * indx = 0 as Down Link */ @@ -393,7 +386,7 @@ RlcEntCfgInfo *entCfg; ueCb->lCh[rbCb->lch.lChId - 1].dlRbCb = rbCb; #ifndef LTE_TDD - U32 hashIndex; + uint32_t hashIndex; RLC_ALLOC(gCb, rbCb->m.amDl.txBufLst, (RLC_TX_BUF_BIN_SIZE * sizeof(CmLListCp))); @@ -432,23 +425,14 @@ RlcEntCfgInfo *entCfg; * -#ROK * -#RFAILED */ -#ifdef ANSI -PRIVATE S16 rlcCfgUpdateDlRb +static S16 rlcCfgUpdateDlRb ( -RlcCb *gCb, -RlcDlRbCb *rbCb, +RlcCb *gCb, +RlcDlRbCb *rbCb, void *ptr, RlcEntCfgInfo *entCfg ) -#else -PRIVATE S16 rlcCfgUpdateDlRb(gCb,rbCb, ptr, entCfg) -RlcCb *gCb; -RlcDlRbCb *rbCb; -void *ptr; -RlcEntCfgInfo *entCfg; -#endif { - TRC3(rlcCfgUpdateDlRb) if (rbCb->mode != entCfg->entMode) { @@ -463,7 +447,7 @@ RlcEntCfgInfo *entCfg; switch (rbCb->mode) { - case CM_LTE_MODE_TM: + case RLC_MODE_TM: { RlcDlCellCb *cellCb = (RlcDlCellCb *)ptr; @@ -475,7 +459,7 @@ RlcEntCfgInfo *entCfg; break; } - case CM_LTE_MODE_UM: + case RLC_MODE_UM: { RlcDlUeCb *ueCb = (RlcDlUeCb *)ptr; @@ -492,7 +476,7 @@ RlcEntCfgInfo *entCfg; break; } - case CM_LTE_MODE_AM: + case RLC_MODE_AM: { RlcDlUeCb *ueCb = (RlcDlUeCb *)ptr; @@ -548,7 +532,6 @@ RlcEntCfgInfo *entCfg; * -# ROK * -# RFAILED */ -#ifdef ANSI S16 rlcCfgAddDlRb ( RlcCb *gCb, @@ -557,21 +540,11 @@ CmLteCellId cellId, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgAddDlRb(gCb,ueId, cellId, entCfg, entCfm) -RlcCb *gCb; -CmLteRnti ueId; -CmLteCellId cellId; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { RlcDlUeCb *ueCb = NULLP; /* UE Control Block */ RlcDlCellCb *cellCb; /* Cell Control Block */ RlcDlRbCb *rlcRbCb; /* KW RB Control Block */ - U8 reason; /* Rb Identifier */ - - TRC3(rlcCfgAddDlRb) + uint8_t reason; /* Rb Identifier */ RLOG_ARG3(L_DEBUG,DBG_RBID,entCfg->rbId, "rlcCfgAddRb(cellId(%d),UEID:%d cfgType(%d))", @@ -617,7 +590,7 @@ RlcEntCfgCfmInfo *entCfm; if (((entCfg->lCh[0].type == CM_LTE_LCH_BCCH) || (entCfg->lCh[0].type == CM_LTE_LCH_PCCH) || (entCfg->lCh[0].type == CM_LTE_LCH_CCCH)) && - (entCfg->entMode == CM_LTE_MODE_TM)) + (entCfg->entMode == RLC_MODE_TM)) { /* Cell CB present */ rlcDbmFetchDlCellCb(gCb, cellId, &cellCb); @@ -688,7 +661,7 @@ RlcEntCfgCfmInfo *entCfm; } else { - reason= (entCfg->entMode != CM_LTE_MODE_TM)? CKW_CFG_REAS_RB_MODE_MIS: + reason= (entCfg->entMode != RLC_MODE_TM)? CKW_CFG_REAS_RB_MODE_MIS: CKW_CFG_REAS_LCHTYPE_MIS; /* Fill entCfm structure */ RLC_CFG_FILL_CFG_CFM(entCfm, entCfg->rbId, entCfg->rbType, @@ -710,11 +683,11 @@ RlcEntCfgCfmInfo *entCfm; return RFAILED; } if ((((entCfg->lCh[0].type == CM_LTE_LCH_DCCH) && - (entCfg->entMode != CM_LTE_MODE_UM) && + (entCfg->entMode != RLC_MODE_UM) && (CM_LTE_SRB == entCfg->rbType)) || ((entCfg->lCh[0].type == CM_LTE_LCH_DTCH) && (CM_LTE_DRB == entCfg->rbType))) && - (entCfg->entMode != CM_LTE_MODE_TM)) + (entCfg->entMode != RLC_MODE_TM)) { /* UE CB present */ if ( rlcDbmFetchDlUeCb(gCb,ueId, cellId, &ueCb) == ROK) @@ -752,7 +725,7 @@ RlcEntCfgCfmInfo *entCfm; /* Validate LChId for UM and AM modes */ if ((entCfg->lCh[0].lChId <= 0) || - ((entCfg->entMode == CM_LTE_MODE_AM)&& + ((entCfg->entMode == RLC_MODE_AM)&& (entCfg->lCh[1].lChId <= 0))) { /* Fill entCfm structure */ @@ -787,7 +760,7 @@ RlcEntCfgCfmInfo *entCfm; } else { - if (entCfg->entMode == CM_LTE_MODE_TM) + if (entCfg->entMode == RLC_MODE_TM) { reason = CKW_CFG_REAS_RB_MODE_MIS; } @@ -875,7 +848,6 @@ RlcEntCfgCfmInfo *entCfm; * -#ROK * -#RFAILED */ -#ifdef ANSI S16 rlcCfgReCfgDlRb ( RlcCb *gCb, @@ -884,22 +856,12 @@ CmLteCellId cellId, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgReCfgDlRb(gCb,ueId, cellId, entCfg, entCfm) -RlcCb *gCb; -CmLteRnti ueId; -CmLteCellId cellId; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { RlcDlRbCb *rbCb; /* RB Control Block */ RlcDlRbCb tRbCb; /* KW RB Control Block */ RlcDlCellCb *cellCb; /* Cell Control Block */ RlcDlUeCb *ueCb; /* Ue Control Block */ - U8 ret; - - TRC3(rlcCfgReCfgDlRb) + uint8_t ret; RLOG_ARG3(L_DEBUG,DBG_UEID,ueId, "rlcCfgReCfgRb(cellId(%d), cfgType(%d)) RBID:%d", @@ -954,7 +916,7 @@ RlcEntCfgCfmInfo *entCfm; /* Take backup of rbCb before updating. * Because in failure case restore original rbCb */ - cmMemcpy((U8 *)&tRbCb, (U8 *)rbCb, sizeof(RlcDlRbCb)); + memcpy(&tRbCb, rbCb, sizeof(RlcDlRbCb)); /* Update rbCb */ ret = rlcCfgUpdateDlRb(gCb,rbCb, cellCb,entCfg); @@ -971,7 +933,7 @@ RlcEntCfgCfmInfo *entCfm; "CELLID:%u RBID:%d updation failed", cellId, entCfg->rbId); - cmMemcpy((U8*)rbCb, (U8 *)&tRbCb, sizeof(RlcDlRbCb)); + memcpy(rbCb, &tRbCb, sizeof(RlcDlRbCb)); return (ret); } @@ -1022,7 +984,7 @@ RlcEntCfgCfmInfo *entCfm; /* Take backup of rbCb before updating. * Because in failure case restore original rbCb */ - cmMemcpy((U8 *)&tRbCb, (U8 *)rbCb, sizeof(RlcDlRbCb)); + memcpy(&tRbCb, rbCb, sizeof(RlcDlRbCb)); /* Update rbCb */ ret = rlcCfgUpdateDlRb(gCb,rbCb,ueCb, entCfg); @@ -1035,7 +997,7 @@ RlcEntCfgCfmInfo *entCfm; "CELLID:%d RBID:%d updation failed", cellId, entCfg->rbId); - cmMemcpy((U8*)rbCb, (U8 *)&tRbCb, sizeof(RlcDlRbCb)); + memcpy(rbCb, &tRbCb, sizeof(RlcDlRbCb)); return (ret); } @@ -1078,7 +1040,6 @@ RlcEntCfgCfmInfo *entCfm; * -#ROK * -#RFAILED */ -#ifdef ANSI S16 rlcCfgDelDlRb ( RlcCb *gCb, @@ -1087,22 +1048,12 @@ CmLteCellId cellId, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgDelRb(gCb,ueId, cellId, entCfg, entCfm) -RlcCb *gCb; -CmLteRnti ueId; -CmLteCellId cellId; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { S16 ret; /* Return Value */ RlcDlUeCb *ueCb; /* UE Control Block */ RlcDlCellCb *cellCb; /* UE Control Block */ RlcDlRbCb *rlcRbCb; /* KW RB Control Block */ - TRC3(rlcCfgDelDlRb) - RLOG_ARG3(L_DEBUG,DBG_UEID,ueId, "rlcCfgDelRb(RBID(%d), cellId(%d), cfgType(%d))", entCfg->rbId, @@ -1214,13 +1165,13 @@ RlcEntCfgCfmInfo *entCfm; RLC_UPD_L2_DECR_NONIP_PER_QCI_RB_COUNT(gCb, rlcRbCb); #endif /* Free the Buffers of RbCb */ - if( CM_LTE_MODE_UM == rlcRbCb->mode) + if( RLC_MODE_UM == rlcRbCb->mode) { rlcUmmFreeDlRbCb(gCb,rlcRbCb); /* Delete RbCb */ RLC_FREE(gCb,rlcRbCb, sizeof(RlcDlRbCb)); } - else if( CM_LTE_MODE_AM == rlcRbCb->mode) + else if( RLC_MODE_AM == rlcRbCb->mode) { rlcAmmFreeDlRbCb(gCb,rlcRbCb); } @@ -1274,31 +1225,19 @@ RlcEntCfgCfmInfo *entCfm; * -# ROK * -# RFAILED */ -#ifdef ANSI S16 rlcCfgReEstDlRb ( -RlcCb *gCb, +RlcCb *gCb, CmLteRnti ueId, CmLteCellId cellId, Bool sndReEstInd, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgReEstDlRb(gCb,ueId, cellId,sndReEstInd,entCfg, entCfm) -RlcCb *gCb; -CmLteRnti ueId; -CmLteCellId cellId; -Bool sndReEstInd; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { RlcDlRbCb *rbCb; /* RB Control Block */ CmLteRlcId rlcId; /* RLC Identifier */ - TRC3(rlcCfgReEstDlRb) - RLOG_ARG3(L_DEBUG,DBG_RBID,entCfg->rbId, "rlcCfgReEstDlRb(ueId(%d), cellId(%d), cfgType(%d))", ueId, @@ -1328,19 +1267,19 @@ RlcEntCfgCfmInfo *entCfm; switch (rbCb->mode) { - case CM_LTE_MODE_TM: + case RLC_MODE_TM: { rlcDlTmmReEstablish(gCb,rbCb); break; } - case CM_LTE_MODE_UM: + case RLC_MODE_UM: { rlcDlUmmReEstablish(gCb,rlcId,sndReEstInd,rbCb); break; } - case CM_LTE_MODE_AM: + case RLC_MODE_AM: { rlcAmmDlReEstablish(gCb, rlcId, rbCb); break; @@ -1377,29 +1316,18 @@ RlcEntCfgCfmInfo *entCfm; * -#ROK * -#RFAILED */ -#ifdef ANSI S16 rlcCfgDelDlUe ( -RlcCb *gCb, +RlcCb *gCb, CmLteRnti ueId, CmLteCellId cellId, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgDelDlUe(ueId, cellId, entCfg, entCfm) -RlcCb *gCb; -CmLteRnti ueId; -CmLteCellId cellId; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { S16 ret; /* Return Value */ RlcDlUeCb *ueCb; /* UE Control Block */ - TRC3(rlcCfgDelUe) - RLOG_ARG3(L_DEBUG,DBG_RBID,entCfg->rbId, "rlcCfgDelUe(ueId(%d), cellId(%d), cfgType(%d))", ueId, @@ -1470,7 +1398,6 @@ RlcEntCfgCfmInfo *entCfm; * -#ROK * -#RFAILED */ -#ifdef ANSI S16 rlcCfgDelDlCell ( RlcCb *gCb, @@ -1478,18 +1405,9 @@ CmLteCellId cellId, RlcEntCfgInfo *entCfg, RlcEntCfgCfmInfo *entCfm ) -#else -S16 rlcCfgDelCell(gCb,cellId, entCfg, entCfm) -RlcCb *gCb; -CmLteCellId cellId; -RlcEntCfgInfo *entCfg; -RlcEntCfgCfmInfo *entCfm; -#endif { RlcDlCellCb *cellCb; /* UE Control Block */ - U8 rbId; /* RB Identifier */ - - TRC3(rlcCfgDelCell) + uint8_t rbId; /* RB Identifier */ RLOG_ARG2(L_DEBUG,DBG_RBID,entCfg->rbId, "rlcCfgDelCell( cellId(%d), cfgType(%d)", @@ -1556,7 +1474,6 @@ RlcEntCfgCfmInfo *entCfm; * -# ROK * -# RFAILED */ -#ifdef ANSI S16 rlcCfgDlUeIdChng ( RlcCb *gCb, @@ -1564,17 +1481,9 @@ CkwUeInfo *ueInfo, CkwUeInfo *newUeInfo, CmStatus *status ) -#else -S16 rlcCfgDlUeIdChng(gCb,ueInfo,newUeInfo,status) -RlcCb *gCb; -CkwUeInfo *ueInfo; -CkwUeInfo *newUeInfo; -CmStatus *status; -#endif { RlcDlUeCb *ueCb; /*kw004.201 Adding of Missing Trace in LTE RLC PDCP*/ - TRC3(rlcCfgUeIdChng) if ( (ueInfo->ueId == newUeInfo->ueId) && (ueInfo->cellId == newUeInfo->cellId)) @@ -1627,8 +1536,8 @@ CmStatus *status; ueCb->cellId = newUeInfo->cellId; if(ROK != cmHashListInsert(&(gCb->u.dlCb->ueLstCp), - (PTR)ueCb, (U8 *)&(ueCb->ueId), - (U16) sizeof(CmLteRnti))) + (PTR)ueCb, (uint8_t *)&(ueCb->ueId), + (uint16_t) sizeof(CmLteRnti))) { RLOG_ARG1(L_ERROR,DBG_CELLID,newUeInfo->cellId,