X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrsch%2Frg_sch_uhm.c;h=3e1e6ff3658236bc36b75e0ae4df8d99d77f8cc0;hb=def50dc175cebc67238db5f1acd5ff322a2279bd;hp=a23f1fbe30c7d0e3e780b72830b0969a5e3b0531;hpb=5ea4c59cb4dd37164953218b0bd355284e11d22c;p=o-du%2Fl2.git diff --git a/src/5gnrsch/rg_sch_uhm.c b/src/5gnrsch/rg_sch_uhm.c index a23f1fbe3..3e1e6ff36 100755 --- a/src/5gnrsch/rg_sch_uhm.c +++ b/src/5gnrsch/rg_sch_uhm.c @@ -33,19 +33,7 @@ */ /* header include files -- defines (.h) */ -#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 "cm_lte.h" /* Common LTE */ -#include "cm_tkns.h" /* Common Token Defines */ -#include "cm_llist.h" /* Common Link List Defines */ -#include "cm_hash.h" /* Common Hash List Defines */ -#include "cm_mblk.h" /* memory management */ - +#include "common_def.h" #include "rg_env.h" /* MAC Environment Defines */ #include "tfu.h" /* TFU Interface defines */ #include "rgr.h" /* RGR Interface defines */ @@ -56,15 +44,6 @@ #include "rg_sch_err.h" /* MAC error defines */ /* header/extern include files (.x) */ -#include "gen.x" /* general */ -#include "ssi.x" /* system services */ -#include "cm5.x" /* system services */ -#include "cm_lte.x" /* Common LTE */ -#include "cm_tkns.x" /* Common Token Definitions */ -#include "cm_llist.x" /* Common Link List Definitions */ -#include "cm_lib.x" /* Common Library Definitions */ -#include "cm_hash.x" /* Common Hash List Definitions */ -#include "cm_mblk.x" /* memory management */ #include "tfu.x" /* TFU Interface defines */ #include "rgr.x" /* RGR Interface includes */ @@ -84,23 +63,23 @@ /* forward references */ #ifdef EMTC_ENABLE - U32 gUlRetxPassCntr = 0; - /*EXTERN U32 gUlRetxFailCntr; - EXTERN U32 gUlCrcPassCounter; - EXTERN U32 gUlCrcFailCounter;*/ + uint32_t gUlRetxPassCntr = 0; + /*EXTERN uint32_t gUlRetxFailCntr; + EXTERN uint32_t gUlCrcPassCounter; + EXTERN uint32_t gUlCrcFailCounter;*/ #endif -PUBLIC U8 rgRvIdxTable[] = {0, 3, 1, 2}; /* This gives rvIdx for a given rv */ -PUBLIC U8 rgRvTable[] = {0, 2, 3 ,1}; /* This gives rv for a given rvIdx */ +uint8_t rgRvIdxTable[] = {0, 3, 1, 2}; /* This gives rvIdx for a given rv */ +uint8_t rgRvTable[] = {0, 2, 3 ,1}; /* This gives rv for a given rvIdx */ #ifdef EMTC_ENABLE -PUBLIC Void rgSCHCmnEmtcHdlHarqProcFail +Void rgSCHCmnEmtcHdlHarqProcFail ( RgSchCellCb *cell, RgSchUeCb *ue, RgSchUlHqProcCb *hqProc, CmLteTimingInfo frm ); -PUBLIC Void rgSCHEmtcInitUlUeHqEnt +Void rgSCHEmtcInitUlUeHqEnt ( RgSchCellCb *cell, RgrUeCfg *ueCfg, @@ -128,33 +107,33 @@ RgSchUeCb *ueCb **/ #ifndef MAC_SCH_STATS #ifdef ANSI -PUBLIC Void rgSCHUhmProcDatInd +Void rgSCHUhmProcDatInd ( RgSchCellCb *cell, RgSchUeCb *ue, CmLteTimingInfo frm ) #else -PUBLIC Void rgSCHUhmProcDatInd(cell, ue, frm) +Void rgSCHUhmProcDatInd(cell, ue, frm) RgSchCellCb *cell; RgSchUeCb *ue; CmLteTimingInfo frm; #endif #else /* MAC_SCH_STATS */ #ifdef ANSI -PUBLIC Void rgSCHUhmProcDatInd +Void rgSCHUhmProcDatInd ( RgSchCellCb *cell, RgSchUeCb *ue, CmLteTimingInfo frm, -U8 cqi +uint8_t cqi ) #else -PUBLIC Void rgSCHUhmProcDatInd(cell, ue, frm, cqi) +Void rgSCHUhmProcDatInd(cell, ue, frm, cqi) RgSchCellCb *cell; RgSchUeCb *ue; CmLteTimingInfo frm; -U8 cqi; +uint8_t cqi; #endif #endif /* MAC_SCH_STATS */ { @@ -162,18 +141,16 @@ U8 cqi; #ifdef UL_LA RgSchCmnUlUe *ueUl = RG_SCH_CMN_GET_UL_UE(ue, cell); S32 iTbs; - U8 maxiTbs = rgSchCmnUlCqiToTbsTbl[cell->isCpUlExtend] + uint8_t maxiTbs = rgSchCmnUlCqiToTbsTbl[cell->isCpUlExtend] [ueUl->maxUlCqi]; #endif - TRC2(rgSCHUhmProcDatInd); - rgSCHUtlUlHqProcForUe(cell, frm, ue, &hqProc); if (hqProc == NULLP) { printf("UE[%d] failed to find UL HqProc for [%d:%d]\n", ue->ueId, frm.sfn, frm.slot); - RETVOID; + return; } hqProc->rcvdCrcInd = TRUE; @@ -208,7 +185,7 @@ U8 cqi; } #endif - RETVOID; + return; } /* rgSCHUhmProcDatInd */ /** @@ -227,20 +204,19 @@ U8 cqi; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmProcMsg3DatInd +Void rgSCHUhmProcMsg3DatInd ( RgSchUlHqProcCb *hqProc ) #else -PUBLIC Void rgSCHUhmProcMsg3DatInd(hqProc) +Void rgSCHUhmProcMsg3DatInd(hqProc) RgSchUlHqProcCb *hqProc; #endif { - TRC2(rgSCHUhmProcMsg3DatInd); hqProc->rcvdCrcInd = TRUE; hqProc->remTx = 0; /*Reseting the value of rem Tx*/ printf("\nrgSCHUhmProcMsg3DatInd,id:%u\n",hqProc->procId); - RETVOID; + return; } /* rgSCHUhmProcMsg3DatInd */ /** @@ -259,16 +235,15 @@ RgSchUlHqProcCb *hqProc; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmProcMsg3Failure +Void rgSCHUhmProcMsg3Failure ( RgSchUlHqProcCb *hqProc ) #else -PUBLIC Void rgSCHUhmProcMsg3Failure(hqProc) +Void rgSCHUhmProcMsg3Failure(hqProc) RgSchUlHqProcCb *hqProc; #endif { - TRC2(rgSCHUhmProcMsg3Failure); #ifdef EMTC_ENABLE RG_SCH_EMTC_IS_CRCIND_RCVD_CHK_RACB(hqProc); #endif @@ -277,7 +252,7 @@ RgSchUlHqProcCb *hqProc; hqProc->rcvdCrcInd = FALSE; } - RETVOID; + return; } /* rgSCHUhmProcMsg3Failure */ /** @@ -302,37 +277,37 @@ RgSchUlHqProcCb *hqProc; **/ #ifndef MAC_SCH_STATS #ifdef ANSI -PUBLIC Void rgSCHUhmProcHqFailure +Void rgSCHUhmProcHqFailure ( RgSchCellCb *cell, RgSchUeCb *ue, CmLteTimingInfo frm, -TknU8 rv +TknUInt8 rv ) #else -PUBLIC Void rgSCHUhmProcHqFailure(cell, ue, frm, rv) +Void rgSCHUhmProcHqFailure(cell, ue, frm, rv) RgSchCellCb *cell; RgSchUeCb *ue; CmLteTimingInfo frm; -TknU8 rv; +TknUInt8 rv; #endif #else /* MAC_SCH_STATS */ #ifdef ANSI -PUBLIC Void rgSCHUhmProcHqFailure +Void rgSCHUhmProcHqFailure ( RgSchCellCb *cell, RgSchUeCb *ue, CmLteTimingInfo frm, -TknU8 rv, -U8 cqi +TknUInt8 rv, +uint8_t cqi ) #else -PUBLIC Void rgSCHUhmProcHqFailure(cell, ue, frm, rv, cqi) +Void rgSCHUhmProcHqFailure(cell, ue, frm, rv, cqi) RgSchCellCb *cell; RgSchUeCb *ue; CmLteTimingInfo frm; -TknU8 rv; -U8 cqi; +TknUInt8 rv; +uint8_t cqi; #endif #endif /* MAC_SCH_STATS */ { @@ -341,14 +316,13 @@ U8 cqi; RgSchCmnUlUe *ueUl = RG_SCH_CMN_GET_UL_UE(ue,cell); S32 iTbs; #endif - TRC2(rgSCHUhmProcHqFailure); rgSCHUtlUlHqProcForUe(cell, frm, ue, &hqProc); if (hqProc == NULLP) { printf("UE[%d] failed to find UL HqProc for [%d:%d]\n", ue->ueId, frm.sfn, frm.slot); - RETVOID; + return; } #ifdef UL_LA { @@ -365,7 +339,7 @@ U8 cqi; #ifdef MAC_SCH_STATS /** Stats update over here */ { - static U32 retxCnt = 0; + static uint32_t retxCnt = 0; ++retxCnt; hqFailStats.ulCqiStat[cqi - 1].numOfNacks++; } @@ -386,7 +360,7 @@ U8 cqi; { hqProc->rvIdxPhy.val = rgRvIdxTable[rv.val]; } - RETVOID; + return; } /* rgSCHUhmProcHqFailure */ /** @@ -408,29 +382,28 @@ U8 cqi; * -# NULL **/ #ifdef ANSI -PUBLIC RgSchUlHqProcCb* rgSCHUhmGetUlHqProc +RgSchUlHqProcCb* rgSCHUhmGetUlHqProc ( RgSchCellCb *cell, RgSchUeCb *ue, -U8 idx +uint8_t idx ) #else -PUBLIC RgSchUlHqProcCb* rgSCHUhmGetUlHqProc(cell, ue, idx) +RgSchUlHqProcCb* rgSCHUhmGetUlHqProc(cell, ue, idx) RgSchCellCb *cell; RgSchUeCb *ue; -U8 idx; +uint8_t idx; #endif { RgSchCmnUlUe *ueUl = RG_SCH_CMN_GET_UL_UE(ue, cell); - TRC2(rgSCHUhmGetUlHqProc); #if (ERRCLASS & ERRCLS_DEBUG) if(idx >= ueUl->hqEnt.numHqPrcs) { - RETVALUE(NULLP); + return (NULLP); } #endif - RETVALUE(&(ueUl->hqEnt.hqProcCb[idx])); + return (&(ueUl->hqEnt.hqProcCb[idx])); } /* rgSCHUhmGetUlHqProc */ /** @@ -451,20 +424,19 @@ U8 idx; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmNewTx +Void rgSCHUhmNewTx ( RgSchUlHqProcCb *hqProc, -U8 maxHqRetx, +uint8_t maxHqRetx, RgSchUlAlloc *alloc ) #else -PUBLIC Void rgSCHUhmNewTx(hqProc, maxHqRetx, alloc) +Void rgSCHUhmNewTx(hqProc, maxHqRetx, alloc) RgSchUlHqProcCb *hqProc; -U8 maxHqRetx; +uint8_t maxHqRetx; RgSchUlAlloc *alloc; #endif { - TRC2(rgSCHUhmNewTx); hqProc->ndi ^= 1; hqProc->alloc = alloc; @@ -478,7 +450,7 @@ RgSchUlAlloc *alloc; ((RgUeUlHqCb*)hqProc->hqEnt)->numBusyHqProcs++; } #endif - RETVOID; + return; } /* rgSCHUhmNewTx */ /** @@ -498,22 +470,21 @@ RgSchUlAlloc *alloc; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmFreeProc +Void rgSCHUhmFreeProc ( RgSchUlHqProcCb *hqProc, RgSchCellCb *cell ) #else -PUBLIC Void rgSCHUhmFreeProc(hqProc, cell) +Void rgSCHUhmFreeProc(hqProc, cell) RgSchUlHqProcCb *hqProc; RgSchCellCb *cell; #endif { #ifdef LTE_L2_MEAS RgSchUeCb *ueCb; - U8 qci = 1; + uint8_t qci = 1; #endif - TRC2(rgSCHUhmFreeProc); #ifdef LTE_L2_MEAS if (hqProc->alloc && hqProc->alloc->ue) @@ -521,7 +492,7 @@ RgSchCellCb *cell; ueCb = hqProc->alloc->ue; if (ueCb && cell) { - U32 nonLcg0ReportedBs = ((RgSchCmnLcg *)(ueCb->ul.lcgArr[1].sch))->reportedBs + \ + uint32_t nonLcg0ReportedBs = ((RgSchCmnLcg *)(ueCb->ul.lcgArr[1].sch))->reportedBs + \ ((RgSchCmnLcg *)(ueCb->ul.lcgArr[2].sch))->reportedBs + \ ((RgSchCmnLcg *)(ueCb->ul.lcgArr[3].sch))->reportedBs; ((RgUeUlHqCb*)hqProc->hqEnt)->numBusyHqProcs--; @@ -569,7 +540,7 @@ RgSchCellCb *cell; { printf("\nhqEnt is NULL\n"); } - RETVOID; + return; } /* rgSCHUhmFreeProc */ /** @@ -590,24 +561,23 @@ RgSchCellCb *cell; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmRetx +Void rgSCHUhmRetx ( RgSchUlHqProcCb *hqProc, RgSchUlAlloc *alloc ) #else -PUBLIC Void rgSCHUhmRetx(hqProc, alloc) +Void rgSCHUhmRetx(hqProc, alloc) RgSchUlHqProcCb *hqProc; RgSchUlAlloc *alloc; #endif { - TRC2(rgSCHUhmRetx); hqProc->alloc = alloc; --hqProc->remTx; hqProc->rvIdx = (hqProc->rvIdx + 1) % 4; hqProc->rvIdxPhy.pres = FALSE; - RETVOID; + return; } /* rgSCHUhmRetx */ @@ -630,24 +600,22 @@ RgSchUlAlloc *alloc; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmRgrUeCfg +Void rgSCHUhmRgrUeCfg ( RgSchCellCb *cellCb, RgSchUeCb *ueCb, RgrUeCfg *ueCfg ) #else -PUBLIC Void rgSCHUhmRgrUeCfg(cellCb, ueCb, ueCfg) +Void rgSCHUhmRgrUeCfg(cellCb, ueCb, ueCfg) RgSchCellCb *cellCb; RgSchUeCb *ueCb; RgrUeCfg *ueCfg; #endif { - U8 i; + uint8_t i; RgSchCmnUlUe *ueUl = RG_SCH_CMN_GET_UL_UE(ueCb, cellCb); - TRC2(rgSCHUhmRgrUeCfg); - ueUl->hqEnt.maxHqRetx = ((ueCfg->ueUlHqCfg.maxUlHqTx) - 1); #ifdef TFU_UPGRADE /* Storing the delta HARQ offset for HARQ + PUSCH */ @@ -674,7 +642,7 @@ RgrUeCfg *ueCfg; #ifdef EMTC_ENABLE rgSCHEmtcInitUlUeHqEnt(cellCb, ueCfg, ueCb); #endif - RETVOID; + return; } /* rgSCHUhmRgrUeCfg */ /** @@ -696,21 +664,20 @@ RgrUeCfg *ueCfg; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmRgrUeRecfg +Void rgSCHUhmRgrUeRecfg ( RgSchCellCb *cellCb, RgSchUeCb *ueCb, RgrUeRecfg *ueRecfg ) #else -PUBLIC Void rgSCHUhmRgrUeRecfg(cellCb, ueCb, ueRecfg) +Void rgSCHUhmRgrUeRecfg(cellCb, ueCb, ueRecfg) RgSchCellCb *cellCb; RgSchUeCb *ueCb; RgrUeRecfg *ueRecfg; #endif { RgSchCmnUlUe *ueUl = RG_SCH_CMN_GET_UL_UE(ueCb, cellCb); - TRC2(rgSCHUhmRgrUeRecfg); /* [ccpu00123958]-ADD- Check for HARQ Reconfig from the bit mask */ if(RGR_UE_ULHARQ_RECFG & ueRecfg->ueRecfgTypes) @@ -718,7 +685,7 @@ RgrUeRecfg *ueRecfg; ueUl->hqEnt.maxHqRetx = (ueRecfg->ueUlHqRecfg.maxUlHqTx - 1); } - RETVOID; + return; } /* rgSCHUhmRgrUeRecfg */ /** @@ -737,18 +704,17 @@ RgrUeRecfg *ueRecfg; * @return Void **/ #ifdef ANSI -PUBLIC Void rgSCHUhmFreeUe +Void rgSCHUhmFreeUe ( RgSchCellCb *cellCb, RgUeUlHqCb *hqEnt ) #else -PUBLIC Void rgSCHUhmFreeUe(cellCb, hqEnt) +Void rgSCHUhmFreeUe(cellCb, hqEnt) RgSchCellCb *cellCb; RgUeUlHqCb *hqEnt; #endif { - TRC2(rgSCHUhmFreeUe); #ifdef LTE_TDD /* ccpu00117052 - MOD - Passing double pointer for proper NULLP assignment*/ @@ -757,7 +723,7 @@ RgUeUlHqCb *hqEnt; hqEnt->numHqPrcs * sizeof(RgSchUlHqProcCb)); #endif - RETVOID; + return; } /* rgSCHUhmFreeUe */ @@ -779,23 +745,23 @@ RgUeUlHqCb *hqEnt; * @return Void */ #ifdef ANSI -PUBLIC S16 rgSCHUhmAppendPhich +S16 rgSCHUhmAppendPhich ( RgSchCellCb *cellCb, CmLteTimingInfo frm, -U8 idx +uint8_t idx ) #else -PUBLIC S16 rgSCHUhmAppendPhich (cellCb, frm, idx) +S16 rgSCHUhmAppendPhich (cellCb, frm, idx) RgSchCellCb *cellCb; CmLteTimingInfo frm; -U8 idx; +uint8_t idx; #endif { - U8 nDmrs; - U8 rbStart; + uint8_t nDmrs; + uint8_t rbStart; #ifdef LTE_TDD - U8 iPhich; + uint8_t iPhich; #endif RgSchUlAlloc *ulAlloc; #ifdef LTEMAC_HDFDD @@ -803,10 +769,8 @@ U8 idx; #endif /* LTEMAC_HDFDD */ RgSchCmnUlCell *cellUl = RG_SCH_CMN_GET_UL_CELL(cellCb); - TRC2(rgSCHUhmAppendPhich) - #ifdef RG_5GTF - RETVALUE(ROK); + return ROK; #endif if(cellUl->hqFdbkIdx[idx] != RGSCH_INVALID_INFO) { @@ -833,7 +797,7 @@ U8 idx; if (rgSCHUtlGetPhichInfo (ulAlloc->hqProc, &rbStart, &nDmrs) != ROK) #endif { - RETVALUE (RFAILED); + return (RFAILED); } if(nDmrs != RGSCH_INVALID_NDMRS) { @@ -886,7 +850,7 @@ U8 idx; ulAlloc = rgSCHUtlNextHqFdbkAlloc (cellCb, ulAlloc, idx); } } - RETVALUE(ROK); + return ROK; } /* rgSCHUhmAppendPhich */ /** @@ -908,13 +872,13 @@ U8 idx; * **/ #ifdef ANSI -PUBLIC S16 rgSCHUhmHqEntInit +S16 rgSCHUhmHqEntInit ( RgSchCellCb *cellCb, RgSchUeCb *ueCb ) #else -PUBLIC S16 rgSCHUhmHqEntInit(cellCb, ueCb) +S16 rgSCHUhmHqEntInit(cellCb, ueCb) RgSchCellCb *cellCb; RgSchUeCb *ueCb; #endif @@ -923,7 +887,6 @@ RgSchUeCb *ueCb; #ifdef LTE_TDD Inst inst = ueCb->cell->instIdx; #endif - TRC2(rgSCHUhmHqEntInit) #ifndef LTE_TDD /* Init the HARQ processes */ @@ -936,11 +899,11 @@ RgSchUeCb *ueCb; ueUl->hqEnt.numHqPrcs * \ sizeof(RgSchUlHqProcCb)) != ROK) { - RETVALUE(RFAILED); + return RFAILED; } #endif - RETVALUE(ROK); + return ROK; } /* rgSCHUhmHqEntInit */ #ifdef RG_5GTF @@ -970,14 +933,14 @@ RgSchUeCb *ueCb; * **/ #ifdef ANSI -PUBLIC S16 rgSCHUhmGetAvlHqProc +S16 rgSCHUhmGetAvlHqProc ( RgSchCellCb *cell, RgSchUeCb *ue, RgSchUlHqProcCb **hqP ) #else -PUBLIC S16 rgSCHUhmGetAvlHqProc (cell, ue, hqP) +S16 rgSCHUhmGetAvlHqProc (cell, ue, hqP) RgSchCellCb *cell; RgSchUeCb *ue; RgSchUlHqProcCb **hqP; @@ -989,8 +952,6 @@ RgSchUlHqProcCb **hqP; CmLList *tmp; RgUeUlHqCb *hqE; - TRC2(rgSCHUhmGetAvlHqProc); - hqE = &ueUl->hqEnt; CM_LLIST_FIRST_NODE(&(hqE->free), tmp); @@ -1003,7 +964,7 @@ RgSchUlHqProcCb **hqP; //printf("5GTF_ERROR rgSCHUhmGetAvlHqProc cellId %d %ld inUse %ld ue %d" //, cell->cellId, hqE->free.count, hqE->inUse.count, ue->ueId); /* No Harq Process available in the free queue. */ - RETVALUE(RFAILED); + return RFAILED; } tmpHqProc = (RgSchUlHqProcCb *)(tmp->node); @@ -1021,7 +982,7 @@ RgSchUlHqProcCb **hqP; *hqP = tmpHqProc; - RETVALUE(ROK); + return ROK; } /* rgSCHUhmGetAvlHqProc */ /** @@ -1043,14 +1004,14 @@ RgSchUlHqProcCb **hqP; * -# NULL **/ #ifdef ANSI -PUBLIC RgSchUlHqProcCb* rgSCHUhmGetUlProcByTime +RgSchUlHqProcCb* rgSCHUhmGetUlProcByTime ( RgSchCellCb *cell, RgSchUeCb *ue, CmLteTimingInfo frm ) #else -PUBLIC RgSchUlHqProcCb* rgSCHUhmGetUlProcByTime(cell, ue, frm) +RgSchUlHqProcCb* rgSCHUhmGetUlProcByTime(cell, ue, frm) RgSchCellCb *cell; RgSchUeCb *ue; CmLteTimingInfo frm; @@ -1061,8 +1022,6 @@ CmLteTimingInfo frm; CmLList *lnk = lst->first; RgSchUlHqProcCb *proc; - TRC2(rgSCHUhmGetUlProcByTime); - while (lnk) { proc = (RgSchUlHqProcCb *)(lnk->node); @@ -1071,11 +1030,11 @@ CmLteTimingInfo frm; if (RGSCH_TIMEINFO_SAME(proc->schdTime, frm)) { // printf("Harq timing Matched rgSCHUhmGetUlProcByTime time (%d %d) proc->procId %d \n",proc->schdTime.sfn,proc->schdTime.slot, proc->procId); - RETVALUE(proc); + return (proc); } } - RETVALUE(NULLP); + return (NULLP); } /* rgSCHUhmGetUlProcByTime */ #endif