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;
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(PdschConfig *cuPdschCfg, PdschConfig *storePdschCfg)
+{
+ uint8_t numTimeDomRsrcAlloc, rsrcIdx;
+
+ if(cuPdschCfg)
+ {
+ if(storePdschCfg->numTimeDomRsrcAlloc)
+ {
+ numTimeDomRsrcAlloc = cuPdschCfg->numTimeDomRsrcAlloc;
+ for(rsrcIdx =0 ; rsrcIdx<numTimeDomRsrcAlloc; rsrcIdx++)
+ {
+ if(cuPdschCfg->timeDomRsrcAllociList[rsrcIdx].k0)
+ {
+ if(storePdschCfg->timeDomRsrcAllociList[rsrcIdx].k0)
+ {
+ *(storePdschCfg->timeDomRsrcAllociList[rsrcIdx].k0) = *(cuPdschCfg->timeDomRsrcAllociList[rsrcIdx].k0);
+ if(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
{
if(macUeCfg->spCellCfg.servCellCfg.initDlBwp.pdschPresent)
{
+ /* update k0 values */
+ fillK0Values(&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);
}
DU_LOG("\nERROR --> DU APP : Memory Alloc failed at duBuildAndSendUeRecfgReqToRlc()");
ret = RFAILED;
}
+ DU_FREE(duRlcUeCfg, sizeof(DuRlcUeCfg));
return ret;
}