X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_ue_mgr.c;h=aae8677458a505fc11ce3a82c82ec18ff82c9cc6;hb=87c35884595a3166121854c3ae6e6e856f004ff4;hp=b690c6bb29737520fb0bec910f3904a8e0c2ba34;hpb=53b8b63c2fff0f2adbf2c66ed182a32bb4682bf7;p=o-du%2Fl2.git diff --git a/src/du_app/du_ue_mgr.c b/src/du_app/du_ue_mgr.c index b690c6bb2..aae867745 100644 --- a/src/du_app/du_ue_mgr.c +++ b/src/du_app/du_ue_mgr.c @@ -710,7 +710,9 @@ uint8_t fillDefaultInitDlBwp(InitialDlBwp *initDlBwp) return RFAILED; } if(initDlBwp->pdschCfg.timeDomRsrcAllociList[idx].k0) + { *(initDlBwp->pdschCfg.timeDomRsrcAllociList[idx].k0) = 1; + } initDlBwp->pdschCfg.timeDomRsrcAllociList[idx].mappingType = MAPPING_TYPEA; initDlBwp->pdschCfg.timeDomRsrcAllociList[idx].startSymbol = PDSCH_START_SYMBOL; initDlBwp->pdschCfg.timeDomRsrcAllociList[idx].symbolLength = PDSCH_LENGTH_SYMBOL; @@ -2117,6 +2119,53 @@ uint8_t DuProcMacRachRsrcRsp(Pst *pst, MacRachRsrcRsp *rachRsrcRsp) return ret; } +/******************************************************************* + * + * @brief fill k0 value in duCb + * + * @details + * + * Function : fillK0Values + * Functionality: update k0 value in duCb + * + * @params[in] PdschConfig *cuPdschCfg, PdschConfig *storePdschCfg + * @return ROK - success + * RFAILED - failure + * + * ****************************************************************/ + +uint8_t fillK0Values(Bool toUpdate, PdschConfig *cuPdschCfg, PdschConfig *storePdschCfg) +{ + uint8_t numTimeDomRsrcAlloc, rsrcIdx; + + if(toUpdate) + { + if(cuPdschCfg) + { + if(storePdschCfg->numTimeDomRsrcAlloc) + { + numTimeDomRsrcAlloc = cuPdschCfg->numTimeDomRsrcAlloc; + for(rsrcIdx =0 ; rsrcIdxtimeDomRsrcAllociList[rsrcIdx].k0) + { + if(storePdschCfg->timeDomRsrcAllociList[rsrcIdx].k0) + { + *(storePdschCfg->timeDomRsrcAllociList[rsrcIdx].k0) = *(cuPdschCfg->timeDomRsrcAllociList[rsrcIdx].k0); + DU_FREE_SHRABL_BUF(DU_APP_MEM_REGION, DU_POOL, cuPdschCfg->timeDomRsrcAllociList[rsrcIdx].k0, sizeof(uint8_t)); + } + else + { + (storePdschCfg->timeDomRsrcAllociList[rsrcIdx].k0) = (cuPdschCfg->timeDomRsrcAllociList[rsrcIdx].k0); + } + } + } + } + } + } + return ROK; +} + /******************************************************************* * * @brief To update DuUeCb Mac Cfg @@ -2155,6 +2204,8 @@ uint8_t duUpdateMacCfg(DuMacUeCfg *macUeCfg, F1UeContextSetupDb *f1UeDb) { if(macUeCfg->spCellCfg.servCellCfg.initDlBwp.pdschPresent) { + /* update k0 values */ + fillK0Values(true, &f1UeDb->duUeCfg.copyOfmacUeCfg.spCellCfg.servCellCfg.initDlBwp.pdschCfg, &macUeCfg->spCellCfg.servCellCfg.initDlBwp.pdschCfg); fillStartSymbolAndLen(macUeCfg->spCellCfg.servCellCfg.initDlBwp.pdschCfg.numTimeDomRsrcAlloc,\ &macUeCfg->spCellCfg.servCellCfg.initDlBwp.pdschCfg, NULL); } @@ -3025,6 +3076,7 @@ uint8_t duBuildAndSendUeRecfgReqToRlc(uint8_t cellId, uint8_t gnbDuUeF1apId, uin DU_LOG("\nERROR --> DU APP : Memory Alloc failed at duBuildAndSendUeRecfgReqToRlc()"); ret = RFAILED; } + DU_FREE(duRlcUeCfg, sizeof(DuRlcUeCfg)); return ret; }