[Epic-ID: ODUHIGH-488][Task-ID: ODUHIGH-501] WG8 Alignment | UE RLC Re-establishment...
[o-du/l2.git] / src / 5gnrrlc / rlc_upr_inf_api.c
index 52dd083..bc00bf3 100644 (file)
@@ -32,6 +32,44 @@ RlcRrcDeliveryReportToDuFunc rlcSendRrcDeliveryReportToDuOpts[]=
    DuProcRlcRrcDeliveryReport,    /* 1 - Tightly coupled */
    packRrcDeliveryReportToDu           /* 2 - Light weight loosely coupled */
 };
+
+/* Function pointer array for DL RRC Msg Rsp Transfer */
+RlcDlRrcMsgRspToDuFunc rlcSendDlRrcMsgRspToDuOpts[] = 
+{
+   packRlcDlRrcMsgRspToDu,       /* 0 - Loosely coupled */
+   DuProcRlcDlRrcMsgRsp,         /* 1 - Tightly coupled */
+   packRlcDlRrcMsgRspToDu        /* 2 - Light weight loosely coupled */
+};
+
+/* Function pointer array for UL RRC Msg Transfer */
+RlcUlUserDataToDuFunc rlcSendUlUserDataToDuOpts[] =
+{
+   packRlcUlUserDataToDu,       /* 0 - Loosely coupled */
+   DuProcRlcUlUserDataTrans,    /* 1 - Tightly coupled */
+   packRlcUlUserDataToDu        /* 2 - Light weight loosely coupled */
+};
+
+RlcDuUeDeleteRsp rlcUeDeleteRspOpts[] =
+{
+   packRlcDuUeDeleteRsp,     /* 0 - loosely coupled */
+   DuProcRlcUeDeleteRsp,     /* 1 - tightly coupled */
+   packRlcDuUeDeleteRsp     /* 2 - LWLC loosely coupled */
+};
+
+RlcSlicePmToDuFunc rlcSlicePmOpts[] =
+{
+   packRlcDuSlicePm,          /* 0 - loosely coupled */
+   DuProcRlcSliceMetrics,     /* 1 - tightly coupled */
+   packRlcDuSlicePm           /* 2 - LWLC loosely coupled */
+};
+
+RlcDuUeReestablishRsp rlcUeReestablishRspOpts[] =
+{
+   packRlcDuUeReestablishRsp,     /* 0 - loosely coupled */
+   DuProcRlcUeReestablishRsp,     /* 1 - tightly coupled */
+   packRlcDuUeReestablishRsp     /* 2 - LWLC loosely coupled */
+};
+
 /*******************************************************************
  *
  * @brief Sends UL RRC Message Info to DU APP
@@ -73,6 +111,111 @@ uint8_t rlcSendRrcDeliveryReportToDu(Pst *pst, RrcDeliveryReport *rrcDelivery)
 {
    return (*rlcSendRrcDeliveryReportToDuOpts[pst->selector])(pst, rrcDelivery);
 }
+/*******************************************************************
+ *
+ * @brief Sends DL RRC Message Status to DU APP
+ *
+ * @details
+ *
+ *    Function : rlcSendDlRrcMsgRspToDu
+ *
+ *    Functionality:  Sends DL RRC Message Status to DU APP
+ *
+ * @params[in] Pst structure
+ *             DL RRC Msg Info
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t rlcSendDlRrcMsgRspToDu(Pst *pst, RlcDlRrcMsgRsp *dlRrcMsg)
+{
+   return (*rlcSendDlRrcMsgRspToDuOpts[pst->selector])(pst, dlRrcMsg);
+}
+
+/*******************************************************************
+ *
+ * @brief Sends UL User data Info to DU APP
+ *
+ * @details
+ *
+ *    Function : rlcSendUlUserDataToDu
+ *
+ *    Functionality:  Sends UL User Data Info to DU APP
+ *
+ * @params[in] Pst structure
+ *             UL user data Info
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t rlcSendUlUserDataToDu(Pst *pst, RlcUlUserDatInfo *ulUserData)
+{
+   return (*rlcSendUlUserDataToDuOpts[pst->selector])(pst, ulUserData);
+}
+
+/*******************************************************************
+ *
+ * @brief Sends Ue Delete Rsp to DU APP
+ *
+ * @details
+ *
+ *    Function : rlcSendUeDeleteRspToDu 
+ *
+ *    Functionality:  Sends Ue Delete Rsp to DU APP
+ *
+ * @params[in] Pst *pst, RlcUeDeleteRsp *ueDeleteRsp 
+ *             
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t rlcSendUeDeleteRspToDu(Pst *pst, RlcUeDeleteRsp *ueDeleteRsp)
+{
+    return (*rlcUeDeleteRspOpts[pst->selector])(pst, ueDeleteRsp);
+}
+
+/*******************************************************************
+ *
+ * @brief Sends Slice Performance Metrics to DU APP
+ *
+ * @details
+ *
+ *    Function : rlcSendSlicePmToDu 
+ *
+ *    Functionality:  Sends Performace Metrics per slice together to DU APP
+ *
+ * @params[in] Pst *pst, SlicePmList *sliceStats 
+ *             
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t rlcSendSlicePmToDu(Pst *pst, SlicePmList *sliceStats)
+{
+    return (*rlcSlicePmOpts[pst->selector])(pst, sliceStats);
+}
+
+/*******************************************************************
+ *
+ * @brief Sends Ue Reestablishment Rsp to DU APP
+ *
+ * @details
+ *
+ *    Function : rlcSendUeReestablishRspToDu 
+ *
+ *    Functionality:  Sends Ue Reestablishment Rsp to DU APP
+ *
+ * @params[in] Pst *pst, RlcUeReestablishRsp *ueReestablishRsp 
+ *             
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+uint8_t rlcSendUeReestablishRspToDu(Pst *pst, RlcUeReestablishRsp *ueReestablishRsp)
+{
+    return (*rlcUeReestablishRspOpts[pst->selector])(pst, ueReestablishRsp);
+}
+
 /**********************************************************************
          End of file
 **********************************************************************/