e2ap message cleanup
[o-du/l2.git] / src / 5gnrmac / mac_rach.c
index f1b850a..13c85ed 100644 (file)
@@ -16,6 +16,7 @@
 ################################################################################
  *******************************************************************************/
 /* header include files (.h) */
+#include <stdbool.h>
 #include "envopt.h"        /* environment options */
 #include "envdep.h"        /* environment dependent */
 #include "envind.h"        /* environment independent */
@@ -28,6 +29,7 @@
 #include "cm_lte.h"        /* Common LTE Defines */
 #include "tfu.h"           /* RGU Interface includes */
 #include "lrg.h"
+
 #include "gen.x"           /* general */
 #include "ssi.x"           /* system services */
 #include "cm5.x"           /* system services */
@@ -51,7 +53,6 @@ MacSchRachIndFunc macSchRachIndOpts[]=
    packMacSchRachInd
 };
 
-
 /*******************************************************************
  *
  * @brief Sends RACH indication to SCH
@@ -77,7 +78,7 @@ int sendRachIndMacToSch(RachIndInfo *rachInd)
     
    return(*macSchRachIndOpts[pst.selector])(&pst, rachInd); 
 }
+
 /*******************************************************************
  *
  * @brief Processes RACH indication from PHY
@@ -99,43 +100,43 @@ uint16_t fapiMacRachInd(Pst *pst, RachInd *rachInd)
 {
    uint8_t      pduIdx;
    uint8_t      preambleIdx;
-   RachIndInfo  *rachIndInfo;
+   RachIndInfo  rachIndInfo;
 
    DU_LOG("\nMAC : Received RACH indication");
    /* Considering one pdu and one preamble */
    pduIdx = 0;
    preambleIdx = 0;
 
-   rachIndInfo = &macCb.macCell->raCb;
-
-   rachIndInfo->cellId = rachInd->rachPdu[pduIdx].pci;
-   /* TODO : Allocate unique crnti for each ue */
-   rachIndInfo->crnti = 100;
-   rachIndInfo->timingInfo.sfn = rachInd->timingInfo.sfn;
-   rachIndInfo->timingInfo.slot = rachInd->timingInfo.slot;
-   rachIndInfo->slotIdx = rachInd->rachPdu[pduIdx].slotIdx;
-   rachIndInfo->symbolIdx = rachInd->rachPdu[pduIdx].symbolIdx;
-   rachIndInfo->freqIdx = rachInd->rachPdu[pduIdx].freqIdx;
-   rachIndInfo->preambleIdx = \
+   rachIndInfo.cellId = rachInd->rachPdu[pduIdx].pci;
+   /* TODO : A.ocate unique crnti for each ue */
+   rachIndInfo.crnti = 100;
+   rachIndInfo.timingInfo.sfn = rachInd->timingInfo.sfn;
+   rachIndInfo.timingInfo.slot = rachInd->timingInfo.slot;
+   rachIndInfo.slotIdx = rachInd->rachPdu[pduIdx].slotIdx;
+   rachIndInfo.symbolIdx = rachInd->rachPdu[pduIdx].symbolIdx;
+   rachIndInfo.freqIdx = rachInd->rachPdu[pduIdx].freqIdx;
+   rachIndInfo.preambleIdx = \
       rachInd->rachPdu[pduIdx].preamInfo[preambleIdx].preamIdx;
-   rachIndInfo->timingAdv = \
+   rachIndInfo.timingAdv = \
       rachInd->rachPdu[pduIdx].preamInfo[preambleIdx].timingAdv;
 
-   return(sendRachIndMacToSch(rachIndInfo));
+   /* storing the value in macRaCb */
+   createMacRaCb(rachIndInfo.cellId, rachIndInfo.crnti);
+
+   return(sendRachIndMacToSch(&rachIndInfo));
 }
 
 /* spec-38.211 Table 6.3.3.1-7 */
 uint8_t UnrestrictedSetNcsTable[MAX_ZERO_CORR_CFG_IDX] = 
 {0, 2, 4, 6, 8, 10, 12, 13, 15, 17, 19, 23, 27, 34, 46, 69};
 
-int MacProcUlSchInfo(Pst *pst, UlSchInfo *ulSchInfo)
+int MacProcUlSchInfo(Pst *pst, UlSchedInfo *ulSchedInfo)
 {
-   if(ulSchInfo != NULLP)
+   if(ulSchedInfo != NULLP)
        {
       MacUlSlot *currUlSlot = 
-          &macCb.macCell->ulSlot[ulSchInfo->slotIndInfo.slot % MAX_SLOT_SUPPORTED];
-      memcpy(&currUlSlot->ulCellInfo, ulSchInfo, sizeof(UlSchInfo)); 
+          &macCb.macCell->ulSlot[ulSchedInfo->slotIndInfo.slot % MAX_SLOT_SUPPORTED];
+      memcpy(&currUlSlot->ulInfo, ulSchedInfo, sizeof(UlSchedInfo)); 
    }
    return ROK;
 }