[Epic-Id: ODUHIGH-576] [Task-Id: ODUHIGH-586] [SubTask-Id: ODUHIGH-591]| NFAPI_BRANCH... 80/12880/1
authorsvaidhya <svaidhya@radisys.com>
Sat, 4 May 2024 09:38:59 +0000 (15:08 +0530)
committersvaidhya <svaidhya@radisys.com>
Sat, 4 May 2024 09:39:32 +0000 (15:09 +0530)
Change-Id: I34b04460e2a90c66c1d03c228f7982cc890477e3
Signed-off-by: svaidhya <svaidhya@radisys.com>
build/common/pnf_stub.mak
src/5gnrmac/lwr_mac.h
src/5gnrmac/lwr_mac_fsm.c
src/5gnrmac/lwr_mac_fsm.h
src/5gnrmac/lwr_mac_handle_phy.c
src/5gnrmac/mac_cfg_hdl.c
src/5gnrmac/mac_msg_hdl.c
src/5gnrsch/sch_msg_router.c
src/cm/ssi.x
src/mt/ss_pack.c

index 4a7c14d..2123b34 100644 (file)
@@ -35,6 +35,7 @@ lib: $(LIB_DIR)/libpnf.a
 include $(COM_BUILD_DIR)/compile.mak
 
 I_OPTS+=-I$(ROOT_DIR)/src/mt
+I_OPTS+=-I$(ROOT_DIR)/src/intel_fapi
 
 #-------------------------------------------------------------#
 #Linker macros
index 687286f..4a9ad3e 100644 (file)
@@ -50,6 +50,9 @@ typedef enum{
    CONFIG_REQUEST,
    CONFIG_RESPONSE,
    START_REQUEST,
+#ifdef NFAPI_ENABLED
+   START_RESPONSE,
+#endif
    STOP_REQUEST,
    MAX_EVENT
 }EventState;
index c747827..bca67c5 100644 (file)
@@ -1887,7 +1887,7 @@ uint8_t lwr_mac_procParamRspEvt(void *msg)
               }
            }
            MAC_FREE(cellParam, sizeof(ClCellParam));
-           sendToLowerMac(FAPI_CONFIG_REQUEST, 0, (void *)NULL);
+           sendEventToLowerMacFsm(FAPI_CONFIG_REQUEST, 0, (void *)NULL);
            return ROK;
         }
         else
@@ -4921,7 +4921,7 @@ lwrMacFsmHdlr fapiEvtHdlr[MAX_STATE][MAX_EVENT] =
  *
  * @details
  *
- *    Function : sendToLowerMac
+ *    Function : sendEventToLowerMacFsm
  *
  *    Functionality:
  *         -Sends message to LowerMac
@@ -4933,7 +4933,7 @@ lwrMacFsmHdlr fapiEvtHdlr[MAX_STATE][MAX_EVENT] =
  * @return void
  *
  ******************************************************************/
-void sendToLowerMac(uint16_t msgType, uint32_t msgLen, void *msg)
+void sendEventToLowerMacFsm(uint16_t msgType, uint32_t msgLen, void *msg)
 {
    lwrMacCb.event = msgType;
    fapiEvtHdlr[lwrMacCb.phyState][lwrMacCb.event](msg);
index 067a3cd..b46c101 100644 (file)
@@ -67,7 +67,7 @@ uint8_t lwr_mac_procParamRspEvt(void *msg);
 uint8_t lwr_mac_procConfigReqEvt(void *msg);
 uint8_t lwr_mac_procConfigRspEvt(void *msg);
 uint8_t lwr_mac_procStartReqEvt(void *msg);
-void sendToLowerMac(uint16_t, uint32_t, void *);
+void sendEventToLowerMacFsm(uint16_t, uint32_t, void *);
 void procPhyMessages(uint16_t msgType, uint32_t msgSize, void *msg);
 uint16_t fillDlTtiReq(SlotTimingInfo currTimingInfo);
 typedef uint8_t (*lwrMacFsmHdlr)(void *);
index 5c22704..cf51a73 100644 (file)
@@ -570,18 +570,18 @@ void procPhyMessages(uint16_t msgType, uint32_t msgSize, void *msg)
             DU_LOG("\nDEBUG  -->  LWR_MAC: Received FAPI_VENDOR_EXT_UL_IQ_SAMPLES");
             //send config req
             uint16_t cellId = 1;
-            sendToLowerMac(CONFIG_REQUEST, 0, (void *)&cellId);
+            sendEventToLowerMacFsm(CONFIG_REQUEST, 0, (void *)&cellId);
             break;
          } 
 #endif
       case FAPI_PARAM_RESPONSE:
         {
-            sendToLowerMac(PARAM_RESPONSE, msgSize, msg);
+            sendEventToLowerMacFsm(PARAM_RESPONSE, msgSize, msg);
            break;
         }
       case FAPI_CONFIG_RESPONSE:
         {
-           sendToLowerMac(CONFIG_RESPONSE, msgSize, msg);
+           sendEventToLowerMacFsm(CONFIG_RESPONSE, msgSize, msg);
            break;
         }
       case FAPI_SLOT_INDICATION:
index bfac69c..6f385c2 100644 (file)
@@ -473,9 +473,9 @@ uint8_t MacProcSchCellCfgCfm(Pst *pst, SchCellCfgCfm *schCellCfgCfm)
    {
       cellId = &schCellCfgCfm->cellId;
 #ifdef INTEL_TIMER_MODE
-      sendToLowerMac(UL_IQ_SAMPLE, 0, (void *)cellId);
+      sendEventToLowerMacFsm(UL_IQ_SAMPLE, 0, (void *)cellId);
 #else
-      sendToLowerMac(CONFIG_REQUEST, 0, (void *)cellId);
+      sendEventToLowerMacFsm(CONFIG_REQUEST, 0, (void *)cellId);
 #endif
    }
    else
index 509b04f..b26aa86 100644 (file)
@@ -515,7 +515,7 @@ uint8_t MacProcCellStart(Pst *pst, CellStartInfo  *cellStart)
 {
    DU_LOG("\nINFO  -->  MAC : Handling cell start request");
    gConfigInfo.gSlotCount = 0;
-   sendToLowerMac(START_REQUEST, 0, cellStart);
+   sendEventToLowerMacFsm(START_REQUEST, 0, cellStart);
 
    MAC_FREE_SHRABL_BUF(pst->region, pst->pool, cellStart, \
         sizeof(CellStartInfo));
index 4cbd958..48d3fa9 100755 (executable)
@@ -180,7 +180,7 @@ void callFlowSchMsgRouter(Pst *pst)
             strcpy(message,"EVENT_DL_CQI_TO_SCH");
             break;
          }
-      case EVENT_PHR_IND_TO_SCH
+      case EVENT_PHR_IND_TO_SCH:
          {
             strcpy(message,"EVENT_PHR_IND_TO_SCH");
          }
index 7a032d8..dab9c4d 100755 (executable)
@@ -937,10 +937,13 @@ S16 rdConQ ARGS((Data data));
 
 S16 SPkS8 ARGS((S8 val,Buffer *mBuf));
 S16 oduUnpackUInt8 ARGS((uint8_t val,Buffer *mBuf));
+S16 oduPackPostUInt8 ARGS((uint8_t val,Buffer *mBuf));
 S16 SPkS16 ARGS((S16 val,Buffer *mBuf));
 S16 oduUnpackUInt16 ARGS((uint16_t val,Buffer *mBuf));
+S16 oduPackPostUInt16 ARGS((uint16_t val,Buffer *mBuf));
 S16 SPkS32 ARGS((S32 val,Buffer *mBuf));
 S16 oduUnpackUInt32 ARGS((uint32_t val,Buffer *mBuf));
+S16 oduPackPostUInt32 ARGS((uint32_t val,Buffer *mBuf));
 /* ssi_x_001.main_49 : added packing of F32 and F64*/
 #ifdef SS_FLOAT
 S16 SPkF32 ARGS((F32 val,Buffer *mBuf));
index 2f9635a..6748f4f 100644 (file)
@@ -135,6 +135,33 @@ Buffer *mBuf                /* message buffer */
 #endif
    return (ret);
 } /* end of oduUnpackUInt8 */
+
+/*
+*
+*       Fun:   oduPackPostUInt8
+*
+*       Desc:  This function packs an unsigned 8 bit value into a message.
+*
+*       Ret:   ROK      - ok
+*              RFAILED  - failed, general (optional)
+*              ROUTRES  - failed, out of resources (optional)
+*
+*       Notes: None
+*
+*       File:  ss_pack.c
+*
+*/
+S16 oduPackPostUInt8
+(
+uint8_t val,                     /* value */
+Buffer *mBuf                /* message buffer */
+)
+{
+   S16 ret;                 /* return code */
+   ret = SAddPstMsg((Data) val, mBuf);
+   return (ret);
+} /* end of oduPackPostUInt8 */
+
 \f  
 /*
 *
@@ -217,6 +244,37 @@ Buffer *mBuf                /* message buffer */
    return (ret);
 } /* end of oduUnpackUInt16 */
   
+/*
+*
+*       Fun:   oduPackPostUInt16
+*
+*       Desc:  This function packs an unsigned 16 bit value into a message.
+*
+*       Ret:   ROK      - ok
+*              RFAILED  - failed, general (optional)
+*              ROUTRES  - failed, out of resources (optional)
+*
+*       Notes: None
+*
+*       File:  ss_pack.c
+*
+*/
+  
+S16 oduPackPostUInt16
+(
+uint16_t val,                    /* value */
+Buffer *mBuf                /* message buffer */
+)
+{
+   Data pkArray[2];         /* array for packing */
+   S16 ret;                 /* return code */
+
+   pkArray[1] = (Data) GetHiByte(val);
+   pkArray[0] = (Data) GetLoByte(val);
+   ret = SAddPstMsgMult(pkArray, (MsgLen) 2, mBuf);
+   return (ret);
+} /* end of oduPackPostUInt16 */
+
 \f  
 /*
 *
@@ -317,6 +375,42 @@ Buffer *mBuf                /* message buffer */
    return (ret);
 } /* end of oduUnpackUInt32 */
 
+/*
+*
+*       Fun:   oduPackPostUInt32
+*
+*       Desc:  This function packs an unsigned 32 bit value into a message.
+*
+*       Ret:   ROK      - ok
+*              RFAILED  - failed, general (optional)
+*              ROUTRES  - failed, out of resources (optional)
+*
+*       Notes: None
+*
+*       File:  ss_pack.c
+*
+*/
+  
+S16 oduPackPostUInt32
+(
+uint32_t val,                    /* value */
+Buffer *mBuf                /* message buffer */
+)
+{
+   uint16_t tmp;                 /* temporary value */
+   Data pkArray[4];         /* packing array */
+   S16 ret;                 /* return code */
+  
+   tmp = (uint16_t) GetHiWord(val);
+   pkArray[3] = (Data) GetHiByte(tmp);
+   pkArray[2] = (Data) GetLoByte(tmp);
+   tmp = (uint16_t) GetLoWord(val);
+   pkArray[1] = (Data) GetHiByte(tmp);
+   pkArray[0] = (Data) GetLoByte(tmp);
+   ret = SAddPstMsgMult(pkArray, (MsgLen) 4, mBuf);
+   return (ret);
+} /* end of oduPackPostUInt32 */
+
 /*ss038.103  1. Added Floating point support*/
 #ifdef SS_FLOAT
 /*