cmLListInit(&ueCb->hqUlmap[idx]->hqList);
}
ret = fillSchUeCbFrmCfgReq(inst, ueCb, ueCfg);
-
+
+ if(fillUeCoresetAndSsInfo(ueCb) == RFAILED)
+ {
+ DU_LOG("\nERROR --> SCH : Memory Allocation Failed");
+ return RFAILED;
+ }
if(ret == ROK)
{
/* If UE has initiated RACH and then UE context is created, it means UE is
SchUeRecfgRsp recfgRsp;
Inst inst = pst->dstInst - SCH_INST_START;
memset(&recfgRsp, 0, sizeof(SchUeRecfgRsp));
-
+
if(!ueRecfg)
{
DU_LOG("\nERROR --> SCH : Modifying Ue Config request failed at SchModUeConfigReq()");
/* Search if UE already configured */
GET_UE_ID(ueRecfg->crnti, ueId);
ueCb = &cellCb->ueCb[ueId -1];
-
+
if(!ueCb)
{
DU_LOG("\nERROR --> SCH : SchUeCb not found at SchModUeConfigReq() ");
{
/* Found the UeCb to Reconfig */
ret = fillSchUeCbFrmRecfgReq(inst, ueCb, ueRecfg);
+ if(fillUeCoresetAndSsInfo(ueCb) == RFAILED)
+ {
+ DU_LOG("\nERROR --> SCH : Memory Allocation Failed");
+ return RFAILED;
+ }
if(ret == ROK)
{
ueCb->cellCb = cellCb;
* ****************************************************************/
void deleteSchUeCb(SchUeCb *ueCb)
{
- uint8_t timeDomRsrcIdx = 0, ueLcIdx = 0, idx =0;
+ uint8_t timeDomRsrcIdx = 0, ueLcIdx = 0, slotIdx =0, cRSetIdx = 0;
SchPucchCfg *pucchCfg = NULLP;
SchPdschConfig *pdschCfg = NULLP;
{
if(ueCb->hqDlmap)
{
- for (idx = 0; idx<ueCb->cellCb->numSlots; idx++)
+ for (slotIdx = 0; slotIdx<ueCb->cellCb->numSlots; slotIdx++)
{
- if(ueCb->hqDlmap[idx])
+ if(ueCb->hqDlmap[slotIdx])
{
- cmLListDeleteLList(&ueCb->hqDlmap[idx]->hqList);
- SCH_FREE(ueCb->hqDlmap[idx], sizeof(SchHqDlMap));
+ cmLListDeleteLList(&ueCb->hqDlmap[slotIdx]->hqList);
+ SCH_FREE(ueCb->hqDlmap[slotIdx], sizeof(SchHqDlMap));
}
}
SCH_FREE(ueCb->hqDlmap, sizeof(SchHqDlMap*)*(ueCb->cellCb->numSlots));
if(ueCb->hqUlmap)
{
- for (idx = 0; idx<ueCb->cellCb->numSlots; idx++)
+ for (slotIdx = 0; slotIdx<ueCb->cellCb->numSlots; slotIdx++)
{
- if(ueCb->hqUlmap[idx])
+ if(ueCb->hqUlmap[slotIdx])
{
- cmLListDeleteLList(&ueCb->hqUlmap[idx]->hqList);
- SCH_FREE(ueCb->hqUlmap[idx], sizeof(SchHqUlMap));
+ cmLListDeleteLList(&ueCb->hqUlmap[slotIdx]->hqList);
+ SCH_FREE(ueCb->hqUlmap[slotIdx], sizeof(SchHqUlMap));
}
}
SCH_FREE(ueCb->hqUlmap, sizeof(SchHqUlMap*)*(ueCb->cellCb->numSlots));
ueCb->ueDrxInfoPres = false;
}
#endif
+
+ for(cRSetIdx=0; cRSetIdx < MAX_NUM_CRSET; cRSetIdx++)
+ {
+ SCH_FREE(ueCb->pdcchInfo[cRSetIdx].y, (sizeof(uint32_t) * ueCb->cellCb->numSlots));
+ }
memset(ueCb, 0, sizeof(SchUeCb));
}
}