static int RLOG_MODULE_ID=4096;
/* header include files (.h) */
-#include "stdbool.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_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" /* common memory link list library */
-#include "cm_lte.h" /* Common LTE Defines */
+#include "common_def.h"
#include "rg_env.h" /* MAC Environment Defines */
#include "crg.h" /* CRG Interface defines */
#include "rgu.h" /* RGU Interface defines */
#include "rgr.h" /* LRG Interface defines */
#include "rg.h" /* MAC defines */
#include "rg_err.h" /* MAC error defines */
-#include "du_log.h"
/* header/extern include files (.x) */
-#include "gen.x" /* general */
-#include "ssi.x" /* system services */
-#include "cm5.x" /* system services */
-#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" /* common memory link list library */
-#include "cm_lte.x" /* Common LTE Defines */
#include "crg.x" /* CRG Interface includes */
#include "rgu.x" /* RGU Interface includes */
#include "tfu.x" /* RGU Interface includes */
#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"
#endif /* __cplusplus */
/* Public variable declaration */
-ClCb clGlobalCp;
+LwrMacCb lwrMacCb;
extern MacCb macCb;
-int MacSchCellCfgReq(Pst *pst,MacCellCfg *macCellCfg);
-
/* forward references */
PRIVATE U16 rgLMMGenCfg ARGS((
Inst inst,
Pst *cfmPst
));
-extern int packMacCellCfgCfm(Pst *pst, MacCellCfgCfm *macCellCfgCfm);
-
-packMacCellCfgConfirm packMacCellCfmOpts[] =
-{
- packMacCellCfgCfm, /* packing for loosely coupled */
- duHandleMacCellCfgCfm, /* packing for tightly coupled */
- packMacCellCfgCfm, /* packing for light weight loosly coupled */
-};
-
-SchCellCfgFunc SchCellCfgOpts[] =
-{
- packSchCellCfg, /* packing for loosely coupled */
- SchHdlCellCfgReq, /* packing for tightly coupled */
- packSchCellCfg /* packing for light weight loosly coupled */
-};
-
\f
/**
* @brief Task Initiation callback function.
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgActvInit
+S16 rgActvInit
(
Ent entity, /* entity */
Inst inst, /* instance */
Reason reason /* reason */
)
#else
-PUBLIC S16 rgActvInit(entity, inst, region, reason)
+S16 rgActvInit(entity, inst, region, reason)
Ent entity; /* entity */
Inst inst; /* instance */
Region region; /* region */
#endif
{
Inst macInst ;
- TRC2(rgActvInit);
RG_IS_INST_VALID(inst);
macInst = inst - RG_INST_START;
/* Initialize the MAC TskInit structure to zero */
- cmMemset ((U8 *)&rgCb[macInst], 0, sizeof(RgCb));
+ memset (&rgCb[macInst], 0, sizeof(RgCb));
/* Initialize the MAC TskInit with received values */
rgCb[macInst].rgInit.ent = entity;
#endif
/* Initializing CL control block */
- clGlobalCp.region = region;
- clGlobalCp.pool = 0;
- clGlobalCp.clCfgDone = FALSE;
- clGlobalCp.numOfCells = 0;
- clGlobalCp.phyState = PHY_STATE_IDLE;
-
- if( cmHashListInit(&clGlobalCp.cellCbLst, MAX_NUM_CELL_SUPP, 0x0, FALSE,
- CM_HASH_KEYTYPE_DEF, clGlobalCp.region, clGlobalCp.pool ) != ROK )
- {
- printf("\n Cellcb hash list initialization failed for MAC CL");
- RETVALUE(RFAILED);
- }
+ 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(ENTRG, (DEFAULT_CELLS + SCH_INST_START), DFLT_REGION, PWR_UP);
+ schActvInit(ENTMAC, (DEFAULT_CELLS + SCH_INST_START), DFLT_REGION, PWR_UP);
/* Initialize lower mac */
lwrMacInit();
- RETVALUE(ROK);
+ return ROK;
} /* rgActvInit */
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 RgMiLrgCfgReq
+S16 RgMiLrgCfgReq
(
Pst *pst, /* post structure */
RgMngmt *cfg /* config structure */
)
#else
-PUBLIC S16 RgMiLrgCfgReq(pst, cfg)
+S16 RgMiLrgCfgReq(pst, cfg)
Pst *pst; /* post structure */
RgMngmt *cfg; /* config structure */
#endif
Pst cfmPst;
Inst inst;
- TRC2(RgMiLrgCfgReq)
-
RG_DIAG_LVL0(inst,0x0a0b0001, RG_DIAG_NA, SS_DIAG_INV_ARG,
"Received CfgReq for MAC layer, Entity = %d, Instance = %d\n",
/* Fill the post structure for sending the confirmation */
rgLMMFillCfmPst(pst, &cfmPst, cfg);
- cmMemset((U8 *)&cfm, 0, sizeof(RgMngmt));
+ memset(&cfm, 0, sizeof(RgMngmt));
#ifdef LMINT3
cfm.hdr.transId = cfg->hdr.transId;
RgMiLrgCfgCfm(&cfmPst, &cfm);
- RETVALUE(ROK);
+ return ROK;
}/*-- RgMiLrgCfgReq --*/
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 RgMiLrgStsReq
+S16 RgMiLrgStsReq
(
Pst *pst, /* post structure */
RgMngmt *sts /* statistics structure */
)
#else
-PUBLIC S16 RgMiLrgStsReq(pst, sts)
+S16 RgMiLrgStsReq(pst, sts)
Pst *pst; /* post structure */
RgMngmt *sts; /* statistics structure */
#endif
RgMngmt cfm;
Inst inst;
- TRC2(RgMiLrgStsReq)
-
RG_IS_INST_VALID(pst->dstInst);
inst = pst->dstInst - RG_INST_START;
/* Fill the post structure for sending the confirmation */
rgLMMFillCfmPst(pst, &cfmPst, sts);
- cmMemset((U8 *)&cfm, 0, sizeof(RgMngmt));
+ memset(&cfm, 0, sizeof(RgMngmt));
#ifdef LMINT3
cfm.hdr.transId = sts->hdr.transId;
cfm.cfm.reason = LCM_REASON_GENCFG_NOT_DONE;
RgMiLrgStsCfm(&cfmPst,&cfm);
RLOG0(L_ERROR, "Gen Cfg not done");
- RETVALUE(ROK);
+ return ROK;
}
switch(sts->hdr.elmId.elmnt)
{
case STGEN:
{
- cmMemcpy((U8 *)&(cfm.t.sts.s.genSts), (U8 *)&rgCb[inst].genSts,
+ memcpy(&(cfm.t.sts.s.genSts), &rgCb[inst].genSts,
sizeof(RgGenSts));
/* check if action is read and reset */
if(sts->t.sts.action == ARST)
/* Reset statistics */
if(sts->t.sts.action == ZEROSTS)
{
- cmMemset((U8 *)&hqRetxStats, 0, \
+ memset(&hqRetxStats, 0, \
sizeof(RgSchHqRetxStats));
- cmMemset((U8 *)&hqFailStats, 0, \
+ memset(&hqFailStats, 0, \
sizeof(RgSchNackAckStats));
}
}
}
break;
case STRGUSAP:
- cmMemcpy((U8 *)&(cfm.t.sts.s.rguSts), (U8 *)&rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts,
+ memcpy(&(cfm.t.sts.s.rguSts), &rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts,
sizeof(RgSapSts));
/* check if action is read and reset */
if(sts->t.sts.action == ARST)
- cmMemset((U8 *)&rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts, 0, sizeof(RgSapSts));
+ memset(&rgCb[inst].rguSap[sts->t.sts.sapInst].sapSts, 0, sizeof(RgSapSts));
break;
case STCRGSAP:
- cmMemcpy((U8 *)&(cfm.t.sts.s.crgSts), (U8 *)&rgCb[inst].crgSap.sapSts,
+ memcpy(&(cfm.t.sts.s.crgSts), &rgCb[inst].crgSap.sapSts,
sizeof(RgSapSts));
/* check if action is read and reset */
if(sts->t.sts.action == ARST)
- cmMemset((U8 *)&rgCb[inst].crgSap.sapSts, 0, sizeof(RgSapSts));
+ memset(&rgCb[inst].crgSap.sapSts, 0, sizeof(RgSapSts));
break;
case STTFUSAP:
- cmMemcpy((U8 *)&(cfm.t.sts.s.tfuSts), (U8 *)&rgCb[inst].tfuSap.sapSts,
+ memcpy(&(cfm.t.sts.s.tfuSts), &rgCb[inst].tfuSap.sapSts,
sizeof(RgSapSts));
/* check if action is read and reset */
if(sts->t.sts.action == ARST)
- cmMemset((U8 *)&rgCb[inst].tfuSap.sapSts, 0, sizeof(RgSapSts));
+ memset(&rgCb[inst].tfuSap.sapSts, 0, sizeof(RgSapSts));
break;
default:
break;
}
RgMiLrgStsCfm(&cfmPst,&cfm);
- RETVALUE(ROK);
+ return ROK;
}/*-- RgMiLrgStsReq --*/
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 RgMiLrgStaReq
+S16 RgMiLrgStaReq
(
Pst *pst, /* post structure */
RgMngmt *sta /* status structure */
)
#else
-PUBLIC S16 RgMiLrgStaReq(pst, sta)
+S16 RgMiLrgStaReq(pst, sta)
Pst *pst; /* post structure */
RgMngmt *sta; /* status structure */
#endif
RgMngmt cfm;
Inst inst ;
- TRC2(RgMiLrgStaReq)
-
RG_IS_INST_VALID(pst->dstInst);
inst = pst->dstInst - RG_INST_START;
SPutSBuf(pst->region, pst->pool, (Data *)sta->t.ssta.s.sysId.ptNmb, LRG_MAX_PT_NUM_SIZE);
}
- cmMemset((U8 *)&cfm, 0, sizeof(RgMngmt));
+ memset(&cfm, 0, sizeof(RgMngmt));
cfm.hdr.elmId.elmnt = sta->hdr.elmId.elmnt;
#ifdef LMINT3
!= ROK)
{
RLOG0(L_ERROR, "Memory Unavailable for Confirmation");
- RETVALUE(ROK);
+ return ROK;
}
- cmMemset((U8 *)(cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE);
+ memset((cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE);
rgGetSId(&cfm.t.ssta.s.sysId);
cfm.cfm.status = LCM_PRIM_NOK;
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");
- RETVALUE(ROK);
+ return ROK;
}
switch(sta->hdr.elmId.elmnt)
!= ROK)
{
RLOG0(L_ERROR, "Memory Unavailable for Confirmation");
- RETVALUE(ROK);
+ return ROK;
}
- cmMemset((U8 *)(cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE);
+ memset((cfm.t.ssta.s.sysId.ptNmb), 0, LRG_MAX_PT_NUM_SIZE);
rgGetSId(&cfm.t.ssta.s.sysId);
cfm.cfm.status = LCM_PRIM_OK;
cfm.cfm.reason = LCM_REASON_NOT_APPL;
cfm.cfm.status = LCM_PRIM_OK;
cfm.cfm.reason = LCM_REASON_NOT_APPL;
SGetDateTime(&cfm.t.ssta.dt);
- cmMemcpy((U8 *)&(cfm.t.ssta.s.rguSapSta),
- (U8 *)&rgCb[inst].rguSap[sta->t.ssta.sapInst].sapSta,
+ memcpy(&(cfm.t.ssta.s.rguSapSta),
+ &rgCb[inst].rguSap[sta->t.ssta.sapInst].sapSta,
sizeof(RgSapSta));
RgMiLrgStaCfm(&cfmPst, &cfm);
break;
cfm.cfm.status = LCM_PRIM_OK;
cfm.cfm.reason = LCM_REASON_NOT_APPL;
SGetDateTime(&cfm.t.ssta.dt);
- cmMemcpy((U8 *)&(cfm.t.ssta.s.crgSapSta), (U8 *)&rgCb[inst].crgSap.sapSta,
+ memcpy(&(cfm.t.ssta.s.crgSapSta), &rgCb[inst].crgSap.sapSta,
sizeof(RgSapSta));
RgMiLrgStaCfm(&cfmPst, &cfm);
break;
cfm.cfm.status = LCM_PRIM_OK;
cfm.cfm.reason = LCM_REASON_NOT_APPL;
SGetDateTime(&cfm.t.ssta.dt);
- cmMemcpy((U8 *)&(cfm.t.ssta.s.tfuSapSta), (U8 *)&rgCb[inst].tfuSap.sapSta,
+ memcpy(&(cfm.t.ssta.s.tfuSapSta), &rgCb[inst].tfuSap.sapSta,
sizeof(RgSapSta));
RgMiLrgStaCfm(&cfmPst, &cfm);
break;
RLOG1(L_ERROR, "Invalid elmnt=%d",sta->hdr.elmId.elmnt);
break;
}
- RETVALUE(ROK);
+ return ROK;
}/*-- RgMiLrgStaReq --*/
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 RgMiLrgCntrlReq
+S16 RgMiLrgCntrlReq
(
Pst *pst, /* post structure */
RgMngmt *cntrl /* control structure */
)
#else
-PUBLIC S16 RgMiLrgCntrlReq(pst, cntrl)
+S16 RgMiLrgCntrlReq(pst, cntrl)
Pst *pst; /* post structure */
RgMngmt *cntrl; /* control structure */
#endif
RgMngmt cfm;
Inst inst;
- TRC2(RgMiLrgCntrlReq)
/* Fill the post structure for sending the confirmation */
rgLMMFillCfmPst(pst, &cfmPst, cntrl);
- cmMemset((U8 *)&cfm, 0, sizeof(RgMngmt));
+ memset(&cfm, 0, sizeof(RgMngmt));
#ifdef LMINT3
cfm.hdr.transId = cntrl->hdr.transId;
#endif
cfm.hdr.elmId.elmnt = cntrl->hdr.elmId.elmnt;
RgMiLrgCntrlCfm(&cfmPst, &cfm);
RLOG0(L_ERROR, "Gen Cfg not done");
- RETVALUE(ROK);
+ return ROK;
}
/* General Config done, process the Control request */
RLOG1(L_ERROR, "invalid elmnt=%d",cntrl->hdr.elmId.elmnt);
break;
}
- RETVALUE(ret);
+ return (ret);
}/*-- RgMiLrgCntrlReq --*/
\f
RgUpSapCfgInfo *upSapCfg = NULLP;
RgUpSapCb *upSapCb = NULLP;
- TRC2(rgLMMSapCfg)
/* Check if Gen Config has been done */
if(rgCb[inst].rgInit.cfgDone != TRUE)
- RETVALUE(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 != RGU_SEL_TC) &&
- (cfg->s.rguSap.selector != RGU_SEL_LC))
+ (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");
* there is cfg request with sap is 1*/
break;
case STCRGSAP:
- if ((cfg->s.crgSap.selector != CRG_SEL_TC) &&
- (cfg->s.crgSap.selector != CRG_SEL_LC))
+ 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;
case STTFUSAP:
#ifndef CL_MAC_LWLC
- if ((cfg->s.tfuSap.selector != TFU_SEL_TC) &&
- (cfg->s.tfuSap.selector != TFU_SEL_LC))
+ 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");
lowSapCfg->sapPst.prior = cfg->s.tfuSap.prior;
lowSapCfg->suId = cfg->s.tfuSap.suId;
lowSapCfg->spId = cfg->s.tfuSap.spId;
- cmMemcpy((U8 *)&lowSapCfg->bndTmr, (U8 *)&cfg->s.tfuSap.bndTmr,
+ memcpy(&lowSapCfg->bndTmr, &cfg->s.tfuSap.bndTmr,
sizeof(TmrCfg));
break;
default:
/* would never reach here */
break;
}
- RETVALUE(ret);
+ return (ret);
}
\f
{
U16 ret = LCM_REASON_NOT_APPL;
- TRC2(rgLMMGenCfg)
/* Check if General Configuration is done already */
if (rgCb[inst].rgInit.cfgDone == TRUE)
{
- RETVALUE(LCM_REASON_INVALID_MSGTYPE);
+ return (LCM_REASON_INVALID_MSGTYPE);
}
- if ((cfg->s.genCfg.lmPst.selector != LRG_SEL_TC) &&
- (cfg->s.genCfg.lmPst.selector != LRG_SEL_LC))
+ if ((cfg->s.genCfg.lmPst.selector != ODU_SELECTOR_TC) &&
+ (cfg->s.genCfg.lmPst.selector != ODU_SELECTOR_LC))
{
RLOG0(L_ERROR, "unsupported Selector value for RGU");
- RETVALUE(LCM_REASON_INVALID_PAR_VAL);
+ return (LCM_REASON_INVALID_PAR_VAL);
}
/* Update the Pst structure for LM interface */
- cmMemcpy((U8 *)&rgCb[inst].rgInit.lmPst, (U8 *)&cfg->s.genCfg.lmPst,
+ memcpy(&rgCb[inst].rgInit.lmPst, &cfg->s.genCfg.lmPst,
sizeof(Pst));
rgCb[inst].rgInit.lmPst.srcProcId = rgCb[inst].rgInit.procId;
rgCb[inst].genCfg.tmrRes = cfg->s.genCfg.tmrRes;
macCb.macInst = rgCb[inst].rgInit.inst;
+ macCb.procId = rgCb[inst].rgInit.procId;
/* Initialize SAP States */
rgCb[inst].crgSap.sapSta.sapState = LRG_NOT_CFG;
if(cfg->s.genCfg.numRguSaps == 0)
{
RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgGenCfg(): Invalid numRguSap.\n"));
- RETVALUE(RFAILED);
+ return RFAILED;
}
/* allocate RGR saps */
(sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps)) != ROK)
{
RGDBGERRNEW(inst,(rgPBuf(inst), "\nrgGenCfg(): Failed to allocate mem for RGU SAP's.\n"));
- RETVALUE(RFAILED);
+ return RFAILED;
}
rgCb[inst].numRguSaps = cfg->s.genCfg.numRguSaps;
for (int idx = 0; idx < rgCb[inst].numRguSaps; idx++)
{
rgCb[inst].rguSap[idx].sapSta.sapState = LRG_NOT_CFG;
- cmMemset((U8 *)&rgCb[inst].rguSap[idx], 0, sizeof(RgUpSapCb));
+ memset(&rgCb[inst].rguSap[idx], 0, sizeof(RgUpSapCb));
}
rgCb[inst].tfuSap.sapSta.sapState = LRG_NOT_CFG;
/* Initialize the timer blocks */
cmInitTimers(rgCb[inst].tmrBlk, RG_MAX_TIMER);
/* Initialzie the timer queue */
- cmMemset((U8 *)&rgCb[inst].tmrTq, 0, sizeof(CmTqType)*RG_TQ_SIZE);
+ memset(&rgCb[inst].tmrTq, 0, sizeof(CmTqType)*RG_TQ_SIZE);
/* Initialize the timer control point */
- cmMemset((U8 *)&rgCb[inst].tmrTqCp, 0, sizeof(CmTqCp));
+ memset(&rgCb[inst].tmrTqCp, 0, sizeof(CmTqCp));
rgCb[inst].tmrTqCp.tmrLen = RG_TQ_SIZE;
#if 0
/* Timer Registration request to SSI */
(Data *)rgCb[inst].rguSap,
(sizeof(RgUpSapCb) * cfg->s.genCfg.numRguSaps));
- RETVALUE(LCM_REASON_MEM_NOAVAIL);
+ return (LCM_REASON_MEM_NOAVAIL);
}
#endif
/* Set Config done in TskInit */
rgCb[inst].rgInit.cfgDone = TRUE;
- RETVALUE(ret);
+ return (ret);
}
\f
RgCellCb *cell = rgCb[inst].cell;
U8 idx;
- TRC2(rgLMMShutdown)
/* Unbind the TFU Sap */
if(rgCb[inst].tfuSap.sapSta.sapState == LRG_WAIT_BNDCFM)
#endif
{
Inst inst = (cfmPst->srcInst - RG_INST_START);
- TRC2(rgLMMGenCntrl)
cfm->cfm.status = LCM_PRIM_OK;
cfm->cfm.reason = LCM_REASON_NOT_APPL;
rgCb[inst].rgInit.trc = TRUE;
rgCb[inst].trcLen = cntrl->t.cntrl.s.trcLen;
/*Store the response and TransId for sending the Traces */
- cmMemcpy((U8 *)&rgCb[inst].genCfg.trcResp.response,
- (U8 *)&cntrl->hdr.response, sizeof(Resp));
+ memcpy(&rgCb[inst].genCfg.trcResp.response,
+ &cntrl->hdr.response, sizeof(Resp));
rgCb[inst].genCfg.trcResp.transId = cntrl->hdr.transId;
break;
/* Enable Unsolicited Status (alarms) */
rgCb[inst].rgInit.usta = TRUE;
/*Store the response and TransId for sending the Alarms */
- cmMemcpy((U8 *)&rgCb[inst].genCfg.ustaResp.response,
- (U8 *)&cntrl->hdr.response, sizeof(Resp));
+ memcpy(&rgCb[inst].genCfg.ustaResp.response,
+ &cntrl->hdr.response, sizeof(Resp));
rgCb[inst].genCfg.ustaResp.transId = cntrl->hdr.transId;
break;
case SADBG:
#endif
{
Inst inst = cfmPst->srcInst - RG_INST_START;
- TRC2(rgLMMSapCntrl)
/* Only TFU Sap can be controlled by LM */
switch(cntrl->hdr.elmId.elmnt)
rgCb[inst].tfuSap.numBndRetries++;
/* Store the response and TransId for sending
* the Control confirm */
- cmMemcpy((U8 *)&rgCb[inst].genCfg.bndCfmResp.response,
- (U8 *)&cntrl->hdr.response, sizeof(Resp));
+ memcpy(&rgCb[inst].genCfg.bndCfmResp.response,
+ &cntrl->hdr.response, sizeof(Resp));
rgCb[inst].genCfg.bndCfmResp.transId = cntrl->hdr.transId;
/* Sending Status Indication to Layer Manager */
rgLMMStopTmr(inst,RG_BNDREQ_TMR, (PTR)&rgCb[inst].tfuSap);
}
}
- cmMemset((U8 *)&rgCb[inst].tfuSap, 0, sizeof(RgLowSapCb));
+ memset(&rgCb[inst].tfuSap, 0, sizeof(RgLowSapCb));
rgCb[inst].tfuSap.sapSta.sapState = LRG_NOT_CFG;
cfm->cfm.status = LCM_PRIM_OK;
cfm->cfm.reason = LCM_REASON_NOT_APPL;
switch(cntrl->t.cntrl.action)
{
case ADEL:
- cmMemset((U8 *)&rgCb[inst].rguSap[cntrl->t.cntrl.instId], 0, sizeof(RgUpSapCb));
+ memset(&rgCb[inst].rguSap[cntrl->t.cntrl.instId], 0, sizeof(RgUpSapCb));
rgCb[inst].rguSap[cntrl->t.cntrl.instId].sapSta.sapState = LRG_NOT_CFG;
cfm->cfm.status = LCM_PRIM_OK;
cfm->cfm.reason = LCM_REASON_NOT_APPL;
switch(cntrl->t.cntrl.action)
{
case ADEL:
- cmMemset((U8 *)&rgCb[inst].crgSap, 0, sizeof(RgUpSapCb));
+ memset(&rgCb[inst].crgSap, 0, sizeof(RgUpSapCb));
rgCb[inst].crgSap.sapSta.sapState = LRG_NOT_CFG;
cfm->cfm.status = LCM_PRIM_OK;
cfm->cfm.reason = LCM_REASON_NOT_APPL;
#endif
{
Inst inst;
- TRC2(rgLMMFillCfmPst)
inst = (reqPst->dstInst - RG_INST_START);
cfmPst->srcEnt = rgCb[inst].rgInit.ent;
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgLMMStartTmr
+S16 rgLMMStartTmr
(
Inst inst,
S16 tmrEvnt, /* Timer Event */
PTR cb /* Entry for which Timer Expired */
)
#else
-PUBLIC S16 rgLMMStartTmr(tmrEvnt, tmrVal, cb)
+S16 rgLMMStartTmr(tmrEvnt, tmrVal, cb)
Inst inst;
S16 tmrEvnt; /* Timer Event */
U32 tmrVal; /* Wait Time */
{
CmTmrArg arg;
- TRC2(rgLMMStartTmr)
UNUSED(tmrEvnt);
/* Initialize the arg structure */
- cmMemset((U8 *)&arg, 0, sizeof(CmTmrArg));
+ memset(&arg, 0, sizeof(CmTmrArg));
arg.tqCp = &rgCb[inst].tmrTqCp;
arg.tq = rgCb[inst].tmrTq;
arg.wait = tmrVal;
cmPlcCbTq(&arg);
- RETVALUE(ROK);
+ return ROK;
}
\f
* -# RFAILED
**/
#ifdef ANSI
-PUBLIC S16 rgLMMStopTmr
+S16 rgLMMStopTmr
(
Inst inst, /* Scheduler instance */
S16 tmrEvnt, /* Timer Event */
PTR cb /* Entry for which Timer Expired */
)
#else
-PUBLIC S16 rgLMMStopTmr(inst,tmrEvnt, cb)
+S16 rgLMMStopTmr(inst,tmrEvnt, cb)
Inst inst; /* Scheduler instance */
S16 tmrEvnt; /* Timer Event */
PTR cb; /* Entry for which Timer Expired */
U8 i;
S16 ret;
- TRC2(rgLMMStopTmr)
ret = RFAILED;
if(rgCb[inst].tmrBlk[i].tmrEvnt == tmrEvnt)
{
/* Initialize the arg structure */
- cmMemset((U8 *)&arg, 0, sizeof(CmTmrArg));
+ memset(&arg, 0, sizeof(CmTmrArg));
arg.tqCp = &rgCb[inst].tmrTqCp;
arg.tq = rgCb[inst].tmrTq;
}
- RETVALUE(ret);
+ return (ret);
}
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgLMMTmrExpiry
+S16 rgLMMTmrExpiry
(
PTR cb, /* Pointer to timer control block */
S16 tmrEvnt /* Timer Event */
)
#else
-PUBLIC S16 rgLMMTmrExpiry(cb,tmrEvnt)
+S16 rgLMMTmrExpiry(cb,tmrEvnt)
PTR cb; /* Pointer to timer control block */
S16 tmrEvnt; /* Timer Event */
#endif
RgLowSapCb *tfuSap = (RgLowSapCb *)cb;
Inst inst = tfuSap->sapCfg.sapPst.srcInst - RG_INST_START;
- TRC2(rgLMMTmrExpiry)
-
-
switch(tmrEvnt)
{
case RG_BNDREQ_TMR:
ret = RFAILED;
break;
}
- RETVALUE(ret);
+ return (ret);
}
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgLMMStaInd
+S16 rgLMMStaInd
(
Inst inst,
U16 category,
RgUstaDgn *dgn
)
#else
-PUBLIC S16 rgLMMStaInd(inst,category, event, cause, dgn)
+S16 rgLMMStaInd(inst,category, event, cause, dgn)
Inst inst;
U16 category;
U16 event;
{
RgMngmt usta;
- TRC2(rgLMMStaInd)
if(rgCb[inst].rgInit.usta == FALSE)
{
- RETVALUE(ROK);
+ return ROK;
}
- cmMemset((U8 *)&usta, 0, sizeof(RgMngmt));
+ memset(&usta, 0, sizeof(RgMngmt));
SGetDateTime(&usta.t.usta.cmAlarm.dt);
usta.t.usta.cmAlarm.category = category;
usta.t.usta.cmAlarm.cause = cause;
if (dgn != NULLP)
{
- cmMemcpy((U8 *)&usta.t.usta.dgn, (U8 *)dgn, sizeof(RgUstaDgn));
+ memcpy(&usta.t.usta.dgn, dgn, sizeof(RgUstaDgn));
}
rgCb[inst].rgInit.lmPst.selector = rgCb[inst].genCfg.ustaResp.response.selector;
rgCb[inst].rgInit.lmPst.pool = rgCb[inst].genCfg.ustaResp.response.mem.pool;
usta.hdr.transId = rgCb[inst].genCfg.ustaResp.transId;
- RETVALUE(RgMiLrgStaInd(&rgCb[inst].rgInit.lmPst, &usta));
+ return (RgMiLrgStaInd(&rgCb[inst].rgInit.lmPst, &usta));
}
\f
* @return Void
**/
#ifdef ANSI
-PUBLIC Void rgLMMTrcInd
+Void rgLMMTrcInd
(
Inst inst,
Buffer *srcMbuf, /* Message Buffer */
U8 event /* event */
)
#else
-PUBLIC Void rgLMMTrcInd(inst,srcMbuf,event)
+Void rgLMMTrcInd(inst,srcMbuf,event)
Inst inst;
Buffer *srcMbuf; /* Message Buffer */
U8 event; /* event */
RgMngmt trc;
Pst pst;
- TRC2(rgLMMTrcInd)
if ((rgCb[inst].trcLen == LRG_NO_TRACE) || (srcMbuf == NULLP))
RETVOID;
}
- cmMemset((U8 *)&trc, 0, sizeof(RgMngmt));
+ memset(&trc, 0, sizeof(RgMngmt));
pst = rgCb[inst].rgInit.lmPst;
pst.selector = rgCb[inst].genCfg.trcResp.response.selector;
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgLMMBndCfm
+S16 rgLMMBndCfm
(
Pst *pst, /* Post Structure */
SuId suId, /* Service user ID */
U8 status /* Status */
)
#else
-PUBLIC S16 rgLMMBndCfm(pst,suId,status)
+S16 rgLMMBndCfm(pst,suId,status)
Pst *pst; /* Post Structure */
SuId suId; /* Service user ID */
U8 status; /* Status */
RgMngmt cntrlCfm;
Pst cfmPst;
- TRC3(rgLMMBndCfm)
UNUSED(pst);
if(rgCb[inst].tfuSap.sapCfg.suId != suId)
{
RLOG0(L_ERROR, "Invalid SuId");
- RETVALUE(RFAILED);
+ return RFAILED;
}
/* check the Sap State */
break;
case LRG_BND:
/* SAP is already bound */
- RETVALUE(ROK);
+ return ROK;
default:
- RETVALUE(RFAILED);
+ return RFAILED;
}
cfmPst = rgCb[inst].rgInit.lmPst;
cfmPst.region = rgCb[inst].genCfg.bndCfmResp.response.mem.region;
cfmPst.pool = rgCb[inst].genCfg.bndCfmResp.response.mem.pool;
- cmMemset((U8 *)&cntrlCfm, 0, sizeof(RgMngmt));
+ memset(&cntrlCfm, 0, sizeof(RgMngmt));
switch(status)
{
ret = RgMiLrgCntrlCfm(&cfmPst, &cntrlCfm);
- RETVALUE(ret);
+ return (ret);
}
\f
* -# ROK
**/
#ifdef ANSI
-PUBLIC S16 rgActvTmr
+S16 rgActvTmr
(
Ent ent,
Inst inst
)
#else
-PUBLIC S16 rgActvTmr(ent, inst)
+S16 rgActvTmr(ent, inst)
Ent ent;
Inst inst;
#endif
{
Inst macInst = (inst - RG_INST_START);
- TRC3(rgActvTmr)
/* Check if any MAC timer has expired */
cmPrcTmr(&rgCb[macInst].tmrTqCp, rgCb[macInst].tmrTq, (PFV) rgLMMTmrExpiry);
- RETVALUE(ROK);
-
-} /* end of rgActvTmr */
-
-/**
- * @brief Layer Manager Configuration request handler for Scheduler
- *
- * @details
- *
- * Function : MacSchGenCfgReq
- *
- * This function receives general configurations for Scheduler
- * from DU APP and forwards to Scheduler.
- *
- * @param[in] Pst *pst, the post structure
- * @param[in] RgMngmt *cfg, the configuration parameter's structure
- * @return S16
- * -# ROK
- **/
-#ifdef ANSI
-PUBLIC int MacSchGenCfgReq
-(
-Pst *pst, /* post structure */
-RgMngmt *cfg /* config structure */
-)
-#else
-PUBLIC int MacSchGenCfgReq(pst, cfg)
-Pst *pst; /* post structure */
-RgMngmt *cfg; /* config structure */
-#endif
-{
- printf("\nReceived Scheduler gen config at MAC");
- pst->dstInst = DEFAULT_CELLS + 1;
- HandleSchGenCfgReq(pst, cfg);
-
return ROK;
-}
-
-/**
- * @brief Layer Manager Configuration response from Scheduler
- *
- * @details
- *
- * Function : SchSendCfgCfm
- *
- * This function sends general configurations response from
- * Scheduler to DU APP.
- *
- * @param[in] Pst *pst, the post structure
- * @param[in] RgMngmt *cfm, the configuration confirm structure
- * @return S16
- * -# ROK
- **/
-#ifdef ANSI
-PUBLIC S16 SchSendCfgCfm
-(
-Pst *pst, /* post structure */
-RgMngmt *cfm /* config confirm structure */
-)
-#else
-PUBLIC S16 SchSendCfgCfm(pst, cfm)
-Pst *pst; /* post structure */
-RgMngmt *cfm; /* config confirm structure */
-#endif
-{
- printf("\nSending Scheduler config confirm to DU APP");
- pst->dstEnt = ENTDUAPP;
- pst->dstInst = 0;
- pst->srcInst = 0;
- pst->selector = MAC_SCH_LC_SELECTOR;
- RgMiLrgSchCfgCfm(pst, cfm);
-
- RETVALUE(ROK);
-}
-
-\f
-/***********************************************************
- *
- * Func : macCellCfgFillCfmPst
- *
- *
- * Desc : Fills the Confirmation Post Structure cfmPst
- *
- * Ret : Void
- *
- * Notes:
- *
- * File : rg_lmm.c
- *
- **********************************************************/
-Void macCellCfgFillCfmPst
-(
-Pst *reqPst,
-Pst *cfmPst
-)
-{
- Inst inst;
- inst = reqPst->dstInst;
-
- cfmPst->srcEnt = rgCb[inst].rgInit.ent;
- cfmPst->srcInst = rgCb[inst].rgInit.inst;
- cfmPst->srcProcId = rgCb[inst].rgInit.procId;
-
- cfmPst->dstEnt = ENTDUAPP;
- cfmPst->dstInst = 0;
- cfmPst->dstProcId = cfmPst->srcProcId;
-
- cfmPst->selector = LRG_SEL_LC;
- cfmPst->prior = reqPst->prior;
- cfmPst->route = reqPst->route;
- cfmPst->region = reqPst->region;
- cfmPst->pool = reqPst->pool;
- cfmPst->event = EVENT_MAC_CELL_CONFIG_CFM;
-
- RETVOID;
-}
-
-/**
- * @brief Layer Manager Configuration request handler.
- *
- * @details
- *
- * Function : MacHdlCellCfgReq
- *
- * This function handles the gNB and cell configuration
- * request received from DU APP.
- * This API unapcks and forwards the config towards SCH
- *
- * @param[in] Pst *pst
- * @param[in] MacCellCfg *macCellCfg
- * @return S16
- * -# ROK
- **/
-int MacHdlCellCfgReq
-(
- Pst *pst,
- MacCellCfg *macCellCfg
-)
-{
- Pst cfmPst;
- uint16_t ret = ROK;
- RgCellCb *cellCb;
- MacCellCb *macCellCb;
- Inst inst = pst->dstInst;
-
- cmMemset((U8 *)&cfmPst, 0, sizeof(Pst));
- MAC_ALLOC(cellCb,sizeof(RgCellCb));
-
- if(cellCb == NULLP)
- {
- DU_LOG("\nMAC : cellCb is NULL at handling of macCellCfg\n");
- return RFAILED;
- }
-
- memcpy(&cellCb->macCellCfg,macCellCfg,sizeof(MacCellCfg));
- rgCb[inst].cell = cellCb;
-
- MAC_ALLOC(macCellCb,sizeof(MacCellCb));
- if(macCellCb == NULLP)
- {
- DU_LOG("\nMAC : macCellCb is NULL at handling of macCellCfg\n");
- return RFAILED;
- }
- macCb.macCell = macCellCb;
- macCb.macCell->cellId = macCellCfg->cellId;
- /* Send cell cfg to scheduler */
- ret = MacSchCellCfgReq(pst, macCellCfg);
- if(ret != ROK)
- {
- MacCellCfgCfm macCellCfgCfm;
- macCellCfgCfm.rsp = RSP_NOK;
- macCellCfgCfm.transId = macCellCfg->transId;
- macCellCfgFillCfmPst(pst,&cfmPst);
- ret = (*packMacCellCfmOpts[cfmPst.selector])(&cfmPst,&macCellCfgCfm);
- }
-#ifdef INTEL_WLS
- LwrMacEnqueueWlsBlock();
-#endif
- return ret;
-} /* end of MacHdlCellCfgReq */
-
-/**
- * @brief Layer Manager Configuration request handler.
- *
- * @details
- *
- * Function : MacSchCellCfgReq
- *
- * This function sends cell configuration to SCH
- *
- * @param[in] Pst *pst
- * @param[in] MacCellCfg *macCellCfg
- * @return S16
- * -# ROK
- **/
-int MacSchCellCfgReq
-(
- Pst *pst,
- MacCellCfg *macCellCfg
-)
-{
- SchCellCfg schCellCfg;
- Pst cfgPst;
- int ret;
-
- cmMemset((U8 *)&cfgPst, 0, sizeof(Pst));
- schCellCfg.cellId = macCellCfg->cellId;
- schCellCfg.phyCellId = macCellCfg->phyCellId;
- schCellCfg.bandwidth = macCellCfg->dlCarrCfg.bw;
- schCellCfg.dupMode = macCellCfg->dupType;
-
- /* fill ssb scheduler parameters */
- schCellCfg.ssbSchCfg.ssbPbchPwr = macCellCfg->ssbCfg.ssbPbchPwr;
- schCellCfg.ssbSchCfg.scsCommon = macCellCfg->ssbCfg.scsCmn;
- schCellCfg.ssbSchCfg.ssbOffsetPointA = macCellCfg->ssbCfg.ssbOffsetPointA;
- schCellCfg.ssbSchCfg.ssbPeriod = macCellCfg->ssbCfg.ssbPeriod;
- schCellCfg.ssbSchCfg.ssbSubcOffset = macCellCfg->ssbCfg.ssbScOffset;
- for(uint8_t idx=0; idx<SSB_MASK_SIZE; idx++)
- {
- schCellCfg.ssbSchCfg.nSSBMask[idx] = macCellCfg->ssbCfg.ssbMask[idx];
- }
-
- /* fill SIB1 scheduler parameters */
- schCellCfg.sib1SchCfg.sib1PduLen = macCellCfg->sib1Cfg.sib1PduLen;
- schCellCfg.sib1SchCfg.sib1NewTxPeriod = macCellCfg->sib1Cfg.sib1NewTxPeriod;
- schCellCfg.sib1SchCfg.sib1RepetitionPeriod = macCellCfg->sib1Cfg.sib1RepetitionPeriod;
- schCellCfg.sib1SchCfg.coresetZeroIndex = macCellCfg->sib1Cfg.coresetZeroIndex;
- schCellCfg.sib1SchCfg.searchSpaceZeroIndex = macCellCfg->sib1Cfg.searchSpaceZeroIndex;
- schCellCfg.sib1SchCfg.sib1Mcs = macCellCfg->sib1Cfg.sib1Mcs;
-
- /* fill RACH config params */
- schCellCfg.schRachCfg.prachCfgIdx = macCellCfg->prachCfg.prachCfgIdx;
- schCellCfg.schRachCfg.prachSubcSpacing = \
- macCellCfg->prachCfg.prachSubcSpacing;
- schCellCfg.schRachCfg.msg1FreqStart = macCellCfg->prachCfg.msg1FreqStart;
- schCellCfg.schRachCfg.msg1Fdm = macCellCfg->prachCfg.msg1Fdm;
- schCellCfg.schRachCfg.rootSeqLen = macCellCfg->prachCfg.rootSeqLen;
- schCellCfg.schRachCfg.rootSeqIdx = macCellCfg->prachCfg.fdm[0].rootSeqIdx;
- schCellCfg.schRachCfg.numRootSeq = macCellCfg->prachCfg.fdm[0].numRootSeq;
- schCellCfg.schRachCfg.k1 = macCellCfg->prachCfg.fdm[0].k1;
- schCellCfg.schRachCfg.ssbPerRach = macCellCfg->prachCfg.ssbPerRach;
- schCellCfg.schRachCfg.prachMultCarrBand = \
- macCellCfg->prachCfg.prachMultCarrBand;
- schCellCfg.schRachCfg.raContResTmr = macCellCfg->prachCfg.raContResTmr;
- schCellCfg.schRachCfg.rsrpThreshSsb = macCellCfg->prachCfg.rsrpThreshSsb;
- schCellCfg.schRachCfg.raRspWindow = macCellCfg->prachCfg.raRspWindow;
-
- /* fill initial DL BWP */
- schCellCfg.schInitialDlBwp.bwp.freqAlloc.startPrb = macCellCfg->initialDlBwp.bwp.firstPrb;
- schCellCfg.schInitialDlBwp.bwp.freqAlloc.numPrb = macCellCfg->initialDlBwp.bwp.numPrb;
- schCellCfg.schInitialDlBwp.bwp.scs = macCellCfg->initialDlBwp.bwp.scs;
- schCellCfg.schInitialDlBwp.bwp.cyclicPrefix = macCellCfg->initialDlBwp.bwp.cyclicPrefix;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.searchSpaceId =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.searchSpaceId;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.coresetId =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.coresetId;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.monitoringSlot =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.monitoringSlot;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.duration =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.duration;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.monitoringSymbol =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.monitoringSymbol;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel1 =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel1;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel2 =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel2;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel4 =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel4;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel8 =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel8;
- schCellCfg.schInitialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel16 =
- macCellCfg->initialDlBwp.pdcchCommon.commonSearchSpace.candidate.aggLevel16;
- schCellCfg.schInitialDlBwp.pdschCommon.k0 = macCellCfg->initialDlBwp.pdschCommon.k0;
- schCellCfg.schInitialDlBwp.pdschCommon.mappingType =
- macCellCfg->initialDlBwp.pdschCommon.mappingType;
- schCellCfg.schInitialDlBwp.pdschCommon.startSymbol =
- macCellCfg->initialDlBwp.pdschCommon.startSymbol;
- schCellCfg.schInitialDlBwp.pdschCommon.lengthSymbol =
- macCellCfg->initialDlBwp.pdschCommon.lengthSymbol;
-
- /* fill initial UL BWP */
- schCellCfg.schInitialUlBwp.bwp.freqAlloc.startPrb = macCellCfg->initialUlBwp.bwp.firstPrb;
- schCellCfg.schInitialUlBwp.bwp.freqAlloc.numPrb = macCellCfg->initialUlBwp.bwp.numPrb;
- schCellCfg.schInitialUlBwp.bwp.scs = macCellCfg->initialUlBwp.bwp.scs;
- schCellCfg.schInitialUlBwp.bwp.cyclicPrefix = macCellCfg->initialUlBwp.bwp.cyclicPrefix;
- schCellCfg.schInitialUlBwp.puschCommon.k2 = macCellCfg->initialUlBwp.puschCommon.k2;
- schCellCfg.schInitialUlBwp.puschCommon.mappingType =
- macCellCfg->initialUlBwp.puschCommon.mappingType;
- schCellCfg.schInitialUlBwp.puschCommon.startSymbol =
- macCellCfg->initialUlBwp.puschCommon.startSymbol;
- schCellCfg.schInitialUlBwp.puschCommon.lengthSymbol =
- macCellCfg->initialUlBwp.puschCommon.lengthSymbol;
-
-
- cfgPst.srcProcId = pst->dstProcId;
- cfgPst.dstProcId = pst->srcProcId;
- cfgPst.srcEnt = ENTRG;
- cfgPst.srcInst = 0;
- cfgPst.dstEnt = ENTRG;
- cfgPst.dstInst = 1;
- cfgPst.selector = MAC_SCH_TC_SELECTOR;
- cfgPst.event = EVENT_SCH_CELL_CFG;
-
- ret = (*SchCellCfgOpts[cfgPst.selector])(&cfgPst, &schCellCfg);
- return ret;
-} /* end of MacSchCellCfgReq */
-
-
-/*******************************************************************
- *
- * @brief Sends Cell config confirm to DU APP
- *
- * @details
- *
- * Function : MacSendCellCfgCfm
- *
- * Functionality:
- * Sends Cell config confirm to DU APP
- *
- * @params[in] Response status
- * @return void
- *
- * ****************************************************************/
-void MacSendCellCfgCfm(uint8_t response)
-{
- Pst pst;
- RgCellCb *cellCb;
- MacCellCfgCfm macCellCfgCfm;
-
- cmMemset((U8 *)&pst, 0, sizeof(Pst));
- cellCb = rgCb[macCb.macInst].cell;
- macCellCfgCfm.transId = cellCb->macCellCfg.transId;
- macCellCfgCfm.rsp = response;
-
- memcpy((void *)&pst, (void *)&rgCb[macCb.macInst].rgInit.lmPst, sizeof(Pst));
- pst.event = EVENT_MAC_CELL_CONFIG_CFM;
- (*packMacCellCfmOpts[pst.selector])(&pst,&macCellCfgCfm);
-}
-
-
-/**
- * @brief Layer Manager Configuration response handler.
- *
- * @details
- *
- * Function : MacProcSchCellCfgCfm
- *
- * This function processes cell configuration to SCH
- *
- * @param[in] Pst *pst
- * @param[in] SchCellCfgCfm *schCellCfgCfm
- * @return int
- * -# ROK
- **/
-int MacProcSchCellCfgCfm
-(
- Pst *pst,
- SchCellCfgCfm *schCellCfgCfm
-)
-{
- if(schCellCfgCfm->rsp == RSP_OK)
- {
- sendToLowerMac(CONFIG_REQUEST, 0, (void *)NULL);
- }
- else
- {
- MacSendCellCfgCfm(RSP_NOK);
- }
- return ROK;
-}
+} /* end of rgActvTmr */
/**********************************************************************