X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Frg_lmm.c;h=51742fbe216aa27c9285742fa3e6befb2ccdf576;hb=de6a435729e3cad9d4a66329080b8206a64f452c;hp=d6fcdefeb07698025f82bc84a24ad1b9602052ec;hpb=3f340f5742e5c7c92b8541479ee7f2d670200cfb;p=o-du%2Fl2.git diff --git a/src/5gnrmac/rg_lmm.c b/src/5gnrmac/rg_lmm.c index d6fcdefeb..51742fbe2 100755 --- a/src/5gnrmac/rg_lmm.c +++ b/src/5gnrmac/rg_lmm.c @@ -33,9 +33,6 @@ The functions for the configuration, control, status and statistics request primitives are defined here. */ -static const char* RLOG_MODULE_NAME="MAC"; -static int RLOG_FILE_ID=220; -static int RLOG_MODULE_ID=4096; /* header include files (.h) */ #include "common_def.h" @@ -48,6 +45,7 @@ static int RLOG_MODULE_ID=4096; #include "rgr.h" /* LRG Interface defines */ #include "rg.h" /* MAC defines */ #include "rg_err.h" /* MAC error defines */ +#include "mac_utils.h" /* header/extern include files (.x) */ #include "crg.x" /* CRG Interface includes */ @@ -64,54 +62,52 @@ static int RLOG_MODULE_ID=4096; #endif #include "ss_rbuf.h" #include "ss_rbuf.x" -#include "lwr_mac.h" /* MAC CL defines */ #include "mac_sch_interface.h" #include "lwr_mac_upr_inf.h" #include "mac.h" -#include "lwr_mac_phy.h" #include "lwr_mac_fsm.h" +#include "lwr_mac_phy.h" #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ -EXTERN Void rgGetSId ARGS((SystemId *s)); +Void rgGetSId ARGS((SystemId *s)); #ifdef __cplusplus } #endif /* __cplusplus */ /* Public variable declaration */ -LwrMacCb lwrMacCb; -extern MacCb macCb; +MacCb macCb; /* forward references */ -PRIVATE U16 rgLMMGenCfg ARGS(( +static uint16_t rgLMMGenCfg ARGS(( Inst inst, RgCfg *cfg )); -PRIVATE U16 rgLMMSapCfg ARGS(( +static uint16_t rgLMMSapCfg ARGS(( Inst inst, RgCfg *cfg, Elmnt sapType )); -PRIVATE Void rgLMMShutdown ARGS(( +static Void rgLMMShutdown ARGS(( Inst inst )); -PRIVATE Void rgLMMFillCfmPst ARGS(( +static Void rgLMMFillCfmPst ARGS(( Pst *reqPst, Pst *cfmPst, RgMngmt *cfm )); -PRIVATE Void rgLMMGenCntrl ARGS(( +static Void rgLMMGenCntrl ARGS(( RgMngmt *cntrl, RgMngmt *cfm, Pst *cfmPst )); -PRIVATE Void rgLMMSapCntrl ARGS(( +static Void rgLMMSapCntrl ARGS(( RgMngmt *cntrl, RgMngmt *cfm, Pst *cfmPst @@ -137,7 +133,6 @@ Pst *cfmPst * @return S16 * -# ROK **/ -#ifdef ANSI S16 rgActvInit ( Ent entity, /* entity */ @@ -145,13 +140,6 @@ Inst inst, /* instance */ Region region, /* region */ Reason reason /* reason */ ) -#else -S16 rgActvInit(entity, inst, region, reason) -Ent entity; /* entity */ -Inst inst; /* instance */ -Region region; /* region */ -Reason reason; /* reason */ -#endif { Inst macInst ; @@ -175,7 +163,7 @@ Reason reason; /* reason */ #ifdef DEBUGP #ifdef RG_DEBUG /* disabling debugs by default */ - rgCb[macInst].rgInit.dbgMask = 0xffffffff; + rgCb[macInst].rgInit.dbgMask = 0xffffffff; #endif #endif /* DEBUGP */ #ifdef SS_DIAG @@ -197,19 +185,11 @@ Reason reason; /* reason */ SAttachSRngBuf(SS_RNG_BUF_ULMAC_TO_ULRLC, SS_RBUF_ENT_ULRLC,SS_RNG_RX); #endif - /* Initializing CL control block */ - memset(&lwrMacCb, 0, sizeof(LwrMacCb)); - lwrMacCb.region = region; - lwrMacCb.pool = 0; - lwrMacCb.clCfgDone = TRUE; - lwrMacCb.numCell = 0; - lwrMacCb.phyState = PHY_STATE_IDLE; - /* Initialize Scheduler as well */ - schActvInit(ENTMAC, (DEFAULT_CELLS + SCH_INST_START), DFLT_REGION, PWR_UP); + schActvInit(ENTMAC, SCH_INST_START, DFLT_REGION, PWR_UP); /* Initialize lower mac */ - lwrMacInit(); + lwrMacLayerInit(region, 0); return ROK; @@ -233,28 +213,21 @@ Reason reason; /* reason */ * @return S16 * -# ROK **/ -#ifdef ANSI S16 RgMiLrgCfgReq ( Pst *pst, /* post structure */ RgMngmt *cfg /* config structure */ ) -#else -S16 RgMiLrgCfgReq(pst, cfg) -Pst *pst; /* post structure */ -RgMngmt *cfg; /* config structure */ -#endif { - U16 ret = LCM_PRIM_OK; - U16 reason = LCM_REASON_NOT_APPL; + uint16_t ret = LCM_PRIM_OK; + uint16_t reason = LCM_REASON_NOT_APPL; RgMngmt cfm; Pst cfmPst; Inst inst; - RG_DIAG_LVL0(inst,0x0a0b0001, RG_DIAG_NA, SS_DIAG_INV_ARG, - "Received CfgReq for MAC layer, Entity = %d, Instance = %d\n", - pst->srcEnt, pst->srcInst,0,0); + + DU_LOG("\nINFO --> MAC : Received CfgReq for MAC layer, Entity = %d, Instance = %d", pst->srcEnt, pst->srcInst); RG_IS_INST_VALID(pst->dstInst); inst = pst->dstInst - RG_INST_START; @@ -273,19 +246,23 @@ RgMngmt *cfg; /* config structure */ switch(cfg->hdr.elmId.elmnt) { case STGEN: - reason = rgLMMGenCfg(inst,&cfg->t.cfg); - break; +#ifdef INTEL_WLS_MEM + /* Start WLS message receiver thread */ + LwrMacStartWlsRcvr(); +#endif + reason = rgLMMGenCfg(inst,&cfg->t.cfg); + break; case STRGUSAP: case STCRGSAP: case STTFUSAP: - reason = rgLMMSapCfg(inst,&cfg->t.cfg, cfg->hdr.elmId.elmnt); - break; + reason = rgLMMSapCfg(inst,&cfg->t.cfg, cfg->hdr.elmId.elmnt); + break; default: - ret = LCM_PRIM_NOK; - reason = LCM_REASON_INVALID_ELMNT; - RLOG1(L_ERROR, "Invalid Elmnt=%d", - cfg->hdr.elmId.elmnt); - break; + ret = LCM_PRIM_NOK; + reason = LCM_REASON_INVALID_ELMNT; + DU_LOG("\nERROR --> MAC : Invalid Elmnt=%d", + cfg->hdr.elmId.elmnt); + break; } if (reason != LCM_REASON_NOT_APPL) @@ -297,7 +274,7 @@ RgMngmt *cfg; /* config structure */ cfm.cfm.reason = reason; RgMiLrgCfgCfm(&cfmPst, &cfm); - + return ROK; }/*-- RgMiLrgCfgReq --*/ @@ -321,23 +298,16 @@ RgMngmt *cfg; /* config structure */ * @return S16 * -# ROK **/ -#ifdef ANSI S16 RgMiLrgStsReq ( Pst *pst, /* post structure */ RgMngmt *sts /* statistics structure */ ) -#else -S16 RgMiLrgStsReq(pst, sts) -Pst *pst; /* post structure */ -RgMngmt *sts; /* statistics structure */ -#endif { Pst cfmPst; RgMngmt cfm; Inst inst; - RG_IS_INST_VALID(pst->dstInst); inst = pst->dstInst - RG_INST_START; /* Fill the post structure for sending the confirmation */ @@ -360,7 +330,7 @@ RgMngmt *sts; /* statistics structure */ cfm.cfm.status = LCM_PRIM_NOK; cfm.cfm.reason = LCM_REASON_GENCFG_NOT_DONE; RgMiLrgStsCfm(&cfmPst,&cfm); - RLOG0(L_ERROR, "Gen Cfg not done"); + DU_LOG("\nERROR --> MAC : Gen Cfg not done"); return ROK; } @@ -379,7 +349,7 @@ RgMngmt *sts; /* statistics structure */ #ifdef MAC_SCH_STATS { RgGenSts *genSts = &(cfm.t.sts.s.genSts); - U8 cqi = 0; + uint8_t cqi = 0; for(cqi=0; cqi <= 14; cqi++) { /* Filling DL ACK/NACK stats */ @@ -436,8 +406,8 @@ RgMngmt *sts; /* statistics structure */ } } #endif /* MAC_SCH_STATS*/ - } - break; + } + break; case STRGUSAP: memcpy(&(cfm.t.sts.s.rguSts), &rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts, sizeof(RgSapSts)); @@ -446,7 +416,7 @@ RgMngmt *sts; /* statistics structure */ if(sts->t.sts.action == ARST) memset(&rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts, 0, sizeof(RgSapSts)); - break; + break; case STCRGSAP: memcpy(&(cfm.t.sts.s.crgSts), &rgCb[inst].crgSap.sapSts, sizeof(RgSapSts)); @@ -455,7 +425,7 @@ RgMngmt *sts; /* statistics structure */ if(sts->t.sts.action == ARST) memset(&rgCb[inst].crgSap.sapSts, 0, sizeof(RgSapSts)); - break; + break; case STTFUSAP: memcpy(&(cfm.t.sts.s.tfuSts), &rgCb[inst].tfuSap.sapSts, sizeof(RgSapSts)); @@ -464,12 +434,12 @@ RgMngmt *sts; /* statistics structure */ if(sts->t.sts.action == ARST) memset(&rgCb[inst].tfuSap.sapSts, 0, sizeof(RgSapSts)); - break; + break; default: - cfm.cfm.status = LCM_PRIM_NOK; - cfm.cfm.reason = LCM_REASON_INVALID_ELMNT; - RLOG1(L_ERROR, "Invalid Elmnt = %d",sts->hdr.elmId.elmnt); - break; + cfm.cfm.status = LCM_PRIM_NOK; + cfm.cfm.reason = LCM_REASON_INVALID_ELMNT; + DU_LOG("\nERROR --> MAC : Invalid Elmnt = %d",sts->hdr.elmId.elmnt); + break; } RgMiLrgStsCfm(&cfmPst,&cfm); return ROK; @@ -494,17 +464,11 @@ RgMngmt *sts; /* statistics structure */ * @return S16 * -# ROK **/ -#ifdef ANSI S16 RgMiLrgStaReq ( Pst *pst, /* post structure */ RgMngmt *sta /* status structure */ ) -#else -S16 RgMiLrgStaReq(pst, sta) -Pst *pst; /* post structure */ -RgMngmt *sta; /* status structure */ -#endif { Pst cfmPst; RgMngmt cfm; @@ -520,7 +484,7 @@ RgMngmt *sta; /* status structure */ if (sta->t.ssta.s.sysId.ptNmb != NULLP) { - SPutSBuf(pst->region, pst->pool, (Data *)sta->t.ssta.s.sysId.ptNmb, LRG_MAX_PT_NUM_SIZE); + MAC_FREE(sta->t.ssta.s.sysId.ptNmb, LRG_MAX_PT_NUM_SIZE); } memset(&cfm, 0, sizeof(RgMngmt)); @@ -533,12 +497,11 @@ RgMngmt *sta; /* status structure */ if(rgCb[inst].rgInit.cfgDone != TRUE) { SGetDateTime(&cfm.t.ssta.dt); - if (SGetSBuf(cfmPst.region, cfmPst.pool, - (Data **)&(cfm.t.ssta.s.sysId.ptNmb), LRG_MAX_PT_NUM_SIZE) - != ROK) + MAC_ALLOC(cfm.t.ssta.s.sysId.ptNmb, LRG_MAX_PT_NUM_SIZE); + if(cfm.t.ssta.s.sysId.ptNmb == NULLP) { - RLOG0(L_ERROR, "Memory Unavailable for Confirmation"); - return ROK; + DU_LOG("\nERROR --> MAC : Memory Unavailable for Confirmation"); + return ROK; } memset((cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE); rgGetSId(&cfm.t.ssta.s.sysId); @@ -546,7 +509,7 @@ RgMngmt *sta; /* status structure */ cfm.cfm.reason = LCM_REASON_GENCFG_NOT_DONE; cfm.hdr.elmId.elmnt = sta->hdr.elmId.elmnt; RgMiLrgStaCfm(&cfmPst, &cfm); - RLOG0(L_ERROR, "Gen Cfg not done"); + DU_LOG("\nERROR --> MAC : Gen Cfg not done"); return ROK; } @@ -554,11 +517,10 @@ RgMngmt *sta; /* status structure */ { case STGEN: SGetDateTime(&cfm.t.ssta.dt); - if (SGetSBuf(cfmPst.region, cfmPst.pool, - (Data **)&(cfm.t.ssta.s.sysId.ptNmb), LRG_MAX_PT_NUM_SIZE) - != ROK) + MAC_ALLOC(cfm.t.ssta.s.sysId.ptNmb, LRG_MAX_PT_NUM_SIZE); + if(cfm.t.ssta.s.sysId.ptNmb == NULLP) { - RLOG0(L_ERROR, "Memory Unavailable for Confirmation"); + DU_LOG("\nERROR --> MAC : Memory Unavailable for Confirmation"); return ROK; } memset((cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE); @@ -593,11 +555,11 @@ RgMngmt *sta; /* status structure */ RgMiLrgStaCfm(&cfmPst, &cfm); break; default: - cfm.cfm.status = LCM_PRIM_NOK; - cfm.cfm.reason = LCM_REASON_INVALID_ELMNT; - RgMiLrgStaCfm(&cfmPst, &cfm); - RLOG1(L_ERROR, "Invalid elmnt=%d",sta->hdr.elmId.elmnt); - break; + cfm.cfm.status = LCM_PRIM_NOK; + cfm.cfm.reason = LCM_REASON_INVALID_ELMNT; + RgMiLrgStaCfm(&cfmPst, &cfm); + DU_LOG("\nERROR --> MAC : Invalid elmnt=%d",sta->hdr.elmId.elmnt); + break; } return ROK; }/*-- RgMiLrgStaReq --*/ @@ -623,24 +585,16 @@ RgMngmt *sta; /* status structure */ * @return S16 * -# ROK **/ -#ifdef ANSI S16 RgMiLrgCntrlReq ( Pst *pst, /* post structure */ RgMngmt *cntrl /* control structure */ ) -#else -S16 RgMiLrgCntrlReq(pst, cntrl) -Pst *pst; /* post structure */ -RgMngmt *cntrl; /* control structure */ -#endif { S16 ret = ROK; /* return value */ Pst cfmPst; RgMngmt cfm; Inst inst; - - /* Fill the post structure for sending the confirmation */ RG_IS_INST_VALID(pst->dstInst); @@ -663,27 +617,27 @@ RgMngmt *cntrl; /* control structure */ cfm.cfm.reason = LCM_REASON_GENCFG_NOT_DONE; cfm.hdr.elmId.elmnt = cntrl->hdr.elmId.elmnt; RgMiLrgCntrlCfm(&cfmPst, &cfm); - RLOG0(L_ERROR, "Gen Cfg not done"); + DU_LOG("\nERROR --> MAC : Gen Cfg not done"); return ROK; } - + /* General Config done, process the Control request */ switch(cntrl->hdr.elmId.elmnt) { case STGEN: - rgLMMGenCntrl(cntrl, &cfm, &cfmPst); - break; + rgLMMGenCntrl(cntrl, &cfm, &cfmPst); + break; case STTFUSAP: case STRGUSAP: case STCRGSAP: - rgLMMSapCntrl(cntrl, &cfm, &cfmPst); - break; + rgLMMSapCntrl(cntrl, &cfm, &cfmPst); + break; default: - cfm.cfm.status = LCM_PRIM_NOK; - cfm.cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RgMiLrgCntrlCfm(&cfmPst, &cfm); - RLOG1(L_ERROR, "invalid elmnt=%d",cntrl->hdr.elmId.elmnt); - break; + cfm.cfm.status = LCM_PRIM_NOK; + cfm.cfm.reason = LCM_REASON_INVALID_PAR_VAL; + RgMiLrgCntrlCfm(&cfmPst, &cfm); + DU_LOG("\nERROR --> MAC : invalid elmnt=%d",cntrl->hdr.elmId.elmnt); + break; } return (ret); }/*-- RgMiLrgCntrlReq --*/ @@ -703,107 +657,100 @@ RgMngmt *cntrl; /* control structure */ * * @param[in] Inst inst * @param[in] RgCfg *cfg, the Configuaration information - * @return U16 + * @return uint16_t * -# LCM_REASON_GENCFG_NOT_DONE * -# LCM_REASON_INVALID_SAP * -# LCM_REASON_NOT_APPL **/ -#ifdef ANSI -PRIVATE U16 rgLMMSapCfg +static uint16_t rgLMMSapCfg ( Inst inst, RgCfg *cfg, /* Configuaration information */ Elmnt sapType /* Sap Type */ ) -#else -PRIVATE U16 rgLMMSapCfg(inst,cfg,sapType) -Inst inst; -RgCfg *cfg; /* Configuaration information */ -Elmnt sapType; /* Sap Type */ -#endif { - U16 ret = LCM_REASON_NOT_APPL; + uint16_t ret = LCM_REASON_NOT_APPL; RgLowSapCfgInfo *lowSapCfg = NULLP; RgUpSapCfgInfo *upSapCfg = NULLP; - RgUpSapCb *upSapCb = NULLP; + RgUpSapCb *upSapCb = NULLP; - /* Check if Gen Config has been done */ + /* Check if Gen Config has been done */ if(rgCb[inst].rgInit.cfgDone != TRUE) - return (LCM_REASON_GENCFG_NOT_DONE); + return (LCM_REASON_GENCFG_NOT_DONE); switch(sapType) { case STRGUSAP: - if ((cfg->s.rguSap.spId > LRG_MAX_RGU_SAPS) && - (cfg->s.rguSap.selector != ODU_SELECTOR_TC) && - (cfg->s.rguSap.selector != ODU_SELECTOR_LC)) - { - ret = LCM_REASON_INVALID_PAR_VAL; - RLOG0(L_ERROR, "unsupported Selector value for RGU"); - break; - } - upSapCb = &(rgCb[inst].rguSap[cfg->s.rguSap.spId]); - if(upSapCb->sapSta.sapState == LRG_NOT_CFG) - { - upSapCb->sapSta.sapState = LRG_UNBND; - } - upSapCfg = &(upSapCb->sapCfg); - upSapCfg->sapPst.dstEnt = cfg->s.rguSap.ent; - upSapCfg->sapPst.dstInst = cfg->s.rguSap.inst; - upSapCfg->sapPst.dstProcId = cfg->s.rguSap.procId; - upSapCfg->sapPst.srcEnt = rgCb[inst].rgInit.ent; - upSapCfg->sapPst.srcInst = rgCb[inst].rgInit.inst; - upSapCfg->sapPst.srcProcId = rgCb[inst].rgInit.procId; - upSapCfg->sapPst.region = cfg->s.rguSap.mem.region; - upSapCfg->sapPst.pool = cfg->s.rguSap.mem.pool; - upSapCfg->sapPst.selector = cfg->s.rguSap.selector; - upSapCfg->sapPst.route = cfg->s.rguSap.route; - upSapCfg->sapPst.intfVer = 0; - upSapCfg->sapPst.prior = cfg->s.rguSap.prior; - upSapCfg->suId = cfg->s.rguSap.suId; - upSapCfg->spId = cfg->s.rguSap.spId; - /*T2K uses 2 saps, T3K uses 1 sap. change the rgRguDlSap to 1 only if - * there is cfg request with sap is 1*/ - break; + if ((cfg->s.rguSap.spId > LRG_MAX_RGU_SAPS) && + (cfg->s.rguSap.selector != ODU_SELECTOR_TC) && + (cfg->s.rguSap.selector != ODU_SELECTOR_LC)) + { + ret = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : unsupported Selector value for RGU"); + break; + } + upSapCb = &(rgCb[inst].rguSap[cfg->s.rguSap.spId]); + if(upSapCb->sapSta.sapState == LRG_NOT_CFG) + { + upSapCb->sapSta.sapState = LRG_UNBND; + } + upSapCfg = &(upSapCb->sapCfg); + upSapCfg->sapPst.dstEnt = cfg->s.rguSap.ent; + upSapCfg->sapPst.dstInst = cfg->s.rguSap.inst; + upSapCfg->sapPst.dstProcId = cfg->s.rguSap.procId; + upSapCfg->sapPst.srcEnt = rgCb[inst].rgInit.ent; + upSapCfg->sapPst.srcInst = rgCb[inst].rgInit.inst; + upSapCfg->sapPst.srcProcId = rgCb[inst].rgInit.procId; + upSapCfg->sapPst.region = cfg->s.rguSap.mem.region; + upSapCfg->sapPst.pool = cfg->s.rguSap.mem.pool; + upSapCfg->sapPst.selector = cfg->s.rguSap.selector; + upSapCfg->sapPst.route = cfg->s.rguSap.route; + upSapCfg->sapPst.intfVer = 0; + upSapCfg->sapPst.prior = cfg->s.rguSap.prior; + upSapCfg->suId = cfg->s.rguSap.suId; + upSapCfg->spId = cfg->s.rguSap.spId; + /*T2K uses 2 saps, T3K uses 1 sap. change the rgRguDlSap to 1 only if + * there is cfg request with sap is 1*/ + break; case STCRGSAP: - if ((cfg->s.crgSap.selector != ODU_SELECTOR_TC) && - (cfg->s.crgSap.selector != ODU_SELECTOR_LC)) - { - ret = LCM_REASON_INVALID_PAR_VAL; - RLOG0(L_ERROR, "unsupported Selector value for CRG"); - break; - } - if(rgCb[inst].crgSap.sapSta.sapState == LRG_NOT_CFG) - { - rgCb[inst].crgSap.sapSta.sapState = LRG_UNBND; - } - upSapCfg = &rgCb[inst].crgSap.sapCfg; - - upSapCfg->sapPst.dstEnt = cfg->s.crgSap.ent; - upSapCfg->sapPst.dstInst = cfg->s.crgSap.inst; - upSapCfg->sapPst.dstProcId = cfg->s.crgSap.procId; - upSapCfg->sapPst.srcEnt = rgCb[inst].rgInit.ent; - upSapCfg->sapPst.srcInst = rgCb[inst].rgInit.inst; - upSapCfg->sapPst.srcProcId = rgCb[inst].rgInit.procId; - upSapCfg->sapPst.region = cfg->s.crgSap.mem.region; - upSapCfg->sapPst.pool = cfg->s.crgSap.mem.pool; - upSapCfg->sapPst.selector = cfg->s.crgSap.selector; - upSapCfg->sapPst.route = cfg->s.crgSap.route; - upSapCfg->sapPst.intfVer = 0; - upSapCfg->sapPst.prior = cfg->s.crgSap.prior; - upSapCfg->suId = cfg->s.crgSap.suId; - upSapCfg->spId = cfg->s.crgSap.spId; - break; + if ((cfg->s.crgSap.selector != ODU_SELECTOR_TC) && + (cfg->s.crgSap.selector != ODU_SELECTOR_LC)) + { + ret = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : unsupported Selector value for CRG"); + break; + } + if(rgCb[inst].crgSap.sapSta.sapState == LRG_NOT_CFG) + { + rgCb[inst].crgSap.sapSta.sapState = LRG_UNBND; + } + upSapCfg = &rgCb[inst].crgSap.sapCfg; + + upSapCfg->sapPst.dstEnt = cfg->s.crgSap.ent; + upSapCfg->sapPst.dstInst = cfg->s.crgSap.inst; + upSapCfg->sapPst.dstProcId = cfg->s.crgSap.procId; + upSapCfg->sapPst.srcEnt = rgCb[inst].rgInit.ent; + upSapCfg->sapPst.srcInst = rgCb[inst].rgInit.inst; + upSapCfg->sapPst.srcProcId = rgCb[inst].rgInit.procId; + upSapCfg->sapPst.region = cfg->s.crgSap.mem.region; + upSapCfg->sapPst.pool = cfg->s.crgSap.mem.pool; + upSapCfg->sapPst.selector = cfg->s.crgSap.selector; + upSapCfg->sapPst.route = cfg->s.crgSap.route; + upSapCfg->sapPst.intfVer = 0; + upSapCfg->sapPst.prior = cfg->s.crgSap.prior; + upSapCfg->suId = cfg->s.crgSap.suId; + upSapCfg->spId = cfg->s.crgSap.spId; + break; case STTFUSAP: #ifndef CL_MAC_LWLC - if ((cfg->s.tfuSap.selector != ODU_SELECTOR_TC) && - (cfg->s.tfuSap.selector != ODU_SELECTOR_LC)) - { - ret = LCM_REASON_INVALID_PAR_VAL; - RLOG0(L_ERROR, "unsupported Selector value for TFU"); - break; - } + if ((cfg->s.tfuSap.selector != ODU_SELECTOR_TC) && + (cfg->s.tfuSap.selector != ODU_SELECTOR_LC)) + { + ret = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : unsupported Selector value for TFU"); + break; + } #endif if (rgCb[inst].tfuSap.sapSta.sapState == LRG_NOT_CFG) { @@ -829,8 +776,8 @@ Elmnt sapType; /* Sap Type */ sizeof(TmrCfg)); break; default: - /* would never reach here */ - break; + /* would never reach here */ + break; } return (ret); } @@ -850,24 +797,18 @@ Elmnt sapType; /* Sap Type */ * * @param[in] Inst inst * @param[in] RgCfg *cfg, the Configuaration information - * @return U16 + * @return uint16_t * -# LCM_REASON_NOT_APPL * -# LCM_REASON_INVALID_MSGTYPE * -# LCM_REASON_MEM_NOAVAIL **/ -#ifdef ANSI -PRIVATE U16 rgLMMGenCfg +static uint16_t rgLMMGenCfg ( Inst inst, RgCfg *cfg /* Configuaration information */ ) -#else -PRIVATE U16 rgLMMGenCfg(inst,cfg) -Inst inst; -RgCfg *cfg; /* Configuaration information */ -#endif { - U16 ret = LCM_REASON_NOT_APPL; + uint16_t ret = LCM_REASON_NOT_APPL; /* Check if General Configuration is done already */ @@ -876,9 +817,9 @@ RgCfg *cfg; /* Configuaration information */ return (LCM_REASON_INVALID_MSGTYPE); } if ((cfg->s.genCfg.lmPst.selector != ODU_SELECTOR_TC) && - (cfg->s.genCfg.lmPst.selector != ODU_SELECTOR_LC)) + (cfg->s.genCfg.lmPst.selector != ODU_SELECTOR_LC)) { - RLOG0(L_ERROR, "unsupported Selector value for RGU"); + DU_LOG("\nERROR --> MAC : unsupported Selector value for RGU"); return (LCM_REASON_INVALID_PAR_VAL); } /* Update the Pst structure for LM interface */ @@ -894,6 +835,7 @@ RgCfg *cfg; /* Configuaration information */ rgCb[inst].rgInit.pool = cfg->s.genCfg.mem.pool; rgCb[inst].genCfg.tmrRes = cfg->s.genCfg.tmrRes; + macCb.tmrRes = cfg->s.genCfg.tmrRes; macCb.macInst = rgCb[inst].rgInit.inst; macCb.procId = rgCb[inst].rgInit.procId; @@ -902,17 +844,15 @@ RgCfg *cfg; /* Configuaration information */ if(cfg->s.genCfg.numRguSaps == 0) { - RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgGenCfg(): Invalid numRguSap.\n")); + DU_LOG("\nERROR --> MAC : rgGenCfg(): Invalid numRguSap.\n"); return RFAILED; } /* allocate RGR saps */ - if (SGetSBuf(rgCb[inst].rgInit.region, - rgCb[inst].rgInit.pool, - (Data **)&rgCb[inst].rguSap, - (sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps)) != ROK) + MAC_ALLOC(rgCb[inst].rguSap, sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps); + if(rgCb[inst].rguSap == NULLP) { - RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgGenCfg(): Failed to allocate mem for RGU SAP's.\n")); + DU_LOG("\nERROR --> MAC : rgGenCfg(): Failed to allocate mem for RGU SAP's.\n"); return RFAILED; } rgCb[inst].numRguSaps = cfg->s.genCfg.numRguSaps; @@ -924,28 +864,25 @@ RgCfg *cfg; /* Configuaration information */ } rgCb[inst].tfuSap.sapSta.sapState = LRG_NOT_CFG; /* Initialize the timer blocks */ - cmInitTimers(rgCb[inst].tmrBlk, RG_MAX_TIMER); + cmInitTimers(macCb.tmrBlk, MAX_NUM_TIMER); /* Initialzie the timer queue */ - memset(&rgCb[inst].tmrTq, 0, sizeof(CmTqType)*RG_TQ_SIZE); + memset(&macCb.tmrTq, 0, sizeof(CmTqType) * MAC_TQ_SIZE); /* Initialize the timer control point */ - memset(&rgCb[inst].tmrTqCp, 0, sizeof(CmTqCp)); - rgCb[inst].tmrTqCp.tmrLen = RG_TQ_SIZE; -#if 0 + memset(&macCb.tmrTqCp, 0, sizeof(CmTqCp)); + macCb.tmrTqCp.tmrLen = MAC_TQ_SIZE; + /* Timer Registration request to SSI */ - if (SRegTmrMt(rgCb[inst].rgInit.ent, rgCb[inst].rgInit.inst, - (S16)rgCb[inst].genCfg.tmrRes, rgActvTmr) != ROK) + if(ODU_REG_TMR_MT(ENTMAC, macCb.macInst, macCb.tmrRes, macActvTmr) != ROK) { - - RLOG0(L_ERROR, "Failed to register timer"); - SPutSBuf(rgCb[inst].rgInit.region, - rgCb[inst].rgInit.pool, - (Data *)rgCb[inst].rguSap, - (sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps)); + DU_LOG("\nERROR --> MAC : Failed to register timer"); + + MAC_FREE(rgCb[inst].rguSap, + (sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps)); return (LCM_REASON_MEM_NOAVAIL); } -#endif + /* Set Config done in TskInit */ rgCb[inst].rgInit.cfgDone = TRUE; @@ -969,33 +906,25 @@ RgCfg *cfg; /* Configuaration information */ * File : rg_lmm.c * **********************************************************/ -#ifdef ANSI -PRIVATE Void rgLMMShutdown -( -Inst inst -) -#else -PRIVATE Void rgLMMShutdown(inst) -Inst inst; -#endif +static Void rgLMMShutdown(Inst inst) { RgCellCb *cell = rgCb[inst].cell; - U8 idx; + uint8_t idx; - /* Unbind the TFU Sap */ + /* Unbind the TFU Sap */ if(rgCb[inst].tfuSap.sapSta.sapState == LRG_WAIT_BNDCFM) { - rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, LRG_UNBND); + //rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, LRG_UNBND); if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) { rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); - } + } rgCb[inst].tfuSap.sapSta.sapState = LRG_UNBND; } if(rgCb[inst].tfuSap.sapSta.sapState == LRG_BND) { - rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, LRG_UNBND); + //rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, LRG_UNBND); rgCb[inst].tfuSap.sapSta.sapState = LRG_UNBND; } @@ -1004,32 +933,29 @@ Inst inst; { for(idx=0;idx < RG_NUM_SUB_FRAMES; idx++) { - rgTOMRlsSf(inst,&cell->subFrms[idx]); + rgTOMRlsSf(inst,&cell->subFrms[idx]); } rgCFGFreeCellCb(cell); } /* Deleting the RGU SAPs */ - SPutSBuf(rgCb[inst].rgInit.region, - rgCb[inst].rgInit.pool, - (Data *)rgCb[inst].rguSap, - (sizeof(RgUpSapCb) * rgCb[inst].numRguSaps)); - rgCb[inst].rguSap = NULLP; + MAC_FREE(rgCb[inst].rguSap, + (sizeof(RgUpSapCb) * rgCb[inst].numRguSaps)); rgCb[inst].inactiveCell = NULLP; rgCb[inst].cell = NULLP; /* De-register the Timer Service */ (Void) SDeregTmrMt(rgCb[inst].rgInit.ent, rgCb[inst].rgInit.inst, - (S16)rgCb[inst].genCfg.tmrRes, rgActvTmr); + (S16)rgCb[inst].genCfg.tmrRes, macActvTmr); /* call back the task initialization function to intialize * the global RgCb Struct */ rgActvInit(rgCb[inst].rgInit.ent, rgCb[inst].rgInit.inst, rgCb[inst].rgInit.region, - rgCb[inst].rgInit.reason); + rgCb[inst].rgInit.reason); - RETVOID; + return; } @@ -1048,25 +974,18 @@ Inst inst; * File : rg_lmm.c * **********************************************************/ -#ifdef ANSI -PRIVATE Void rgLMMGenCntrl +static Void rgLMMGenCntrl ( RgMngmt *cntrl, RgMngmt *cfm, Pst *cfmPst ) -#else -PRIVATE Void rgLMMGenCntrl(cntrl, cfm, cfmPst) -RgMngmt *cntrl; -RgMngmt *cfm; -Pst *cfmPst; -#endif { Inst inst = (cfmPst->srcInst - RG_INST_START); cfm->cfm.status = LCM_PRIM_OK; cfm->cfm.reason = LCM_REASON_NOT_APPL; - + switch(cntrl->t.cntrl.action) { @@ -1095,65 +1014,65 @@ Pst *cfmPst; case SADBG: /* Enable Debug Printing */ #ifdef DEBUGP - rgCb[inst].rgInit.dbgMask |= cntrl->t.cntrl.s.rgDbgCntrl.dbgMask; + rgCb[inst].rgInit.dbgMask |= cntrl->t.cntrl.s.rgDbgCntrl.dbgMask; #endif - break; + break; #ifdef SS_DIAG - case SALOG: - rgCb[inst].rgInit.logMask = cntrl->t.cntrl.s.logMask; - break; + case SALOG: + rgCb[inst].rgInit.logMask = cntrl->t.cntrl.s.logMask; + break; #endif - default: - cfm->cfm.status = LCM_PRIM_NOK; - cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RLOG1(L_ERROR, "invalid subaction=%d",cntrl->t.cntrl.subAction); - break; - } - break; + default: + cfm->cfm.status = LCM_PRIM_NOK; + cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : invalid subaction=%d",cntrl->t.cntrl.subAction); + break; + } + break; case ADISIMM: - /* Action is Diable immidiately */ - switch(cntrl->t.cntrl.subAction) - { - case SATRC: - /* Disable Traces */ - rgCb[inst].rgInit.trc = FALSE; - break; - case SAUSTA: - /* Disable Unsolicited Status (alarms) */ - rgCb[inst].rgInit.usta = FALSE; - break; - case SADBG: - /* Disable Debug Printing */ + /* Action is Diable immidiately */ + switch(cntrl->t.cntrl.subAction) + { + case SATRC: + /* Disable Traces */ + rgCb[inst].rgInit.trc = FALSE; + break; + case SAUSTA: + /* Disable Unsolicited Status (alarms) */ + rgCb[inst].rgInit.usta = FALSE; + break; + case SADBG: + /* Disable Debug Printing */ #ifdef DEBUGP - rgCb[inst].rgInit.dbgMask &=~cntrl->t.cntrl.s.rgDbgCntrl.dbgMask; + rgCb[inst].rgInit.dbgMask &=~cntrl->t.cntrl.s.rgDbgCntrl.dbgMask; #endif - break; + break; #ifdef SS_DIAG - case SALOG: - rgCb[inst].rgInit.logMask = cntrl->t.cntrl.s.logMask; - break; + case SALOG: + rgCb[inst].rgInit.logMask = cntrl->t.cntrl.s.logMask; + break; #endif - default: - cfm->cfm.status = LCM_PRIM_NOK; - cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RLOG1(L_ERROR, "invalid subaction=%d",cntrl->t.cntrl.subAction); - break; - } - break; + default: + cfm->cfm.status = LCM_PRIM_NOK; + cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : invalid subaction=%d",cntrl->t.cntrl.subAction); + break; + } + break; case ASHUTDOWN: - /* Free all the memory dynamically allocated by MAC */ - rgLMMShutdown(inst); - break; + /* Free all the memory dynamically allocated by MAC */ + rgLMMShutdown(inst); + break; default: - cfm->cfm.status = LCM_PRIM_NOK; - cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RLOG1(L_ERROR, "invalid action=%d",cntrl->t.cntrl.action); - break; + cfm->cfm.status = LCM_PRIM_NOK; + cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; + DU_LOG("\nERROR --> MAC : invalid action=%d",cntrl->t.cntrl.action); + break; } RgMiLrgCntrlCfm(cfmPst, cfm); - RETVOID; + return; } @@ -1172,19 +1091,12 @@ Pst *cfmPst; * File : rg_lmm.c * **********************************************************/ -#ifdef ANSI -PRIVATE Void rgLMMSapCntrl +static Void rgLMMSapCntrl ( RgMngmt *cntrl, RgMngmt *cfm, Pst *cfmPst ) -#else -PRIVATE Void rgLMMSapCntrl(cntrl, cfm, cfmPst) -RgMngmt *cntrl; -RgMngmt *cfm; -Pst *cfmPst; -#endif { Inst inst = cfmPst->srcInst - RG_INST_START; @@ -1223,8 +1135,8 @@ Pst *cfmPst; cfm->cfm.reason = LCM_REASON_NOT_APPL; RgMiLrgCntrlCfm(cfmPst, cfm); - rgLIMTfuBndReq(inst,rgCb[inst].tfuSap.sapCfg.suId, - rgCb[inst].tfuSap.sapCfg.spId); + //rgLIMTfuBndReq(inst,rgCb[inst].tfuSap.sapCfg.suId, + //rgCb[inst].tfuSap.sapCfg.spId); RETVOID; } break; @@ -1240,7 +1152,7 @@ Pst *cfmPst; } else { - rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, TFU_UBNDREQ_MNGMT); + //rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, TFU_UBNDREQ_MNGMT); if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) { rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); @@ -1256,7 +1168,7 @@ Pst *cfmPst; if ((rgCb[inst].tfuSap.sapSta.sapState == LRG_WAIT_BNDCFM) || (rgCb[inst].tfuSap.sapSta.sapState == LRG_BND)) { - rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, TFU_UBNDREQ_MNGMT); + //rgLIMTfuUbndReq(inst,rgCb[inst].tfuSap.sapCfg.spId, TFU_UBNDREQ_MNGMT); if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) { rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); @@ -1270,8 +1182,8 @@ Pst *cfmPst; default: cfm->cfm.status = LCM_PRIM_NOK; cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgLMMSapCntrl(): invalid action=%d", - cntrl->t.cntrl.action)); + DU_LOG("\nERROR --> MAC : rgLMMSapCntrl(): invalid action=%d", + cntrl->t.cntrl.action); break; } break; @@ -1287,8 +1199,8 @@ Pst *cfmPst; default: cfm->cfm.status = LCM_PRIM_NOK; cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgLMMSapCntrl(): invalid action=%d", - cntrl->t.cntrl.action)); + DU_LOG("\nERROR --> MAC : rgLMMSapCntrl(): invalid action=%d", + cntrl->t.cntrl.action); break; } break; @@ -1304,7 +1216,7 @@ Pst *cfmPst; default: cfm->cfm.status = LCM_PRIM_NOK; cfm->cfm.reason = LCM_REASON_INVALID_PAR_VAL; - RLOG1(L_ERROR, "invalid action=%d",cntrl->t.cntrl.action); + DU_LOG("\nERROR --> MAC : invalid action=%d",cntrl->t.cntrl.action); break; } @@ -1314,7 +1226,7 @@ Pst *cfmPst; RETVOID; } RgMiLrgCntrlCfm(cfmPst, cfm); - RETVOID; + return; } @@ -1334,19 +1246,12 @@ Pst *cfmPst; * File : rg_lmm.c * **********************************************************/ -#ifdef ANSI -PRIVATE Void rgLMMFillCfmPst +static Void rgLMMFillCfmPst ( Pst *reqPst, Pst *cfmPst, RgMngmt *cfm ) -#else -PRIVATE Void rgLMMFillCfmPst(reqPst, cfmPst, cfm) -Pst *reqPst; -Pst *cfmPst; -RgMngmt *cfm; -#endif { Inst inst; inst = (reqPst->dstInst - RG_INST_START); @@ -1364,7 +1269,7 @@ RgMngmt *cfm; cfmPst->region = cfm->hdr.response.mem.region; cfmPst->pool = cfm->hdr.response.mem.pool; - RETVOID; + return; } @@ -1381,31 +1286,23 @@ RgMngmt *cfm; * * @param[in] Inst inst * @param[in] S16 tmrEvnt, the Timer Event - * @param[in] U32 tmrVal, the Wait Time + * @param[in] uint32_t tmrVal, the Wait Time * @param[in] PTR cb, Entry for which Timer expired * @return S16 * -# ROK **/ -#ifdef ANSI S16 rgLMMStartTmr ( Inst inst, S16 tmrEvnt, /* Timer Event */ -U32 tmrVal, /* Wait Time */ +uint32_t tmrVal, /* Wait Time */ PTR cb /* Entry for which Timer Expired */ ) -#else -S16 rgLMMStartTmr(tmrEvnt, tmrVal, cb) -Inst inst; -S16 tmrEvnt; /* Timer Event */ -U32 tmrVal; /* Wait Time */ -PTR cb; /* Entry for which Timer Expired */ -#endif { CmTmrArg arg; - UNUSED(tmrEvnt); + UNUSED(tmrEvnt); /* Initialize the arg structure */ memset(&arg, 0, sizeof(CmTmrArg)); @@ -1444,22 +1341,15 @@ PTR cb; /* Entry for which Timer Expired */ * -# ROK * -# RFAILED **/ -#ifdef ANSI S16 rgLMMStopTmr ( Inst inst, /* Scheduler instance */ S16 tmrEvnt, /* Timer Event */ PTR cb /* Entry for which Timer Expired */ ) -#else -S16 rgLMMStopTmr(inst,tmrEvnt, cb) -Inst inst; /* Scheduler instance */ -S16 tmrEvnt; /* Timer Event */ -PTR cb; /* Entry for which Timer Expired */ -#endif { CmTmrArg arg; - U8 i; + uint8_t i; S16 ret; @@ -1510,17 +1400,11 @@ PTR cb; /* Entry for which Timer Expired */ * @return S16 * -# ROK **/ -#ifdef ANSI S16 rgLMMTmrExpiry ( PTR cb, /* Pointer to timer control block */ S16 tmrEvnt /* Timer Event */ ) -#else -S16 rgLMMTmrExpiry(cb,tmrEvnt) -PTR cb; /* Pointer to timer control block */ -S16 tmrEvnt; /* Timer Event */ -#endif { S16 ret = ROK; RgLowSapCb *tfuSap = (RgLowSapCb *)cb; @@ -1545,12 +1429,12 @@ S16 tmrEvnt; /* Timer Event */ } /* Send bind request */ - rgLIMTfuBndReq(inst,rgCb[inst].tfuSap.sapCfg.suId, - rgCb[inst].tfuSap.sapCfg.spId); + //rgLIMTfuBndReq(inst,rgCb[inst].tfuSap.sapCfg.suId, + //rgCb[inst].tfuSap.sapCfg.spId); } break; default: - RLOG1(L_ERROR, "Invalid tmrEvnt=%d",tmrEvnt); + DU_LOG("\nERROR --> MAC : Invalid tmrEvnt=%d",tmrEvnt); ret = RFAILED; break; } @@ -1570,34 +1454,23 @@ S16 tmrEvnt; /* Timer Event */ * status indication to the Layer Manager. * * @param[in] Inst inst - * @param[in] U16 category, the Alarm category - * @param[in] U16 event, the Alarm event - * @param[in] U16 cause, the cause of the Alarm + * @param[in] uint16_t category, the Alarm category + * @param[in] uint16_t event, the Alarm event + * @param[in] uint16_t cause, the cause of the Alarm * @param[in] RgUstaDgn *dgn, Alarm Diagonostics * @return S16 * -# ROK **/ -#ifdef ANSI S16 rgLMMStaInd ( Inst inst, -U16 category, -U16 event, -U16 cause, +uint16_t category, +uint16_t event, +uint16_t cause, RgUstaDgn *dgn ) -#else -S16 rgLMMStaInd(inst,category, event, cause, dgn) -Inst inst; -U16 category; -U16 event; -U16 cause; -RgUstaDgn *dgn; -#endif { RgMngmt usta; - - if(rgCb[inst].rgInit.usta == FALSE) { return ROK; @@ -1637,22 +1510,15 @@ RgUstaDgn *dgn; * * @param[in] Inst inst * @param[in] Buffer *srcMbuf, the Message Buffer . - * @param[in] U8 event, the trace event. + * @param[in] uint8_t event, the trace event. * @return Void **/ -#ifdef ANSI Void rgLMMTrcInd ( Inst inst, Buffer *srcMbuf, /* Message Buffer */ -U8 event /* event */ +uint8_t event /* event */ ) -#else -Void rgLMMTrcInd(inst,srcMbuf,event) -Inst inst; -Buffer *srcMbuf; /* Message Buffer */ -U8 event; /* event */ -#endif { Buffer *dstMbuf = NULLP; MsgLen bufLen = 0; @@ -1665,8 +1531,8 @@ U8 event; /* event */ if ((rgCb[inst].trcLen == LRG_NO_TRACE) || (srcMbuf == NULLP)) { - RLOG0(L_ERROR, "Trace Disabled."); - RETVOID; + DU_LOG("\nERROR --> MAC : Trace Disabled."); + return; } memset(&trc, 0, sizeof(RgMngmt)); @@ -1681,20 +1547,20 @@ U8 event; /* event */ trc.hdr.transId = rgCb[inst].genCfg.trcResp.transId; SGetDateTime(&trc.t.trc.dt); - + /* Check if the whole buffer is to be sent in Trace indication */ if(rgCb[inst].trcLen == LRG_FULL_TRACE) { if (SCpyMsgMsg(srcMbuf, pst.region, pst.pool, &dstMbuf) - != ROK) + != ROK) { - RLOG0(L_ERROR, "SCpyMsgMsg Failed."); - RETVOID; + DU_LOG("\nERROR --> MAC : SCpyMsgMsg Failed."); + return; } trc.cfm.status = LCM_PRIM_OK; trc.cfm.reason = LCM_REASON_NOT_APPL; trc.t.trc.evnt = event; - + /* Send Trace Indication to Layer manager */ RgMiLrgTrcInd(&pst, &trc, dstMbuf); } @@ -1704,71 +1570,71 @@ U8 event; /* event */ /* Get the length of the recvd message buffer */ if (SFndLenMsg(srcMbuf, &bufLen) != ROK) { - RLOG0(L_ERROR, "SFndLenMsg Failed."); - RETVOID; + DU_LOG("\nERROR --> MAC : SFndLenMsg Failed."); + return; } /* Check if the recvd buffer size is less than request trace len */ if(bufLen < rgCb[inst].trcLen) { - /* Copy the whole of the recvd buffer in trace indication */ - - if (SCpyMsgMsg(srcMbuf, pst.region, pst.pool, &dstMbuf) - != ROK) - { - RLOG0(L_ERROR, "SCpyMsgMsg Failed."); - RETVOID; - } - - trc.cfm.status = LCM_PRIM_OK; - trc.cfm.reason = LCM_REASON_NOT_APPL; - trc.t.trc.evnt = event; + /* Copy the whole of the recvd buffer in trace indication */ + + if (SCpyMsgMsg(srcMbuf, pst.region, pst.pool, &dstMbuf) + != ROK) + { + DU_LOG("\nERROR --> MAC : SCpyMsgMsg Failed."); + return; + } + + trc.cfm.status = LCM_PRIM_OK; + trc.cfm.reason = LCM_REASON_NOT_APPL; + trc.t.trc.evnt = event; - /* Send Trace Indication to Layer manager */ - RgMiLrgTrcInd(&pst, &trc, dstMbuf); + /* Send Trace Indication to Layer manager */ + RgMiLrgTrcInd(&pst, &trc, dstMbuf); } /* if the recvd buffer size is greater than request trace len */ if(bufLen >= rgCb[inst].trcLen) { - /* Get a temporary buffer to store the msg */ - if (rgAllocSBuf(inst,&tempBuf, rgCb[inst].trcLen) != ROK) - { - RLOG0(L_ERROR, "rgAllocSBuf Failed."); - RETVOID; - } - - /* Copy trcLen nos of bytes from the recvd message */ - if (SCpyMsgFix(srcMbuf,0,rgCb[inst].trcLen,tempBuf,&tempCnt) != ROK) - { - RLOG0(L_ERROR, "SCpyMsgFix Failed."); - RETVOID; - } - - if (SGetMsg(pst.region, pst.pool, &dstMbuf) != ROK) - { - RLOG0(L_ERROR, "dstMbuf Allocation Failed"); - RETVOID; - } - /* Copy the tempBuf data to dst mBuf */ - if (SCpyFixMsg(tempBuf,dstMbuf,0,rgCb[inst].trcLen,&tempCnt) != ROK) - { - RLOG0(L_ERROR, "SCpyFixMsg Failed."); - RETVOID; - } - - /*ccpu00117052 - MOD - Passing double pointer for proper NULLP - assignment */ - /* Free the memory allocated for tempBuf */ - rgFreeSBuf(inst,&tempBuf, rgCb[inst].trcLen); - - trc.cfm.status = LCM_PRIM_OK; - trc.cfm.reason = LCM_REASON_NOT_APPL; - trc.t.trc.evnt = event; - - /* Send Trace Indication to Layer manager */ - RgMiLrgTrcInd(&pst, &trc, dstMbuf); + /* Get a temporary buffer to store the msg */ + if (rgAllocSBuf(inst,&tempBuf, rgCb[inst].trcLen) != ROK) + { + DU_LOG("\nERROR --> MAC : rgAllocSBuf Failed."); + return; + } + + /* Copy trcLen nos of bytes from the recvd message */ + if (SCpyMsgFix(srcMbuf,0,rgCb[inst].trcLen,tempBuf,&tempCnt) != ROK) + { + DU_LOG("\nERROR --> MAC : SCpyMsgFix Failed."); + return; + } + + if (ODU_GET_MSG_BUF(pst.region, pst.pool, &dstMbuf) != ROK) + { + DU_LOG("\nERROR --> MAC : dstMbuf Allocation Failed"); + return; + } + /* Copy the tempBuf data to dst mBuf */ + if (SCpyFixMsg(tempBuf,dstMbuf,0,rgCb[inst].trcLen,&tempCnt) != ROK) + { + DU_LOG("\nERROR --> MAC : SCpyFixMsg Failed."); + return; + } + + /*ccpu00117052 - MOD - Passing double pointer for proper NULLP + assignment */ + /* Free the memory allocated for tempBuf */ + rgFreeSBuf(inst,&tempBuf, rgCb[inst].trcLen); + + trc.cfm.status = LCM_PRIM_OK; + trc.cfm.reason = LCM_REASON_NOT_APPL; + trc.t.trc.evnt = event; + + /* Send Trace Indication to Layer manager */ + RgMiLrgTrcInd(&pst, &trc, dstMbuf); } } - RETVOID; + return; } @@ -1788,23 +1654,16 @@ U8 event; /* event */ * * @param[in] Pst *pst, Post Structure * @param[in] SuId suId, Service user ID - * @param[in] U8 status, Status + * @param[in] uint8_t status, Status * @return S16 * -# ROK **/ -#ifdef ANSI S16 rgLMMBndCfm ( Pst *pst, /* Post Structure */ SuId suId, /* Service user ID */ -U8 status /* Status */ +uint8_t status /* Status */ ) -#else -S16 rgLMMBndCfm(pst,suId,status) -Pst *pst; /* Post Structure */ -SuId suId; /* Service user ID */ -U8 status; /* Status */ -#endif { Inst inst = pst->dstInst - RG_INST_START; S16 ret = ROK; @@ -1817,7 +1676,7 @@ U8 status; /* Status */ /* Check if the suId is valid */ if(rgCb[inst].tfuSap.sapCfg.suId != suId) { - RLOG0(L_ERROR, "Invalid SuId"); + DU_LOG("\nERROR --> MAC : Invalid SuId"); return RFAILED; } @@ -1825,12 +1684,12 @@ U8 status; /* Status */ switch(rgCb[inst].tfuSap.sapSta.sapState) { case LRG_WAIT_BNDCFM: - break; + break; case LRG_BND: - /* SAP is already bound */ - return ROK; + /* SAP is already bound */ + return ROK; default: - return RFAILED; + return RFAILED; } cfmPst = rgCb[inst].rgInit.lmPst; @@ -1845,28 +1704,28 @@ U8 status; /* Status */ switch(status) { case CM_BND_OK: /* status is OK */ - /* Change SAP state to Bound */ - rgCb[inst].tfuSap.sapSta.sapState = LRG_BND; - if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) - { - ret = rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); - } - /* Send Control Confirm with status as OK to Layer Manager */ - cntrlCfm.cfm.status = LCM_PRIM_OK; - cntrlCfm.cfm.reason = LCM_REASON_NOT_APPL; - break; + /* Change SAP state to Bound */ + rgCb[inst].tfuSap.sapSta.sapState = LRG_BND; + if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) + { + ret = rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); + } + /* Send Control Confirm with status as OK to Layer Manager */ + cntrlCfm.cfm.status = LCM_PRIM_OK; + cntrlCfm.cfm.reason = LCM_REASON_NOT_APPL; + break; default: - /* Change SAP state to UnBound */ - rgCb[inst].tfuSap.sapSta.sapState = LRG_UNBND; - if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) - { - ret = rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); - } - /* Send Control Confirm with status as NOK to Layer Manager */ - cntrlCfm.cfm.status = LCM_PRIM_NOK; - cntrlCfm.cfm.reason = LCM_REASON_NEG_CFM; - break; + /* Change SAP state to UnBound */ + rgCb[inst].tfuSap.sapSta.sapState = LRG_UNBND; + if (rgCb[inst].tfuSap.sapCfg.bndTmr.enb == TRUE) + { + ret = rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap); + } + /* Send Control Confirm with status as NOK to Layer Manager */ + cntrlCfm.cfm.status = LCM_PRIM_NOK; + cntrlCfm.cfm.reason = LCM_REASON_NEG_CFM; + break; } rgCb[inst].tfuSap.numBndRetries = 0; cntrlCfm.hdr.elmId.elmnt = STTFUSAP; @@ -1877,42 +1736,7 @@ U8 status; /* Status */ return (ret); } - -/** - * @brief LTE MAC timer call back function registered with SSI. - * - * @details - * - * Function : rgActvTmr - * - * This function is invoked by SSI for every timer activation - * period expiry. - * - * @return S16 - * -# ROK - **/ -#ifdef ANSI -S16 rgActvTmr -( - Ent ent, - Inst inst -) -#else -S16 rgActvTmr(ent, inst) -Ent ent; -Inst inst; -#endif -{ - Inst macInst = (inst - RG_INST_START); - - /* Check if any MAC timer has expired */ - cmPrcTmr(&rgCb[macInst].tmrTqCp, rgCb[macInst].tmrTq, (PFV) rgLMMTmrExpiry); - - return ROK; - -} /* end of rgActvTmr */ - /********************************************************************** - - End of file -**********************************************************************/ + + End of file + **********************************************************************/