Merge "Added a new Flag ODU_LWR_MAC_DEBUG in the code"
[o-du/l2.git] / src / phy_stub / l1_bdy1.c
index 4b1792b..35d4252 100644 (file)
@@ -183,6 +183,7 @@ S16 l1BldAndSndConfigRsp(void *msg)
    fillMsgHeader(&fapiConfigRsp->header, FAPI_CONFIG_RESPONSE, msgLen);
 
    DU_LOG("\nPHY_STUB: Sending Config Response to Lower Mac");
+
    procPhyMessages(fapiConfigRsp->header.msg_id, \
         sizeof(fapi_config_resp_t), (void *)fapiConfigRsp);
    MAC_FREE(fapiConfigRsp, sizeof(fapi_config_resp_t));
@@ -207,7 +208,7 @@ S16 l1BldAndSndConfigRsp(void *msg)
  *
  * ****************************************************************/
 
-PUBLIC void l1HdlParamReq(uint32_t msgLen, void *msg)
+void l1HdlParamReq(uint32_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    DU_LOG("\nPHY_STUB: Received Param Request in PHY");
@@ -239,7 +240,7 @@ PUBLIC void l1HdlParamReq(uint32_t msgLen, void *msg)
  *
  * ****************************************************************/
 
-PUBLIC void l1HdlConfigReq(uint32_t msgLen, void *msg)
+void l1HdlConfigReq(uint32_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_config_req_t *configReq = (fapi_config_req_t *)msg;
@@ -356,6 +357,7 @@ uint16_t l1BuildAndSendRxDataInd(uint16_t slot, uint16_t sfn, fapi_ul_pusch_pdu_
    {
       msg5Sent = true;
       type = MSG_TYPE_MSG5;
+      msg5ShortBsrSent = false;
    }
 
 
@@ -403,6 +405,7 @@ uint16_t l1BuildAndSendRxDataInd(uint16_t slot, uint16_t sfn, fapi_ul_pusch_pdu_
               LCId is CCCH(0)
               From 38.321 section 6.1.1
             */
+           DU_LOG("\nForming MSG3 PDU");
            pdu[byteIdx++] = 0;
            /* Hardcoding MAC PDU */
            pdu[byteIdx++] = 181;
@@ -419,7 +422,8 @@ uint16_t l1BuildAndSendRxDataInd(uint16_t slot, uint16_t sfn, fapi_ul_pusch_pdu_
         {
            uint8_t lcgId = 0;
            uint8_t bufferSizeIdx = 6;
-
+            
+           DU_LOG("\nForming SHORT BSR PDU");
            /* For Short BSR
               MAC subheader format is R/R/LcId (1Byte)
               LCId is 61
@@ -433,6 +437,7 @@ uint16_t l1BuildAndSendRxDataInd(uint16_t slot, uint16_t sfn, fapi_ul_pusch_pdu_
 
       case MSG_TYPE_MSG5:
         {
+           DU_LOG("\nForming MSG5 PDU");
            uint8_t  msg5PduLen = 33;
            /* For RRC setup complete
               MAC subheader format is R/F/LCId/L (2/3 bytes)
@@ -558,7 +563,7 @@ uint16_t l1BuildAndSendRachInd(uint16_t slot, uint16_t sfn)
  * @return void
  *
  * ****************************************************************/
-PUBLIC uint16_t l1BuildAndSendSlotIndication()
+uint16_t l1BuildAndSendSlotIndication()
 {
 #ifdef INTEL_FAPI
    fapi_slot_ind_t *slotIndMsg;
@@ -574,8 +579,10 @@ PUBLIC uint16_t l1BuildAndSendSlotIndication()
       memset(slotIndMsg, 0, sizeof(fapi_slot_ind_t));
       slotIndMsg->sfn = sfnValue;
       slotIndMsg->slot = slotValue;
-      DU_LOG("\n\nPHY_STUB: SLOT indication [%d:%d]",sfnValue,slotValue);
 
+#ifdef ODU_SLOT_IND_DEBUG_LOG
+      DU_LOG("\n\nPHY_STUB: SLOT indication [%d:%d]",sfnValue,slotValue);
+#endif
       /* increment for the next TTI */
       slotValue++;
       if(sfnValue >= MAX_SFN_VALUE && slotValue > MAX_SLOT_VALUE)
@@ -615,7 +622,7 @@ PUBLIC uint16_t l1BuildAndSendSlotIndication()
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlStartReq(uint32_t msgLen, void *msg)
+S16 l1HdlStartReq(uint32_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_start_req_t *startReq = (fapi_start_req_t *)msg;
@@ -652,40 +659,39 @@ PUBLIC S16 l1HdlStartReq(uint32_t msgLen, void *msg)
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlDlTtiReq(uint16_t msgLen, void *msg)
+S16 l1HdlDlTtiReq(uint16_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_dl_tti_req_t *dlTtiReq;
    dlTtiReq = (fapi_dl_tti_req_t *)msg;
-
-   printf("\nPHY STUB: DL TTI Request at sfn=%d slot=%d",dlTtiReq->sfn,dlTtiReq->slot);
-#if 0
-   printf("\nPHY_STUB:  SFN     %d", dlTtiReq->sfn);
-   printf("\nPHY_STUB:  SLOT    %d", dlTtiReq->slot);
-   printf("\nPHY_STUB:  nPdus   %d", dlTtiReq->nPdus);
-   printf("\nPHY_STUB:  nGroup  %d", dlTtiReq->nGroup);
-   /* Printing SSB CONFIGURED VALUES */
-   printf("\nPHY_STUB: physCellId   %d", dlTtiReq->pdus->u.ssb_pdu.physCellId);
-   printf("\nPHY_STUB: betaPss      %d", dlTtiReq->pdus->u.ssb_pdu.betaPss);
-   printf("\nPHY_STUB: ssbBlockIndex %d",      dlTtiReq->pdus->u.ssb_pdu.ssbBlockIndex);
-   printf("\nPHY_STUB: ssbSubCarrierOffset %d",        dlTtiReq->pdus->u.ssb_pdu.ssbSubCarrierOffset);
-   printf("\nPHY_STUB: ssbOffsetPointA     %d",        dlTtiReq->pdus->u.ssb_pdu.ssbOffsetPointA);
-   printf("\nPHY_STUB: bchPayloadFlag      %d",        dlTtiReq->pdus->u.ssb_pdu.bchPayloadFlag);
-   printf("\nPHY_STUB: bchPayload          %x",        dlTtiReq->pdus->u.ssb_pdu.bchPayload);
-#endif
+   
    uint8_t pduCount = 0;
+
+#ifdef ODU_SLOT_IND_DEBUG_LOG
    if(dlTtiReq->nPdus == 0)
    {
       DU_LOG("\nPHY_STUB: No PDU in DL TTI Request");
    }
+   else
+   {  
+     DU_LOG("\nPHY STUB: DL TTI Request at sfn=%d slot=%d",dlTtiReq->sfn,dlTtiReq->slot);
+   }
+#endif 
+
    for(pduCount=0; pduCount<dlTtiReq->nPdus; pduCount++)
    {
       if(dlTtiReq->pdus[pduCount].pduType == 3) //SSB_PDU_TYPE
-        DU_LOG("\nPHY_STUB: SSB PDU");
+      {
+         DU_LOG("\nPHY_STUB: SSB PDU");
+      }
       else if(dlTtiReq->pdus[pduCount].pduType == 0)
-        DU_LOG("\nPHY_STUB: PDCCH PDU");
+      {
+         DU_LOG("\nPHY_STUB: PDCCH PDU");
+      }
       else if(dlTtiReq->pdus[pduCount].pduType == 1)
-        DU_LOG("\nPHY_STUB: PDSCH PDU");
+      {
+         DU_LOG("\nPHY_STUB: PDSCH PDU");
+      }
    }
 
    /* Free FAPI message */
@@ -713,14 +719,12 @@ PUBLIC S16 l1HdlDlTtiReq(uint16_t msgLen, void *msg)
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlTxDataReq(uint16_t msgLen, void *msg)
+S16 l1HdlTxDataReq(uint16_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_tx_data_req_t *txDataReq;
    txDataReq = (fapi_tx_data_req_t *)msg;
-
    DU_LOG("\nPHY STUB: TX DATA Request at sfn=%d slot=%d",txDataReq->sfn,txDataReq->slot);
-
    MAC_FREE(txDataReq, msgLen);
 #endif
    return ROK;
@@ -893,20 +897,24 @@ uint8_t l1BuildAndSendUciInd(uint16_t slot, uint16_t sfn, fapi_ul_pucch_pdu_t pu
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg)
+S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_ul_tti_req_t *ulTtiReq = NULLP;
-   
-   DU_LOG("\nPHY STUB: Received UL TTI Request");
-
    ulTtiReq = (fapi_ul_tti_req_t *)msg;
    uint8_t numPdus = ulTtiReq->nPdus;
 
+#ifdef ODU_SLOT_IND_DEBUG_LOG
    if(numPdus == 0)
    {
-      DU_LOG("\nPHY STUB: No PDU in UL TTI");
+      DU_LOG("\nPHY STUB: No PDU received in UL TTI Req");
+   }
+   else
+   {
+      DU_LOG("\nPHY STUB: Received UL TTI Request");
    }
+#endif 
+
    while(numPdus)
    {
       if(ulTtiReq->pdus[numPdus-1].pduType == 0)
@@ -916,14 +924,19 @@ PUBLIC S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg)
       if(ulTtiReq->pdus[numPdus-1].pduType == 1)
       {
         DU_LOG("\nPHY STUB: PUSCH PDU");                       
-        l1BuildAndSendRxDataInd(ulTtiReq->slot, ulTtiReq->sfn, \
+         l1BuildAndSendRxDataInd(ulTtiReq->slot, ulTtiReq->sfn, \
               ulTtiReq->pdus[numPdus-1].pdu.pusch_pdu); 
       }
       if(ulTtiReq->pdus[numPdus-1].pduType == 2)
       {
         DU_LOG("\nPHY STUB: PUCCH PDU");
-        l1BuildAndSendUciInd((ulTtiReq->slot + SLOT_DELAY), ulTtiReq->sfn, \
-              ulTtiReq->pdus[numPdus-1].pdu.pucch_pdu); 
+         fapi_ul_tti_req_t ulTtiSlotInd;
+        memset(&ulTtiSlotInd, 0, sizeof(fapi_ul_tti_req_t));
+        ulTtiSlotInd.slot = ulTtiReq->slot;
+        ulTtiSlotInd.sfn  = ulTtiReq->sfn;
+         ADD_DELTA_TO_TIME(ulTtiSlotInd, ulTtiSlotInd, SLOT_DELAY);
+        l1BuildAndSendUciInd(ulTtiSlotInd.slot, ulTtiSlotInd.sfn, \
+              ulTtiReq->pdus[numPdus-1].pdu.pucch_pdu);
       }
       numPdus--;
    }
@@ -954,7 +967,7 @@ PUBLIC S16 l1HdlUlTtiReq(uint16_t msgLen, void *msg)
  * @return void
  *
  * ****************************************************************/
-PUBLIC uint16_t l1BuildAndSendStopInd()
+uint16_t l1BuildAndSendStopInd()
 {
 #ifdef INTEL_FAPI
    fapi_stop_ind_t *stopIndMsg = NULLP;
@@ -996,7 +1009,7 @@ PUBLIC uint16_t l1BuildAndSendStopInd()
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlStopReq(uint32_t msgLen, void *msg)
+S16 l1HdlStopReq(uint32_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_stop_req_t *stopReq = (fapi_stop_req_t *)msg;
@@ -1139,7 +1152,7 @@ uint8_t l1BuildAndSendMsg5(uint16_t sfn, uint16_t slot)
  *
  * ****************************************************************/
 
-PUBLIC S16 l1HdlUlDciReq(uint16_t msgLen, void *msg)
+S16 l1HdlUlDciReq(uint16_t msgLen, void *msg)
 {
 #ifdef INTEL_FAPI
    fapi_ul_dci_req_t *ulDciReq = NULLP;