X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrrlc%2Frlc_upr_inf_api.c;h=ae28ef62d88cfe27c79ba7127370414a046adf1a;hb=1848207fc6601561cbac8cbb5950d1c6e80f2bea;hp=ff4305862d9dccf2c63730b1ed522293623996eb;hpb=514d4c21e79d37636005186dd9ac5510742b7618;p=o-du%2Fl2.git diff --git a/src/5gnrrlc/rlc_upr_inf_api.c b/src/5gnrrlc/rlc_upr_inf_api.c index ff4305862..ae28ef62d 100644 --- a/src/5gnrrlc/rlc_upr_inf_api.c +++ b/src/5gnrrlc/rlc_upr_inf_api.c @@ -26,6 +26,13 @@ RlcUlRrcMsgToDuFunc rlcSendUlRrcMsgToDuOpts[] = packRlcUlRrcMsgToDu /* 2 - Light weight loosely coupled */ }; +RlcDuMaxRetransInd rlcMaxRetransIndOpts[] = +{ + packRlcDuMaxRetransInd, /* 0 - loosely coupled */ + DuProcRlcMaxRetransInd, /* 1 - tightly coupled */ + packRlcDuMaxRetransInd /* 2 - LWLC loosely coupled */ +}; + RlcRrcDeliveryReportToDuFunc rlcSendRrcDeliveryReportToDuOpts[]= { packRrcDeliveryReportToDu, /* 0 - Loosely coupled */ @@ -41,6 +48,35 @@ RlcDlRrcMsgRspToDuFunc rlcSendDlRrcMsgRspToDuOpts[] = 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 @@ -62,6 +98,27 @@ uint8_t rlcSendUlRrcMsgToDu(Pst *pst, RlcUlRrcMsgInfo *ulRrcMsgInfo) return (*rlcSendUlRrcMsgToDuOpts[pst->selector])(pst, ulRrcMsgInfo); } +/******************************************************************* +* +* @brief Sends max retransmission reached Info to DU APP +* +* @details +* +* Function : rlcSendMaxRetransIndToDu +* +* Functionality: Sends max retransmission reached Info to DU APP +* +* @params[in] Pst structure +* max retransmission reached Info +* @return ROK - success +* RFAILED - failure +* +* ****************************************************************/ +uint8_t rlcSendMaxRetransIndToDu(Pst *pst, RlcMaxRetransInfo *maxRetransInfo) +{ + return (*rlcMaxRetransIndOpts[pst->selector])(pst, maxRetransInfo); +} + /******************************************************************* * * @brief Sends RRC delivery Message Info to DU APP @@ -82,7 +139,6 @@ uint8_t rlcSendRrcDeliveryReportToDu(Pst *pst, RrcDeliveryReport *rrcDelivery) { return (*rlcSendRrcDeliveryReportToDuOpts[pst->selector])(pst, rrcDelivery); } - /******************************************************************* * * @brief Sends DL RRC Message Status to DU APP @@ -104,6 +160,90 @@ 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 **********************************************************************/