Changes to make number of slots and BW generic
[o-du/l2.git] / src / 5gnrmac / mac_msg_hdl.c
index d81c29b..9ff644b 100644 (file)
@@ -153,6 +153,7 @@ uint8_t fapiMacCrcInd(Pst *pst, CrcInd *crcInd)
    crcIndInfo.numCrcInd = crcInd->crcInfo[0].numCb;
    crcIndInfo.crcInd[0] = crcInd->crcInfo[0].cbCrcStatus[0];
 
+   MAC_FREE_SHRABL_BUF(pst->region, pst->pool, crcInd, sizeof(CrcInd));
    return(sendCrcIndMacToSch(&crcIndInfo));
 }
 
@@ -183,7 +184,10 @@ uint8_t fapiMacRxDataInd(Pst *pst, RxDataInd *rxDataInd)
    for(pduIdx = 0; pduIdx < rxDataInd->numPdus; pduIdx++)
    {
       unpackRxData(rxDataInd->cellId, rxDataInd->timingInfo, &rxDataInd->pdus[pduIdx]);
+      MAC_FREE_SHRABL_BUF(pst->region, pst->pool, rxDataInd->pdus[pduIdx].pduData,\
+         rxDataInd->pdus[pduIdx].pduLength);
    }
+   MAC_FREE_SHRABL_BUF(pst->region, pst->pool, rxDataInd, sizeof(RxDataInd));
    return ROK;
 }
 
@@ -453,8 +457,15 @@ uint8_t MacProcCellStartReq(Pst *pst, MacCellStartInfo  *cellStartInfo)
 uint8_t MacProcCellStopReq(Pst *pst, MacCellStopInfo  *cellStopInfo)
 {
 #ifdef INTEL_FAPI
+   uint16_t      cellIdx; 
+   SlotIndInfo   slotInfo;
+
    DU_LOG("\nMAC : Sending cell stop request to Lower Mac");
-   sendToLowerMac(FAPI_STOP_REQUEST, 0, cellStopInfo);
+   GET_CELL_IDX(cellStopInfo->cellId, cellIdx);
+   slotInfo.cellId = cellStopInfo->cellId;
+   slotInfo.sfn = macCb.macCell[cellIdx]->currTime.sfn;
+   slotInfo.slot = macCb.macCell[cellIdx]->currTime.slot;
+   sendToLowerMac(FAPI_STOP_REQUEST, 0, &slotInfo);
 #endif
 
    MAC_FREE_SHRABL_BUF(pst->region, pst->pool, cellStopInfo, \
@@ -708,6 +719,7 @@ uint8_t FapiMacUciInd(Pst *pst, UciInd *macUciInd)
       DU_LOG("\nMAC: Received Uci Ind is NULL at FapiMacUciInd()");
       ret = RFAILED;
    }
+   MAC_FREE_SHRABL_BUF(pst->region, pst->pool, macUciInd, sizeof(UciInd));
    return ret;
 }