X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Frg_lmm.c;h=9e49c55efc0bcdb8b75919a486e5f03d3ef6128f;hb=49dec2270f1b3c03b36a801e153bf0786edffc24;hp=059a7549eb938568eda9896bb3e049b1a763d5f5;hpb=deeae2741b8520edcd37ecb20a40f1de821ceadf;p=o-du%2Fl2.git diff --git a/src/5gnrmac/rg_lmm.c b/src/5gnrmac/rg_lmm.c index 059a7549e..9e49c55ef 100755 --- a/src/5gnrmac/rg_lmm.c +++ b/src/5gnrmac/rg_lmm.c @@ -38,6 +38,7 @@ static int RLOG_FILE_ID=220; 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 */ @@ -98,7 +99,7 @@ EXTERN Void rgGetSId ARGS((SystemId *s)); /* Public variable declaration */ ClCb clGlobalCp; -MacCb macCb; +extern MacCb macCb; int MacSchCellCfgReq(Pst *pst,MacCellCfg *macCellCfg); @@ -136,7 +137,7 @@ RgMngmt *cfm, Pst *cfmPst )); -extern U16 packMacCellCfgCfm(Pst *pst, MacCellCfgCfm *macCellCfgCfm); +extern int packMacCellCfgCfm(Pst *pst, MacCellCfgCfm *macCellCfgCfm); packMacCellCfgConfirm packMacCellCfmOpts[] = { @@ -1991,13 +1992,13 @@ Inst inst; * -# ROK **/ #ifdef ANSI -PUBLIC S16 MacSchGenCfgReq +PUBLIC int MacSchGenCfgReq ( Pst *pst, /* post structure */ RgMngmt *cfg /* config structure */ ) #else -PUBLIC S16 MacSchGenCfgReq(pst, cfg) +PUBLIC int MacSchGenCfgReq(pst, cfg) Pst *pst; /* post structure */ RgMngmt *cfg; /* config structure */ #endif @@ -2111,7 +2112,7 @@ int MacHdlCellCfgReq ) { Pst cfmPst; - int ret = ROK; + uint16_t ret = ROK; RgCellCb *cellCb; MacCellCb *macCellCb; Inst inst = pst->dstInst; @@ -2207,6 +2208,7 @@ int MacSchCellCfgReq 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; @@ -2217,6 +2219,52 @@ int MacSchCellCfgReq 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; @@ -2287,7 +2335,7 @@ int MacProcSchCellCfgCfm { if(schCellCfgCfm->rsp == RSP_OK) { - sendToLowerMac(PARAM_REQUEST, 0, (void *)NULL); + sendToLowerMac(CONFIG_REQUEST, 0, (void *)NULL); } else {