X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrsch%2Frg_sch_hdfdd.c;h=09d1c487dfc4b5ae41170a7972fa841d4327b842;hb=53b8b63c2fff0f2adbf2c66ed182a32bb4682bf7;hp=232428f38fc7d0c26f2b4b7f15a9ba97cfa57ee8;hpb=5d74fef7c9fe6b65a965ceac6bfe812872dab323;p=o-du%2Fl2.git diff --git a/src/5gnrsch/rg_sch_hdfdd.c b/src/5gnrsch/rg_sch_hdfdd.c index 232428f38..09d1c487d 100755 --- a/src/5gnrsch/rg_sch_hdfdd.c +++ b/src/5gnrsch/rg_sch_hdfdd.c @@ -32,11 +32,6 @@ @brief This module handles the Periodic CQI/PMI/RI, SRS, SR and Half Duplex functionality */ -#ifdef LTEMAC_HDFDD -static const char* RLOG_MODULE_NAME="MAC"; -static int RLOG_MODULE_ID=4096; -static int RLOG_FILE_ID=165; -#endif /* header include files -- defines (.h) */ #include "common_def.h" @@ -50,8 +45,6 @@ static int RLOG_FILE_ID=165; #include "rgm.h" #include "rg_sch.h" #include "rg_sch_cmn.h" -#include "rl_interface.h" -#include "rl_common.h" /* header/extern include files (.x) */ #include "tfu.x" /* RGU types */ @@ -92,39 +85,24 @@ extern "C" { * -# RFAILED */ -#ifdef ANSI -S16 rgSCHHdFddUeCfg -( -RgSchCellCb *cellCb, -RgSchUeCb *ueCb, -Bool hdFddEnbl -) -#else /* ANSI */ -S16 rgSCHHdFddUeCfg (cellCb, ueCb, hdFddEnbl) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -Bool hdFddEnbl; -#endif /* ANSI */ +S16 rgSCHHdFddUeCfg(RgSchCellCb *cellCb,RgSchUeCb *ueCb,Bool hdFddEnbl) { - U8 sfi; + uint8_t sfi; - RLOG_ARG2(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHHdFddUeCfg(): UeId =%d hdFddEnbl=%d", + DU_LOG("\nDEBUG --> SCH : rgSCHHdFddUeCfg(): UeId =%d hdFddEnbl=%d", ueCb->ueId, hdFddEnbl); if(ueCb->hdFddEnbld == TRUE) { if (hdFddEnbl == FALSE) { /* Do not allow switch from HD-FDD to FD-FDD configuration */ - RLOG_ARG1(L_ERROR,DBG_CELLID,cellCb->cellId, - "rgSCHHdFddUeCfg(): HD-FDD to FD-FDD Configuration is not allowed" + DU_LOG("\nERROR --> SCH : rgSCHHdFddUeCfg(): HD-FDD to FD-FDD Configuration is not allowed" "CRNTI:%d",ueCb->ueId); } else { /* If already enabled then it can be second reconfiguration */ - RLOG_ARG1(L_ERROR,DBG_CELLID,cellCb->cellId, - "rgSCHHdFddUeCfg(): HD-FDD already enabled for this UE" + DU_LOG("\nERROR --> SCH : rgSCHHdFddUeCfg(): HD-FDD already enabled for this UE" "CRNTI:%d",ueCb->ueId); } return RFAILED; @@ -136,8 +114,7 @@ Bool hdFddEnbl; (ueCb->ul.ulSpsCfg.isUlSpsEnabled == TRUE || ueCb->dl.dlSpsCfg.isDlSpsEnabled == TRUE)) { - RLOG_ARG1(L_ERROR,DBG_CELLID,cellCb->cellId, - "rgSCHHdFddUeCfg(): Could'nt do HDFDD cfg, SPS already configured" + DU_LOG("\nERROR --> SCH : rgSCHHdFddUeCfg(): Could'nt do HDFDD cfg, SPS already configured" "CRNTI:%d",ueCb->ueId); return RFAILED; } @@ -160,8 +137,7 @@ Bool hdFddEnbl; } else { - RLOG_ARG1(L_ERROR,DBG_CELLID,cellCb->cellId, - "rgSCHHdFddUeCfg(): Could not allocate memory for hd-fdd ueCb" + DU_LOG("\nERROR --> SCH : rgSCHHdFddUeCfg(): Could not allocate memory for hd-fdd ueCb" "CRNTI:%d",ueCb->ueId); return RFAILED; } @@ -194,21 +170,10 @@ Bool hdFddEnbl; * -# ROK * */ -#ifdef ANSI -S16 rgSCHHdFddUeDel -( -RgSchCellCb *cellCb, -RgSchUeCb *ueCb -) -#else /* ANSI */ -S16 rgSCHHdFddUeDel(cellCb, ueCb) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -#endif /* ANSI */ +S16 rgSCHHdFddUeDel(RgSchCellCb *cellCb,RgSchUeCb *ueCb) { - RLOG_ARG2(L_DEBUG,DBG_CELLID,cellCb->cellId, - " rgSCHHdFddUeDel(): UeId =%d hdFdd=%x", + DU_LOG("\nDEBUG --> SCH : rgSCHHdFddUeDel(): UeId =%d hdFdd=%x", ueCb->ueId, ueCb->hdFddEnbld); @@ -240,30 +205,22 @@ RgSchUeCb *ueCb; * @return None */ -#ifdef ANSI -Void rgSCHCmnHdFddPtUlMrk -( -RgSchCellCb *cellCb -) -#else /* ANSI */ -Void rgSCHCmnHdFddPtUlMrk (cellCb) -RgSchCellCb *cellCb; -#endif /* ANSI */ +Void rgSCHCmnHdFddPtUlMrk(RgSchCellCb *cellCb) { - U16 sfn; /* System Frame Number */ - U32 pti; /* Index into Periodic table */ - U16 sfi; /* Index into HDFDD state table */ - CmLListCp *cqiLst; - CmLListCp *srsLst; - CmLListCp *srLst; - CmLListCp *riLst; - CmLList *cqiNode; - CmLList *srsNode; - CmLList *srNode; - CmLList *riNode; - CmLteTimingInfo timeInfo; - RgSchUePCqiCb *cqiCb = NULLP; - RgSchUePCqiCb *riCb = NULLP; + uint16_t sfn; /* System Frame Number */ + uint32_t pti; /* Index into Periodic table */ + uint16_t sfi; /* Index into HDFDD state table */ + CmLListCp *cqiLst; + CmLListCp *srsLst; + CmLListCp *srLst; + CmLListCp *riLst; + CmLList *cqiNode; + CmLList *srsNode; + CmLList *srNode; + CmLList *riNode; + CmLteTimingInfo timeInfo; + RgSchUePCqiCb *cqiCb = NULLP; + RgSchUePCqiCb *riCb = NULLP; timeInfo = cellCb->crntTime; @@ -343,7 +300,7 @@ RgSchCellCb *cellCb; CM_LLIST_NEXT_NODE(riLst, riNode); } - RETVOID; + return; } /* rgSCHCmnHdFddPtUlMrk */ #endif /* ifdef TFU_UPGRADE */ @@ -372,28 +329,15 @@ RgSchCellCb *cellCb; * @return None * */ -#ifdef ANSI -Void rgSCHCmnHdFddChkUlAllow -( - RgSchCellCb *cellCb, - RgSchUeCb *ueCb, - U8 *allow -) -#else /* ANSI */ -Void rgSCHCmnHdFddChkUlAllow ( cellCb, ueCb, allow) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -U8 *allow; -#endif /* ANSI */ +Void rgSCHCmnHdFddChkUlAllow(RgSchCellCb *cellCb,RgSchUeCb *ueCb,uint8_t *allow) { - U16 sfn; - U16 sfi; + uint16_t sfn; + uint16_t sfi; CmLteTimingInfo timeInfo; RgSchDlSf *sf = NULLP; /* Dl subframe info */ - U8 ulOffset + uint8_t ulOffset - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - " rgSCHCmnHdFddChkUlAllow: ueId=%d ", ueCb->ueId); + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddChkUlAllow: ueId=%d ", ueCb->ueId); *allow = FALSE; @@ -421,8 +365,7 @@ U8 *allow; /* Common channel scheduled */ /* Mark the BCCH/PCCH occasion */ RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_DLDATA, sfn, sfi); - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkUlAllow: Already marked for Cmn DL, ueId = %d ", + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddChkUlAllow: Already marked for Cmn DL, ueId = %d ", ueCb->ueId); } if ((ueCb->hdFddCb->subfrm[sfi].sfn == sfn) && @@ -431,10 +374,9 @@ U8 *allow; { /* Downlink scheduled */ *allow = FALSE; - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkUlAllow: Already marked for DL, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkUlAllow: Already marked for DL, ueId = %d ", ueCb->ueId); - RETVOID; + return; } /* Validate condition 3 */ @@ -447,10 +389,9 @@ U8 *allow; { /* No place for HARQ feedback */ *allow = FALSE; - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkUlAllow: No Place for HARQ, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkUlAllow: No Place for HARQ, ueId = %d ", ueCb->ueId); - RETVOID; + return; } /* Validate condition 4 */ @@ -462,10 +403,9 @@ U8 *allow; ueCb->hdFddCb->subfrm[sfi].subFrmDir == RG_SCH_HDFDD_UL) { *allow = FALSE; - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - " rgSCHCmnHdFddChkUlAllow: No Place for UL grant, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkUlAllow: No Place for UL grant, ueId = %d ", ueCb->ueId); - RETVOID; + return; } /* Validate condition 5 */ @@ -477,10 +417,9 @@ U8 *allow; { /* This subframe may be a switching gaurd time */ *allow = FALSE; - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - " rgSCHCmnHdFddChkUlAllow: No Place for Guard time, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkUlAllow: No Place for Guard time, ueId = %d ", ueCb->ueId); - RETVOID; + return; } /* Adition guard time rule check: Above check is only for PDSCH, lets check @@ -495,16 +434,15 @@ U8 *allow; /* Mark the BCCH/PCCH occasion */ RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_DLDATA, timeInfo.sfn, sfi); *allow = FALSE; - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkUlAllow: Already marked for Cmn DL, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkUlAllow: Already marked for Cmn DL, ueId = %d ", ueCb->ueId); - RETVOID; + return; } /* All validation done. Safe to for UL */ *allow = TRUE; - RETVOID; + return; } /* rgSCHCmnHdFddChkUlAllow */ @@ -536,26 +474,19 @@ U8 *allow; * @param[in] RgSchCellCb *cellCb * @param[in] RgSchUeCb *ueCb * @param[in] CmLteTimingInfo *timeInfo - * @param[out] U8 *allow -- TRUE is allowed or FALSE if no allowedi. + * @param[out] uint8_t *allow -- TRUE is allowed or FALSE if no allowedi. * Valdity of this pointer is not done in this function * */ -#ifdef ANSI Void rgSCHCmnHdFddChkDlAllow ( RgSchCellCb *cellCb, RgSchUeCb *ueCb, Bool *allow /* Valdity of this pointer is not done in this function */ ) -#else /* ANSI */ -Void rgSCHCmnHdFddChkDlAllow ( cellCb, ueCb, allow) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -Bool *allow; /* Valdity of this pointer is not done in this function */ -#endif /* ANSI */ { - U16 sfn; - U16 sfi; + uint16_t sfn; + uint16_t sfi; RgSchDlSf *sf = NULLP; /* Dl subframe info */ CmLteTimingInfo timeInfo; CmLteTimingInfo tempTimeInfo; @@ -565,8 +496,7 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ timeInfo = cellCb->crntTime; RGSCH_INCR_SUB_FRAME(timeInfo, RG_SCH_CMN_DL_DELTA); - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddDlSchAll (): ueId=%d ", ueCb->ueId); + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddDlSchAll (): ueId=%d ", ueCb->ueId); /* Also get subframe pointer to fetch Common Ch allocation */ sf = rgSCHUtlSubFrmGet(cellCb, timeInfo); @@ -580,10 +510,9 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ (ueCb->hdFddCb->subfrm[sfi].subFrmDir == RG_SCH_HDFDD_UL)) { /* Uplink scheduled */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkDlAllow: sf is UL, ueId=%d ", ueCb->ueId); + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkDlAllow: sf is UL, ueId=%d ", ueCb->ueId); *allow = FALSE; - RETVOID; + return; } /* It is not validation, but BCCH/PCCH marking is done here */ @@ -601,11 +530,10 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ (ueCb->hdFddCb->subfrm[sfi].subFrmDir == RG_SCH_HDFDD_UL)) { /* This subframe may be a switching guard time */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - " rgSCHCmnHdFddChkDlAllow: Guard time rule not met, ueId=%d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkDlAllow: Guard time rule not met, ueId=%d ", ueCb->ueId); *allow = FALSE; - RETVOID; + return; } /* Validate condition 3 */ @@ -624,8 +552,7 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ /* Common channel scheduled */ /* Do the marking for this subframe */ RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_DLDATA, tempTimeInfo.sfn, sfi); - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkDlAllow: Possible systemInfo, ueId=%d ", + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddChkDlAllow: Possible systemInfo, ueId=%d ", ueCb->ueId); } @@ -634,14 +561,13 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ ueCb->hdFddCb->subfrm[sfi].subFrmDir != RG_SCH_HDFDD_UL) { /* No place for HARQ feedback */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkDlAllow: No place for HARQ feedback, ueId=%d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkDlAllow: No place for HARQ feedback, ueId=%d ", ueCb->ueId); *allow = FALSE; /* Mark this sf as DLCNTRL */ ueCb->hdFddCb->subfrm[sfi].subFrmDir =RG_SCH_HDFDD_DLCNTRL; - RETVOID; + return; } @@ -658,8 +584,7 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ /* Common channel scheduled */ /* Do the marking for this subframe */ RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_DLDATA, tempTimeInfo.sfn, sfi); - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkDlAllow: (GT) Possible systemInfo, ueId=%d ", + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddChkDlAllow: (GT) Possible systemInfo, ueId=%d ", ueCb->ueId); } @@ -667,18 +592,17 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ ueCb->hdFddCb->subfrm[sfi].subFrmDir == RG_SCH_HDFDD_DLDATA) { /* No place for HARQ feedback */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkDlAllow: (GT) No place for HARQ feedback," + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkDlAllow: (GT) No place for HARQ feedback," "ueId=%d ",ueCb->ueId); *allow = FALSE; - RETVOID; + return; } /* First check for any Common channel info is scheduled */ *allow = TRUE; /* All validation done. Safe to for DL */ - RETVOID; + return; } /* rgSCHCmnHdFddChkDlAllow */ @@ -698,21 +622,7 @@ Bool *allow; /* Valdity of this pointer is not done in this function */ * */ -#ifdef ANSI -Void rgSCHCmnHdFddChkNackAllow -( -RgSchCellCb *cellCb, -RgSchUeCb *ueCb, -CmLteTimingInfo timeInfo, -Bool *sndNACK -) -#else /* ANSI */ -Void rgSCHCmnHdFddChkNackAllow(cellCb, ueCb, timeInfo, sndNACK) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -CmLteTimingInfo timeInfo; -Bool *sndNACK; -#endif /* ANSI */ +Void rgSCHCmnHdFddChkNackAllow(RgSchCellCb *cellCb,RgSchUeCb *ueCb,CmLteTimingInfo timeInfo,Bool *sndNACK) { RgSchDlSf *sf; CmLteTimingInfo tempTimeInfo; @@ -733,21 +643,19 @@ Bool *sndNACK; if(RG_SCH_HDFDD_ISCMN_SCHED(sf)) { /* Yes, Cannot send NACK */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkNackAllow: Cannot send NACK, ueId = %d ", + DU_LOG("\nERROR --> SCH : rgSCHCmnHdFddChkNackAllow: Cannot send NACK, ueId = %d ", ueCb->ueId); *sndNACK = FALSE; } else { /* safe, Send NACK */ - RLOG_ARG1(L_DEBUG,DBG_CELLID,cellCb->cellId, - "rgSCHCmnHdFddChkNackAllow: NACk can be sent, ueId = %d ", + DU_LOG("\nDEBUG --> SCH : rgSCHCmnHdFddChkNackAllow: NACk can be sent, ueId = %d ", ueCb->ueId); *sndNACK = TRUE; } - RETVOID; + return; } /* rgSCHCmnHdFddChkNackAllow */ @@ -768,28 +676,18 @@ Bool *sndNACK; * @param[in] RgSchCellCb *cellCb * @param[in] RgSchUeCb *ueCb * @param[in] CmLteTimingInfo *timeInfo - * @param[out] U8 *allow -- TRUE is allowed or FALSE if no allowedi. + * @param[out] uint8_t *allow -- TRUE is allowed or FALSE if no allowedi. * Valdity of this pointer is not done in this function. * * @return None */ -#ifdef ANSI -Void rgSCHCmnHdFddUpdULMark -( -RgSchCellCb *cellCb, -RgSchUeCb *ueCb -) -#else /* ANSI */ -Void rgSCHCmnHdFddUpdULMark ( cellCb, ueCb) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -#endif /* ANSI */ +Void rgSCHCmnHdFddUpdULMark(RgSchCellCb *cellCb,RgSchUeCb *ueCb) { - U16 sfn; - U16 sfi; + uint16_t sfn; + uint16_t sfi; CmLteTimingInfo timeInfo; - U8 ulOffset; + uint8_t ulOffset; ulOffset = RGSCH_PDCCH_PUSCH_DELTA - TFU_CRCIND_ULDELTA + RGSCH_PDCCH_PUSCH_DELTA; @@ -826,7 +724,7 @@ RgSchUeCb *ueCb; RG_SCH_HDFDD_GETSFI(sfi, timeInfo, (ulOffset * -1)); RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_NOSCHD, RG_SCH_HDFDD_INVSFN, sfi); - RETVOID; + return; } /* rgSCHCmnHdFddUpdULMark */ @@ -847,27 +745,17 @@ RgSchUeCb *ueCb; * @param[in] RgSchCellCb *cellCb * @param[in] RgSchUeCb *ueCb * @param[in] CmLteTimingInfo *timeInfo - * @param[out] U8 *allow -- TRUE is allowed or FALSE if no allowed. + * @param[out] uint8_t *allow -- TRUE is allowed or FALSE if no allowed. * Valdity of this pointer is not done in this function * * @return None */ -#ifdef ANSI -Void rgSCHCmnHdFddUpdDLMark -( -RgSchCellCb *cellCb, -RgSchUeCb *ueCb -) -#else /* ANSI */ -Void rgSCHCmnHdFddUpdDLMark (cellCb, ueCb) -RgSchCellCb *cellCb; -RgSchUeCb *ueCb; -#endif /* ANSI */ +Void rgSCHCmnHdFddUpdDLMark(RgSchCellCb *cellCb,RgSchUeCb *ueCb) { - U16 sfn; - U16 sfi; + uint16_t sfn; + uint16_t sfi; CmLteTimingInfo timeInfo; timeInfo = cellCb->crntTime; @@ -900,7 +788,7 @@ RgSchUeCb *ueCb; RG_SCH_HDFDD_MARKSTATE(ueCb, RG_SCH_HDFDD_DLCNTRL, sfn, sfi); } - RETVOID; + return; } /* rgSCHCmnHdFddUpdDLMark */ @@ -915,28 +803,16 @@ RgSchUeCb *ueCb; * * Processing Steps: * - * @param[out] *sfn U32 + * @param[out] *sfn uint32_t * @param[in] timeInfo timing information subframe of interest * @param[in] offsest Offest with w.r.t which SFN has to be determined * * @return None */ -#ifdef ANSI -Void rgSCHHdFddGetSfn -( - U16 *sfn, - CmLteTimingInfo timeInfo, - S16 offset -) -#else /* ANSI */ -Void rgSCHHdFddGetSfn (sfn, timeInfo, offset) - U16 *sfn; - CmLteTimingInfo timeInfo; - S16 offset; -#endif /* ANSI */ +Void rgSCHHdFddGetSfn(uint16_t *sfn,CmLteTimingInfo timeInfo,S16 offset) { - U16 tempSfn; + uint16_t tempSfn; S16 tempSfCount; if(((S16)(timeInfo.subframe) + offset) >= RGSCH_NUM_SUB_FRAMES) @@ -966,7 +842,7 @@ Void rgSCHHdFddGetSfn (sfn, timeInfo, offset) } *sfn = tempSfn; - RETVOID; + return; } /* End of rgSCHHdFddGetSfn */