[Epic-ID: ODUHIGH-402][Task-ID: ODUHIGH-418] Harq feature changes
[o-du/l2.git] / src / cm / mac_sch_interface.c
index d40204a..9d1cd0e 100644 (file)
@@ -1,12 +1,9 @@
 /* header include files (.h) */
 #include "common_def.h"
-#include "tfu.h"           /* RGU Interface defines */
 #include "lrg.h"
 
 /* header/extern include files (.x) */
-#include "tfu.x"           /* RGU Interface includes */
 #include "lrg.x"
-#include "du_app_mac_inf.h"
 #include "mac_sch_interface.h"
 
 /**
  *  @return  S16
  *      -# ROK
  **/
-int packMacSchSlotInd(Pst *pst, SlotIndInfo *slotInd)
+uint8_t packMacSchSlotInd(Pst *pst, SlotTimingInfo *slotInd)
 {
    Buffer *mBuf = NULLP;
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
+   if (ODU_GET_MSG_BUF(pst->region, pst->pool, &mBuf) != ROK)
    {
-      RETVALUE(RFAILED);
+      return RFAILED;
    }
 
    /* pack SFN and slot value */
-   CMCHKPK(SPkU16,slotInd->sfn, mBuf);
-   CMCHKPK(SPkU16,slotInd->slot, mBuf);
+   CMCHKPK(oduUnpackUInt16,slotInd->sfn, mBuf);
+   CMCHKPK(oduUnpackUInt16,slotInd->slot, mBuf);
 
-   RETVALUE(SPstTsk(pst,mBuf));
+   return ODU_POST_TASK(pst,mBuf);
 }
 
+/**
+ * @brief function to unpack Slot ind message from MAC
+ *        to scheduler with loose coupling
+ *
+ * @details
+ *
+ *     Function : unpackMacSchSlotInd
+ *
+ *
+ *  @param[in]  Pst *pst, the post structure
+ *  @param[in]  Buffer *mBuf, the message buffer
+ *  @return  S16
+ *      -# ROK
+ **/
+uint8_t unpackMacSchSlotInd(MacSchSlotIndFunc func, Pst *pst, Buffer  *mBuf)
+{
+   /* TODO */
+   return ROK;
+}
+
+
 /*******************************************************************
  *
  * @brief Pack and Send Rach Ind from MAC to SCH
@@ -54,7 +72,7 @@ int packMacSchSlotInd(Pst *pst, SlotIndInfo *slotInd)
  *         RFAILED - failure
  *
  * ****************************************************************/
-int packMacSchRachInd(Pst *pst, RachIndInfo *rachInd)
+uint8_t packMacSchRachInd(Pst *pst, RachIndInfo *rachInd)
 {
    if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
    {
@@ -83,7 +101,7 @@ int packMacSchRachInd(Pst *pst, RachIndInfo *rachInd)
  *         RFAILED - failure
  *
  * ****************************************************************/
-int packMacSchCrcInd(Pst *pst, CrcIndInfo *crcInd)
+uint8_t packMacSchCrcInd(Pst *pst, CrcIndInfo *crcInd)
 {
    if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
    {
@@ -112,7 +130,7 @@ int packMacSchCrcInd(Pst *pst, CrcIndInfo *crcInd)
  *         RFAILED - failure
  *
  * ****************************************************************/
-uint8_t packMacSchDlRlcBoInfo(Pst *pst, DlRlcBOInfo *dlBoInfo)
+uint8_t packMacSchDlRlcBoInfo(Pst *pst, DlRlcBoInfo *dlBoInfo)
 {
    if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
    {
@@ -139,9 +157,9 @@ uint8_t packMacSchDlRlcBoInfo(Pst *pst, DlRlcBOInfo *dlBoInfo)
  *  @return  S16
  *      -# ROK
  **/
-int packSchMacDlAlloc(Pst *pst, DlSchedInfo  *dlSchedInfo)
+uint8_t packSchMacDlAlloc(Pst *pst, DlSchedInfo  *dlSchedInfo)
 {
-       return ROK;
+   return ROK;
 }
 
 /**
@@ -158,9 +176,9 @@ int packSchMacDlAlloc(Pst *pst, DlSchedInfo  *dlSchedInfo)
  *  @return  S16
  *      -# ROK
  **/
-int packSchMacUlSchInfo(Pst *pst, UlSchedInfo *ulSchedInfo)
+uint8_t packSchMacUlSchInfo(Pst *pst, UlSchedInfo *ulSchedInfo)
 {
-       return ROK;
+   return ROK;
 }
 
 /**
@@ -176,9 +194,9 @@ int packSchMacUlSchInfo(Pst *pst, UlSchedInfo *ulSchedInfo)
  *  @return  S16
  *      -# ROK
  **/
-int packSchCellCfg(Pst *pst, SchCellCfg  *schCellCfg)
+uint8_t packSchCellCfg(Pst *pst, SchCellCfg  *schCellCfg)
 {
-       return ROK;
+   return ROK;
 }
 
 /**
@@ -194,11 +212,528 @@ int packSchCellCfg(Pst *pst, SchCellCfg  *schCellCfg)
  *  @return  S16
  *      -# ROK
  **/
-int packSchCellCfgCfm(Pst *pst, SchCellCfgCfm *schCellCfgCfm)
+uint8_t packSchCellCfgCfm(Pst *pst, SchCellCfgCfm *schCellCfgCfm)
+{
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send UE Config Request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchAddUeConfigReq
+ *
+ *    Functionality:
+ *       Pack and Send UE Create Request from MAC to SCH
+ *
+ * @params[in]
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchAddUeConfigReq(Pst *pst, SchUeCfg  *ueCfg)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED; 
+   }
+   return ROK;
+}
+
+
+/*******************************************************************
+ *
+ * @brief Packs and send UE create response
+ *
+ * @details 
+ *
+ *    Function : packSchUeCfgRsp
+ *
+ *    Functionality:
+ *      Packs and send UE create response
+ *
+ * @params[in] Post structure
+ *             UE config response
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packSchUeCfgRsp(Pst *pst, SchUeCfgRsp *cfgRsp)
+{
+   return ROK;
+}
+/*******************************************************************
+ *
+ * @brief Pack and Send BSR from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchBsr
+ *
+ *    Functionality:
+ *       Pack and Send BSR from MAC to SCH
+ *
+ * @params[in]
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchBsr(Pst *pst, UlBufferStatusRptInd *bsrInd)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send SR UCI Ind from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSrSchUciInd
+ *
+ *    Functionality:
+ *       Pack and Send SR UCI Ind from MAC to SCH
+ *
+ * @params[in] 
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchSrUciInd(Pst *pst, SrUciIndInfo *uciInd)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send HARQ UCI Ind from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacHarqSchUciInd
+ *
+ *    Functionality:
+ *       Pack and Send HARQ UCI Ind from MAC to SCH
+ *
+ * @params[in]
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchHarqUciInd(Pst *pst, HarqUciIndInfo *uciInd)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+
+/*******************************************************************
+ *
+ * @brief Pack and Send Modify UE Config Request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchModUeConfigReq
+ *
+ *    Functionality:
+ *       Pack and Send Modify UE Config Request from MAC to SCH
+ *
+ * @params[in]
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchModUeConfigReq(Pst *pst, SchUeCfg  *ueCfg)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED; 
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send RACH resource Request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchRachRsrcReq
+ *
+ *    Functionality:
+ *       Pack and Send RACH resouece Request from MAC to SCH
+ *
+ * @params[in] Post structure
+ *             RACH resource request
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchRachRsrcReq(Pst *pst, SchRachRsrcReq *schRachRsrcReq)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED; 
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send RACH resource Response from SCH to MAC
+ *
+ * @details
+ *
+ *    Function : packSchRachRsrcRsp
+ *
+ *    Functionality:
+ *       Pack and Send RACH resource Response from SCH to MAC
+ *
+ * @params[in] Post structure
+ *             RACH resource response
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packSchRachRsrcRsp(Pst *pst, SchRachRsrcRsp *schRachRsrcRsp)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {  
+      /* TODO */
+   }
+   else
+   {  
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send RACH resource Release from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchRachRsrcRel
+ *
+ *    Functionality:
+ *       Pack and Send RACH resouece Release from MAC to SCH
+ *
+ * @params[in] Post structure
+ *             RACH resource release
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchRachRsrcRel(Pst *pst, SchRachRsrcRel *schRachRsrcRel)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {   
+      /* TODO */
+   }   
+   else
+   {   
+      return RFAILED; 
+   }   
+   return ROK;
+}
+
+/*******************************************************************
+*
+* @brief Pack and Send UE Delete Request from MAC to SCH
+*
+* @details
+*
+*    Function : packMacSchUeDeleteReq 
+*
+*    Functionality:
+*       Pack and Send  UE Delete Request from MAC to SCH
+*
+* @params[in]
+* @return ROK     - success
+*         RFAILED - failure
+*
+* ****************************************************************/
+uint8_t packMacSchUeDeleteReq(Pst *pst,  SchUeDelete *schUeDel)
+{
+    if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+    {
+       /* TODO */
+    }
+    else
+    {
+       return RFAILED;
+    }
+    return ROK;
+}
+
+/*******************************************************************
+*
+* @brief Packs and send UE delete response
+*
+* @details
+*
+*    Function : packSchUeDeleteRsp
+*
+*    Functionality:
+*      Packs and send UE delete response
+*
+* @params[in] Post structure
+*             UE delete response
+* @return ROK     - success
+*         RFAILED - failure
+*
+* ****************************************************************/
+
+uint8_t packSchUeDeleteRsp(Pst *pst, SchUeDeleteRsp  *delRsp)
+{
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send Cell Delete Request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchCellDeleteReq
+ *
+ *    Functionality:
+ *       Pack and Send  Cell Delete Request from MAC to SCH
+ *
+ * @params[in] Pst *pst,  SchCellDelete *schCellDelete
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchCellDeleteReq(Pst *pst,  SchCellDelete *schCellDelete)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Packs and send CELL delete response
+ *
+ * @details
+ *
+ *    Function : packSchCellDeleteRsp
+ *
+ *    Functionality:
+ * * @params[in] Post structure, SchCellDeleteRsp schCellDeleteRsp
+ *
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ *
+ * ****************************************************************/
+
+uint8_t packSchCellDeleteRsp(Pst *pst, SchCellDeleteRsp  *schCellDeleteRsp)
+{
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send Slice Cfg request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchSliceCfgReq 
+ *
+ *    Functionality:
+ *       Pack and Send Slice Cfg request from MAC to SCH
+ *
+ * @params[in] Pst *pst, SchSliceCfgReq *cfgReq 
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchSliceCfgReq(Pst *pst, SchSliceCfgReq *cfgReq)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/**
+ * @brief function to pack slice cfg rsp from SCH to MAC
+ *
+ * @details
+ *
+ *     Function : packSchSliceCfgRsp 
+ *     
+ *     
+ *  @param[in]  Pst *pst, SchSliceCfgRsp *cfgRsp
+ *  @return  S16 - ROK
+ **/
+uint8_t packSchSliceCfgRsp(Pst *pst, SchSliceCfgRsp *cfgRsp)
+{
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send Slice ReCfg request from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchSliceReCfgReq 
+ *
+ *    Functionality:
+ *       Pack and Send Slice ReCfg request from MAC to SCH
+ *
+ * @params[in] Pst *pst, SchSliceCfgReq *cfgReq 
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchSliceReCfgReq(Pst *pst, SchSliceCfgReq *cfgReq)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LWLC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/**
+ * @brief function to pack slice cfg rsp from SCH to MAC
+ *
+ * @details
+ *
+ *     Function : packSchSliceReCfgRsp 
+ *     
+ *     
+ *  @param[in]  Pst *pst, SchSliceCfgRsp *cfgRsp
+ *  @return  S16 - ROK
+ **/
+uint8_t packSchSliceReCfgRsp(Pst *pst, SchSliceCfgRsp *cfgRsp)
+{
+   return ROK;
+}
+
+/*******************************************************************
+ *
+ * @brief Pack and Send paging indication from MAC to SCH
+ *
+ * @details
+ *
+ *    Function : packMacSchPagingInd
+ *
+ *    Functionality:
+ *       Pack and Send paging indication from MAC to SCH
+ *
+ * @params[in] Pst *pst,  SchPageInd *pageInd
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t packMacSchPagingInd(Pst *pst,  SchPageInd *pageInd)
+{
+   if((pst->selector == ODU_SELECTOR_LC) || (pst->selector == ODU_SELECTOR_LC))
+   {
+      /* TODO */
+   }
+   else
+   {
+      return RFAILED;
+   }
+   return ROK;
+}
+
+/**
+ * @brief function to pack DL Paging allocation message 
+ *        from MAC to SCH
+ *
+ * @details
+ *
+ *     Function : packSchMacDlPageAlloc 
+ *     
+ *     
+ *  @param[in]  Pst *pst, the post structure     
+ *  @param[in]  DlPageAlloc *dlPageAlloc
+ *  @return  S16
+ *      -# ROK
+ **/
+uint8_t packSchMacDlPageAlloc(Pst *pst, DlPageAlloc *dlPageAlloc)
 {
-       return ROK;
+   return ROK;
 }
 
+/**
+ * @brief function to pack Harq process release message 
+ *        from SCH to MAC
+ *
+ * @details
+ *
+ *     Function : packSchMacDlReleaseHarq 
+ *     
+ *     
+ *  @param[in]  Pst *pst, the post structure     
+ *  @param[in]  SchRlsHqInfo *rlsHqInfo
+ *  @return  S16
+ *      -# ROK
+ **/
+uint8_t packSchMacDlReleaseHarq(Pst *pst, SchRlsHqInfo *rlsHqInfo)
+{
+   return ROK;
+}
 
 /**********************************************************************
   End of file