X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac_rach.c;h=5531917e30386a3c6540c21b1e3831dd165cad01;hb=05d098e6b94f629a932caaff404f2b703b123852;hp=cc59d5c93f350d9006d57eb6e698f09bd1a3b83b;hpb=cb811f8127971006aa5c345c71cb737e8be8dc10;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac_rach.c b/src/5gnrmac/mac_rach.c index cc59d5c93..5531917e3 100644 --- a/src/5gnrmac/mac_rach.c +++ b/src/5gnrmac/mac_rach.c @@ -25,22 +25,6 @@ #include "mac.h" #include "mac_utils.h" -/* Function pointer for sending rach ind from MAC to SCH */ -MacSchRachIndFunc macSchRachIndOpts[]= -{ - packMacSchRachInd, /* packing for loosely coupled */ - MacSchRachInd, /* packing for tightly coupled */ - packMacSchRachInd /* packing for light weight loosely coupled */ -}; - -/* Function pointer for sending RACH resource request from MAC to SCH */ -MacSchRachRsrcReqFunc macSchRachRsrcReqOpts[] = -{ - packMacSchRachRsrcReq, /* packing for loosely coupled */ - MacSchRachRsrcReq, /* packing for tightly coupled */ - packMacSchRachRsrcReq /* packing for light weight loosely coupled */ -}; - /* Function pointer for sending RACH resource response from MAC to DU APP */ MacDuRachRsrcRspFunc macDuRachRsrcRspOpts[] = { @@ -49,14 +33,6 @@ MacDuRachRsrcRspFunc macDuRachRsrcRspOpts[] = packDuMacRachRsrcRsp /* packing for light weight loosly coupled */ }; -/* Function pointer for sending RACH resource release from MAC to SCH */ -MacSchRachRsrcRelFunc macSchRachRsrcRelOpts[] = -{ - packMacSchRachRsrcRel, /* packing for loosely coupled */ - MacSchRachRsrcRel, /* packing for tightly coupled */ - packMacSchRachRsrcRel /* packing for light weight loosely coupled */ -}; - /******************************************************************* * * @brief Sends RACH indication to SCH @@ -78,7 +54,7 @@ uint8_t sendRachIndMacToSch(RachIndInfo *rachInd) Pst pst; FILL_PST_MAC_TO_SCH(pst, EVENT_RACH_IND_TO_SCH); - return(*macSchRachIndOpts[pst.selector])(&pst, rachInd); + return(SchMessageRouter(&pst, (void *)rachInd)); } /******************************************************************* @@ -283,7 +259,7 @@ uint8_t MacProcRachRsrcReq(Pst *pst, MacRachRsrcReq *rachRsrcReq) /* Send RACH resource request from MAC to SCH */ FILL_PST_MAC_TO_SCH(schPst, EVENT_RACH_RESOURCE_REQUEST_TO_SCH); - ret = (*macSchRachRsrcReqOpts[schPst.selector])(&schPst, schRachRsrcReq); + ret = SchMessageRouter(&schPst, (void *)schRachRsrcReq); } else DU_LOG("\nERROR --> MAC : Memory allocation failed for RACH resource request to SCH"); @@ -450,7 +426,7 @@ uint8_t MacProcRachRsrcRel(Pst *pst, MacRachRsrcRel *rachRsrcRel) /* Send RACH resource release from MAC to SCH */ FILL_PST_MAC_TO_SCH(schPst, EVENT_RACH_RESOURCE_RELEASE_TO_SCH); - ret = (*macSchRachRsrcRelOpts[schPst.selector])(&schPst, schRachRsrcRel); + ret = SchMessageRouter(&schPst, (void *)schRachRsrcRel); } else DU_LOG("\nERROR --> MAC : Memory allocation failed for RACH resource release to SCH"); @@ -498,7 +474,7 @@ uint8_t MacProcUlSchInfo(Pst *pst, UlSchedInfo *ulSchedInfo) if(ulSchedInfo != NULLP) { MacUlSlot *currUlSlot = - &macCb.macCell[cellIdx]->ulSlot[ulSchedInfo->slotIndInfo.slot % MAX_SLOTS]; + &macCb.macCell[cellIdx]->ulSlot[ulSchedInfo->slotIndInfo.slot % macCb.macCell[cellIdx]->numOfSlots]; memcpy(&currUlSlot->ulInfo, ulSchedInfo, sizeof(UlSchedInfo)); } return ROK;