@brief APIs to handle all the primitives invoked on RGU interface.
*/
-static const char* RLOG_MODULE_NAME="MAC";
-static int RLOG_FILE_ID=184;
-static int RLOG_MODULE_ID=4096;
/* header include files (.h) */
#include "common_def.h"
/* local typedefs */
S16 RgMacSchBrdcmDedBoUpdtReq ARGS((Inst inst, CmLteCellId cellId, CmLteRnti rnti, CmLteLcId lcId, S32 bo ));
-PRIVATE S16 rgROMHndlCcchDatReq ARGS((RgCellCb *cell,
+static S16 rgROMHndlCcchDatReq ARGS((RgCellCb *cell,
RgRguCmnDatReq *datReq, RgErrInfo *err));
-PRIVATE S16 rgROMHndlBcchPcchDatReq ARGS((RgCellCb *cell,
+static S16 rgROMHndlBcchPcchDatReq ARGS((RgCellCb *cell,
RgRguCmnDatReq *datReq, RgErrInfo *err));
-PRIVATE S16 rgROMHndlCcchStaRsp ARGS((RgCellCb *cell,
+static S16 rgROMHndlCcchStaRsp ARGS((RgCellCb *cell,
RgRguCmnStaRsp *staRsp, RgErrInfo *err));
-PRIVATE S16 rgROMHndlBcchPcchStaRsp ARGS((RgCellCb *cell,
+static S16 rgROMHndlBcchPcchStaRsp ARGS((RgCellCb *cell,
RgRguCmnStaRsp *staRsp, RgErrInfo *err));
/* ADD Changes for Downlink UE Timing Optimization */
#ifdef LTEMAC_DLUE_TMGOPTMZ
-PRIVATE S16 rgROMUpdDlSfRemDataCnt ARGS((RgCellCb *cellCb,
+static S16 rgROMUpdDlSfRemDataCnt ARGS((RgCellCb *cellCb,
RgDlSf *dlSf));
S16 rgTOMUtlProcDlSf ARGS(( RgDlSf *dlSf,
RgCellCb *cellCb,
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-S16 rgROMDedDatReq
-(
-Inst inst,
-RgRguDedDatReq *datReq
-)
-#else
-S16 rgROMDedDatReq(inst,datReq)
-Inst inst;
-RgRguDedDatReq *datReq;
-#endif
+S16 rgROMDedDatReq(Inst inst,RgRguDedDatReq *datReq)
{
#if 0
RgCellCb *cell;
RgUeCb *ue;
- U8 idx1,idx2;
+ uint8_t idx1,idx2;
RgDlHqProcCb *hqProc;
- U8 hqPId;
+ uint8_t hqPId;
RgErrInfo err;
Pst schPst;
RgInfDedBoRpt boRpt;
#ifdef LTEMAC_DLUE_TMGOPTMZ
S16 ret;
#endif
- U32 idx;
- //U8 datReqFailCnt = 0;
-
- TRC2(rgROMDedDatReq)
+ uint32_t idx;
+ //uint8_t datReqFailCnt = 0;
if (((cell = rgCb[inst].cell) == NULLP)
{
#if (ERRCLASS & ERRCLS_INT_PAR)
/* Handle Cell fetch failure */
- RGLOGERROR(inst,ERRCLS_INT_PAR,ERG001,(ErrVal)datReq->cellId,
- "rgROMDedDatReq(): Invalid cell Id");
+ DU_LOG("\nERROR --> MAC : rgROMDedDatReq(): Invalid cell Id");
#endif
err.errType = RGERR_ROM_DEDDATREQ;
err.errCause = RGERR_ROM_INV_CELL_ID;
for(idx = 0; idx < datReq->nmbOfUeGrantPerTti; idx++)
{
- timingInfo.slot = (U8)((datReq->datReq[idx].transId >> 8) & 0XFF);
- timingInfo.sfn = (U16)((datReq->datReq[idx].transId >> 16) & 0xFFFF);
+ timingInfo.slot = (uint8_t)((datReq->datReq[idx].transId >> 8) & 0XFF);
+ timingInfo.sfn = (uint16_t)((datReq->datReq[idx].transId >> 16) & 0xFFFF);
sf = &cell->subFrms[(timingInfo.slot % RG_NUM_SUB_FRAMES)];
if( (sf->txDone == TRUE) ||
rgUpdtRguDedSts(inst,cell->rguDlSap,RG_RGU_SDU_DROP, datReq);
#ifdef CA_DBG
{
- EXTERN U32 dbgDelayedDatReqInMac;
+ uint32_t dbgDelayedDatReqInMac;
dbgDelayedDatReqInMac++;
}
#endif /* CA_DBG */
{
#if (ERRCLASS & ERRCLS_INT_PAR)
/* Handle Ue fetch failure */
- RGLOGERROR(inst,ERRCLS_INT_PAR,ERG002,(ErrVal)datReq->datReq[idx].rnti,
- "rgROMDedDatReq(): Invalid ue Id");
+ DU_LOG("\nERROR --> MAC : rgROMDedDatReq(): Invalid ue Id");
#endif
err.errType = RGERR_ROM_DEDDATREQ;
err.errCause = RGERR_ROM_INV_UE_ID;
ret = rgROMUpdDlSfRemDataCnt(cell, sf);
if(ret == RFAILED)
{
- RLOG0(L_INFO, "Dropping due to no ue \n");
+ DU_LOG("\nERROR --> MAC : Dropping due to no ue \n");
#ifndef L2_OPTMZ
RG_DROP_RGUDDATREQ_MBUF(datReq->datReq[idx]);
#endif
continue;
}
- hqPId = (U8)(datReq->datReq[idx].transId);
+ hqPId = (uint8_t)(datReq->datReq[idx].transId);
hqPId = hqPId >> 2;
/* get harq process and invoke DHM */
rgDHMGetHqProcFrmId(ue, hqPId, &hqProc);
if (rgDHMHndlDedDatReq(inst,hqProc, &datReq->datReq[idx], sf, &err) == RFAILED)
{
- RLOG_ARG1(L_ERROR,DBG_CELLID,datReq->cellId,
- "Handling of Data request in DHM failedi RNTI:%d",
+ DU_LOG("\nERROR --> MAC : Handling of Data request in DHM failedi RNTI:%d",
datReq->datReq[idx].rnti);
err.errType = RGERR_ROM_DEDDATREQ;
/* errcause shall be filled in appropriately by DHM */
ret = rgROMUpdDlSfRemDataCnt(cell, sf);
if(ret == RFAILED)
{
- RLOG0(L_INFO, "Dropping due to no failure of remCnt update");
+ DU_LOG("\nERROR --> MAC : Dropping due to no failure of remCnt update");
#ifndef L2_OPTMZ
RG_DROP_RGUDDATREQ_MBUF(datReq->datReq[idx]);
#endif
ret = rgROMUpdDlSfRemDataCnt(cell, sf);
if(ret == RFAILED)
{
- RLOG0(L_INFO, "\n Dropping due to no failure of remCnt update(1) \n");
+ DU_LOG("\nERROR --> MAC : Dropping due to no failure of remCnt update(1) \n");
#ifndef L2_OPTMZ
RG_DROP_RGUDDATREQ_MBUF(datReq->datReq[idx]);
#endif
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-S16 rgROMCmnDatReq
-(
-Inst inst,
-RgRguCmnDatReq *datReq
-)
-#else
-S16 rgROMCmnDatReq(inst,datReq)
-Inst inst;
-RgRguCmnDatReq *datReq;
-#endif
+S16 rgROMCmnDatReq(Inst inst, RgRguCmnDatReq *datReq)
{
RgCellCb *cell;
RgErrInfo err;
RgDlSf *sf;
#endif
- TRC2(rgROMCmnDatReq)
-
ret = ROK;
err.errType = RGERR_ROM_CMNDATREQ;
if(((cell = rgCb[inst].cell) == NULLP)
{
#if (ERRCLASS & ERRCLS_INT_PAR)
/* Handle Cell fetch failure */
- RGLOGERROR(inst,ERRCLS_INT_PAR,ERG003,(ErrVal)datReq->cellId,
- "rgROMCmnDatReq(): Invalid cell Id");
+ DU_LOG("\nERROR --> MAC : rgROMCmnDatReq(): Invalid cell Id");
#endif
err.errCause = RGERR_ROM_INV_CELL_ID;
/* Update stats */
/*Get the timing Info*/
/* ADD Changes for Downlink UE Timing Optimization */
#ifdef LTEMAC_DLUE_TMGOPTMZ
- timingInfo.slot = (U8)((datReq->transId >> 8) & 0XFF);
- timingInfo.sfn = (U16)((datReq->transId >> 16) & 0xFFFF);
+ timingInfo.slot = (uint8_t)((datReq->transId >> 8) & 0XFF);
+ timingInfo.sfn = (uint16_t)((datReq->transId >> 16) & 0xFFFF);
#endif
}
else
/*Get the timing Info*/
/* ADD Changes for Downlink UE Timing Optimization */
#ifdef LTEMAC_DLUE_TMGOPTMZ
- timingInfo.slot = (U8)(datReq->transId & 0XFF);
- timingInfo.sfn = (U16)((datReq->transId >> 8) & 0xFFFF);
+ timingInfo.slot = (uint8_t)(datReq->transId & 0XFF);
+ timingInfo.sfn = (uint16_t)((datReq->transId >> 8) & 0xFFFF);
#endif
}
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-PRIVATE S16 rgROMHndlCcchDatReq
-(
-RgCellCb *cell,
-RgRguCmnDatReq *datReq,
-RgErrInfo *err
-)
-#else
-PRIVATE S16 rgROMHndlCcchDatReq(cell, datReq, err)
-RgCellCb *cell;
-RgRguCmnDatReq *datReq;
-RgErrInfo *err;
-#endif
+static S16 rgROMHndlCcchDatReq(RgCellCb *cell, RgRguCmnDatReq *datReq, RgErrInfo *err)
{
Inst inst = cell->macInst - RG_INST_START;
RgUeCb *ue;
- U8 hqPId;
+ uint8_t hqPId;
RgDlHqProcCb *hqProc;
CmLteTimingInfo timingInfo;
RgDlSf *sf;
RgUstaDgn dgn; /* Alarm diagnostics structure */
#endif
- TRC2(rgROMHndlCcchDatReq);
-
-
err->errType = RGERR_ROM_CMNDATREQ;
if ((ue = rgDBMGetUeCb(cell, datReq->u.rnti)) == NULLP)
{
#if (ERRCLASS & ERRCLS_INT_PAR)
/* Handle Ue fetch failure */
- RGLOGERROR(inst,ERRCLS_INT_PAR,ERG004,(ErrVal)datReq->u.rnti,
- "rgROMHndlCcchDatReq(): Invalid ue Id");
+ DU_LOG("\nERROR --> MAC : rgROMHndlCcchDatReq(): Invalid ue Id");
#endif
err->errCause = RGERR_ROM_INV_UE_ID;
return RFAILED;
}
}
- timingInfo.slot = (U8)((datReq->transId >> 8) & 0XFF);
- timingInfo.sfn = (U16)((datReq->transId >> 16) & 0xFFFF);
+ timingInfo.slot = (uint8_t)((datReq->transId >> 8) & 0XFF);
+ timingInfo.sfn = (uint16_t)((datReq->transId >> 16) & 0xFFFF);
sf = &cell->subFrms[(timingInfo.slot % RG_NUM_SUB_FRAMES)];
if( (sf->txDone == TRUE) ||
return RFAILED;
}
- hqPId = (U8)(datReq->transId);
+ hqPId = (uint8_t)(datReq->transId);
hqPId = hqPId >> 2;
/* get harq process and invoke DHM */
/* invoke DHM to process CCCH data */
if (rgDHMHndlCmnDatReq(inst,hqProc, datReq, err) == RFAILED)
{
- RLOG_ARG2(L_ERROR,DBG_CELLID,cell->cellId,
- "Handling of Data request in DHM failed RNTI:%d LCID:%d",
+ DU_LOG("\nERROR --> MAC : Handling of Data request in DHM failed RNTI:%d LCID:%d",
datReq->u.rnti,datReq->lcId);
/* Release First TB */
rgDHMRlsHqProcTB(cell, hqProc, 1);
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-PRIVATE S16 rgROMHndlBcchPcchDatReq
-(
-RgCellCb *cell,
-RgRguCmnDatReq *datReq,
-RgErrInfo *err
-)
-#else
-PRIVATE S16 rgROMHndlBcchPcchDatReq(cell, datReq, err)
-RgCellCb *cell;
-RgRguCmnDatReq *datReq;
-RgErrInfo *err;
-#endif
+static S16 rgROMHndlBcchPcchDatReq(RgCellCb *cell, RgRguCmnDatReq *datReq, RgErrInfo *err)
{
Inst inst = cell->macInst - RG_INST_START;
RgPcchLcCb *pcch;
RgUstaDgn dgn; /* Alarm diagnostics structure */
#endif
- TRC2(rgROMHndlBcchPcchDatReq);
-
- timingInfo.slot = (U8)(datReq->transId & 0XFF);
- timingInfo.sfn = (U16)((datReq->transId >> 8) & 0xFFFF);
+ timingInfo.slot = (uint8_t)(datReq->transId & 0XFF);
+ timingInfo.sfn = (uint16_t)((datReq->transId >> 8) & 0xFFFF);
sf = &cell->subFrms[(timingInfo.slot % RG_NUM_SUB_FRAMES)];
if( (sf->txDone == TRUE) ||
return ROK;
}
#endif/*RGR_SI_SCH*/
-
+ UNUSED(inst);
pcch = rgDBMGetPcch(cell);
if ((pcch) && (pcch->lcId == datReq->lcId))
{
}
/* Handle lcCb fetch failure */
- RGLOGERROR(inst,ERRCLS_INT_PAR,ERG005,(ErrVal)datReq->lcId,
- "rgROMHndlBcchPcchDatReq(): Invalid Lc Id");
+ DU_LOG("\nERROR --> MAC : rgROMHndlBcchPcchDatReq(): Invalid Lc Id");
err->errCause = RGERR_ROM_INV_LC_ID;
return RFAILED;
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-S16 rgROMDedStaRsp
-(
-Inst inst,
-RgRguDedStaRsp *staRsp
-)
-#else
-S16 rgROMDedStaRsp(inst,staRsp)
-Inst inst;
-RgRguDedStaRsp *staRsp;
-#endif
+S16 rgROMDedStaRsp(Inst inst, RgRguDedStaRsp *staRsp)
{
RgCellCb *cell;
/* Moving the error variables and assignments to available scope */
- TRC2(rgROMDedStaRsp)
-
/* Avoiding memset, as the variables of this are getting
initialized */
//TODO: commented for compilation without SCH RgMacSchDedBoUpdt(&schPst, &boRpt);
return ROK;
}
- RLOG_ARG2(L_ERROR,DBG_CELLID,staRsp->cellId,"Invalid cell for CRNTI:%d LCID:%d ",
+ DU_LOG("\nERROR --> MAC : Invalid cell for CRNTI:%d LCID:%d ",
staRsp->rnti,staRsp->lcId);
return RFAILED;
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-S16 rgROMCmnStaRsp
-(
-Inst inst,
-RgRguCmnStaRsp *staRsp
-)
-#else
-S16 rgROMCmnStaRsp(inst,staRsp)
-Inst inst;
-RgRguCmnStaRsp *staRsp;
-#endif
+S16 rgROMCmnStaRsp(Inst inst, RgRguCmnStaRsp *staRsp)
{
RgCellCb *cell;
RgErrInfo err;
- TRC2(rgROMCmnStaRsp)
-
-
if(((cell = rgCb[inst].cell) == NULLP)
|| (cell->cellId != staRsp->cellId))
{
/* Handle Cell fetch failure */
- RLOG_ARG2(L_ERROR,DBG_CELLID,staRsp->cellId,
- "Invalid cell for CRNTI:%d LCID:%d",staRsp->u.rnti,staRsp->lcId);
+ DU_LOG("\nERROR --> MAC : Invalid cell for CRNTI:%d LCID:%d",staRsp->u.rnti,staRsp->lcId);
err.errType = RGERR_ROM_CMNSTARSP;
err.errCause = RGERR_ROM_INV_CELL_ID;
return RFAILED;
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-S16 rgROML2MUlThrpMeasReq
-(
-Inst inst,
-RgRguL2MUlThrpMeasReq *measReq
-)
-#else
-S16 rgROML2MUlThrpMeasReq(inst,measReq)
-Inst inst;
-RgRguL2MUlThrpMeasReq *measReq;
-#endif
+S16 rgROML2MUlThrpMeasReq(Inst inst, RgRguL2MUlThrpMeasReq *measReq)
{
RgCellCb *cell;
RgUeCb *ue;
- U8 lcgId;
- U8 loop;
- TRC2(rgROML2MUlThrpMeasReq)
-
-
+ uint8_t lcgId;
+ uint8_t loop;
if(((cell = rgCb[inst].cell) != NULLP)
&&(cell->cellId == measReq->cellId))
return ROK;
}
}
- RLOG_ARG1(L_ERROR,DBG_CELLID,measReq->cellId,"Invalid cell CRNTI:%d",
+ DU_LOG("\nERROR --> MAC : Invalid cell CRNTI:%d",
measReq->rnti);
return RFAILED;
} /* rgROML2MUlThrpMeasReq */
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-PRIVATE S16 rgROMHndlCcchStaRsp
-(
-RgCellCb *cell,
-RgRguCmnStaRsp *staRsp,
-RgErrInfo *err
-)
-#else
-PRIVATE S16 rgROMHndlCcchStaRsp(cell, staRsp, err)
-RgCellCb *cell;
-RgRguCmnStaRsp *staRsp;
-RgErrInfo *err;
-#endif
+static S16 rgROMHndlCcchStaRsp(RgCellCb *cell,RgRguCmnStaRsp *staRsp, RgErrInfo *err)
{
Pst schPst;
Inst macInst = cell->macInst - RG_INST_START;
//RgInfCmnBoRpt boRpt;
- TRC2(rgROMHndlCcchStaRsp);
#ifdef UNUSED_VAR
RgInfCmnBoRpt boRpt;
boRpt.cellSapId = cell->schInstMap.cellSapId;
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-PRIVATE S16 rgROMHndlBcchPcchStaRsp
-(
-RgCellCb *cell,
-RgRguCmnStaRsp *staRsp,
-RgErrInfo *err
-)
-#else
-PRIVATE S16 rgROMHndlBcchPcchStaRsp(cell, staRsp, err)
-RgCellCb *cell;
-RgRguCmnStaRsp *staRsp;
-RgErrInfo *err;
-#endif
+static S16 rgROMHndlBcchPcchStaRsp(RgCellCb *cell,RgRguCmnStaRsp *staRsp,RgErrInfo *err)
{
Pst schPst;
//RgInfCmnBoRpt boRpt;
Inst macInst = cell->macInst - RG_INST_START;
- TRC2(rgROMHndlBcchPcchStaRsp);
- cmMemset((U8*)&schPst, (U8)0, sizeof(Pst));
+ memset(&schPst, 0, sizeof(Pst));
if (rgDBMChkCmnLcCb(cell, staRsp->lcId) != ROK)
{
/* Handle lcCb fetch failure */
- RLOG_ARG1(L_ERROR,DBG_CELLID,cell->cellId,"Invalid LCID:%d",staRsp->lcId);
+ DU_LOG("\nERROR --> MAC : Invalid LCID:%d",staRsp->lcId);
err->errCause = RGERR_ROM_INV_LC_ID;
return RFAILED;
}
This assumes that BO is not received more than 4 frames in advance from the enodeb application */
if (cell->bcchBchInfo.lcId == staRsp->lcId)
{
- U16 nextBchSfn;
+ uint16_t nextBchSfn;
nextBchSfn = (cell->crntTime.sfn + 4 - (cell->crntTime.sfn%4)) % RG_MAX_SFN;
if ((staRsp->u.timeToTx.sfn != nextBchSfn) ||
* -# ROK
* -# RFAILED
**/
-#ifdef ANSI
-PRIVATE S16 rgROMUpdDlSfRemDataCnt
-(
-RgCellCb *cellCb,
-RgDlSf *dlSf
-)
-#else
-PRIVATE S16 rgROMUpdDlSfRemDataCnt(cellCb, dlSf)
-RgCellCb *cellCb;
-RgDlSf *dlSf;
-#endif
+static S16 rgROMUpdDlSfRemDataCnt(RgCellCb *cellCb, RgDlSf *dlSf)
{
RgErrInfo err;
//Inst inst = cellCb->macInst - RG_INST_START;
- TRC2(rgROMUpdDlSfRemDataCnt);
-
-
if(!dlSf->remDatReqCnt)
{
/*This is an error scenario of RLC generating more data
* request than the allocation. Do nothing for this. */
- RLOG_ARG0(L_ERROR,DBG_CELLID,cellCb->cellId,
- "RX new data while remDatReqCnt is 0 for cell");
+ DU_LOG("\nERROR --> MAC : RX new data while remDatReqCnt is 0 for cell");
return RFAILED;
}
if (ROK != rgTOMUtlProcDlSf (dlSf, cellCb, &err))
{
- RLOG_ARG0(L_ERROR,DBG_CELLID,cellCb->cellId,
- "Unable to process downlink slot for cell");
+ DU_LOG("\nERROR --> MAC : Unable to process downlink slot for cell");
err.errType = RGERR_ROM_DEDDATREQ;
}