static int RLOG_FILE_ID=182;
static int RLOG_MODULE_ID=4096;
/* header include files -- defines (.h) */
+#include <stdbool.h>
#include "envopt.h" /* environment options */
#include "envdep.h" /* environment dependent */
#include "envind.h" /* environment independent */
#endif
PRIVATE Void rgLIMUtlFreeDatIndEvnt ARGS((TfuDatIndInfo *datInd,
Bool error));
-
-/* function pointers for packing slot ind from mac to sch */
-//S16 packMacSchSlotInd(Pst *pst, SlotIndInfo *slotInd);
-
-MacSchSlotIndFunc macSchSlotIndOpts[] =
-{
- packMacSchSlotInd,
- macSchSlotInd,
- packMacSchSlotInd
-};
-
#ifdef RG_UNUSED
PRIVATE Void rgLIMUtlFreeDatReqEvnt ARGS((TfuDatReqInfo *datReq,
Bool error));
MacSendCellCfgCfm(RSP_OK);
}
-/**
- * @brief Transmission time interval indication from PHY.
- *
- * @details
- *
- * Function : sendSlotIndMacToSch
- *
- * This API is invoked by MAC to send slot ind to scheduler.
- *
- * @param[in] SlotIndInfo *slotInd
- * @return S16
- * -# ROK
- * -# RFAILED
- **/
-int sendSlotIndMacToSch(SlotIndInfo *slotInd)
-{
- /* fill Pst structure to send to lwr_mac to MAC */
- Pst pst;
-
- fillMacToSchPst(&pst);
- pst.event = EVENT_SLOT_IND_TO_SCH;
-
- return(*macSchSlotIndOpts[pst.selector])(&pst,slotInd);
-}
-
-
/*******************************************************************
*
- * @brief Send slot indication to DU APP
+ * @brief Send stop indication to DU APP
*
* @details
*
- * Function : sendSlotIndMacToDuApp
+ * Function : sendStopIndMacToDuApp
*
* Functionality:
- * Send slot indication to DU APP
+ * Send stop indication to DU APP
*
- * @params[in] Slot indication info
+ * @params[in] Pst info
* @return ROK - success
* RFAILED - failure
*
* ****************************************************************/
-int sendSlotIndMacToDuApp(SlotIndInfo *slotInd)
+uint8_t sendStopIndMacToDuApp()
{
Pst pst;
- SlotInfo *slotInfo;
+ uint8_t ret = ROK;
+
+ MacCellStopInfo *cellStopId;
- /* Send Slot Indication to DU APP */
- MAC_ALLOC(slotInfo, sizeof(SlotInfo));
- if(!slotInfo)
+ /* Allocate sharable memory */
+ MAC_ALLOC_SHRABL_BUF(cellStopId, sizeof(MacCellStopInfo));
+ if(!cellStopId)
{
- DU_LOG("\nMAC : Slot Indication memory allocation failed");
+ DU_LOG("\nMAC : Stop Indication memory allocation failed");
return RFAILED;
}
-
- slotInfo->cellId = macCb.macCell->cellId;
- slotInfo->sfn = slotInd->sfn;
- slotInfo->slot = slotInd->slot;
+ cellStopId->cellId = macCb.macCell->cellId;
/* Fill Pst */
pst.selector = DU_MAC_LWLC;
pst.srcProcId = rgCb[pst.srcInst].rgInit.procId;
pst.region = MAC_MEM_REGION;
pst.pool = MAC_POOL;
- pst.event = EVENT_MAC_SLOT_IND;
+ pst.event = EVENT_MAC_STOP_IND;
pst.route = 0;
pst.prior = 0;
pst.intfVer = 0;
-
- return MacDuAppSlotInd(&pst, slotInfo);
-
-}
-
-/**
- * @brief Transmission time interval indication from PHY.
- *
- * @details
- *
- * Function : fapiMacSlotInd
- *
- * This API is invoked by PHY to indicate TTI indication to MAC for a cell.
- *
- * @param[in] Pst *pst
- * @param[in] SuId suId
- * @param[in] SlotIndInfo *slotInd
- * @return S16
- * -# ROK
- * -# RFAILED
- **/
-PUBLIC S16 fapiMacSlotInd
-(
-Pst *pst,
-SlotIndInfo *slotInd
-)
-{
- S16 ret;
- VOLATILE U32 startTime=0;
- Inst inst;
-
- DU_LOG("\nMAC : Slot Indication received");
-
- RG_IS_INST_VALID(pst->dstInst);
- inst = pst->dstInst - RG_INST_START;
- /*starting Task*/
- SStartTask(&startTime, PID_MAC_TTI_IND);
- /* send slot indication to scheduler */
- ret = sendSlotIndMacToSch(slotInd);
+ ret = MacDuAppStopInd(&pst, cellStopId);
if(ret != ROK)
{
- DU_LOG("\nMAC : Sending of slot ind msg from MAC to SCH failed");
- RETVALUE(ret);
+ DU_LOG("\nMAC: Failed to send stop indication to DU APP");
+ MAC_FREE_SHRABL_BUF(MAC_MEM_REGION, MAC_POOL, cellStopId, sizeof(MacCellStopInfo));
}
-
- /* Now call the TOM (Tfu ownership module) primitive to process further */
- ret = macProcessSlotInd(inst,*slotInd);
- if(ret != ROK)
- {
- DU_LOG("\nMAC : macProcessSlotInd failed");
- RETVALUE(ret);
- }
-
- /* send slot indication to du app */
- ret = sendSlotIndMacToDuApp(slotInd);
- if(ret != ROK)
- {
- DU_LOG("\nMAC :Sending of slot ind msg from MAC to DU APP failed");
- RETVALUE(ret);
- }
-
- /*stoping Task*/
- SStopTask(startTime, PID_MAC_TTI_IND);
-
- RETVALUE(ret);
-} /* fapiMacSlotInd */
-
+ return ROK;
+}
#if defined(TENB_T2K3K_SPECIFIC_CHANGES) && defined(LTE_TDD)
/**
* @brief Transmission of non-rt indication from CL.