X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcm%2Fdu_app_rlc_inf.h;h=0644420601dde024b6c102244f83a52eaaa0d488;hb=0d27c8e566e052ad84ea994266a0c7a8c34ce096;hp=761e163f304e26825ac8357391b53d618a3af33d;hpb=1616921700a3c7541f1df6dd2678f9ee4d8e933b;p=o-du%2Fl2.git diff --git a/src/cm/du_app_rlc_inf.h b/src/cm/du_app_rlc_inf.h index 761e163f3..064442060 100644 --- a/src/cm/du_app_rlc_inf.h +++ b/src/cm/du_app_rlc_inf.h @@ -28,6 +28,9 @@ #define EVENT_RRC_DELIVERY_MSG_TRANS_TO_DU 214 #define EVENT_RLC_UE_RECONFIG_REQ 215 #define EVENT_RLC_UE_RECONFIG_RSP 216 +#define EVENT_DL_RRC_MSG_RSP_TO_DU 217 +#define EVENT_DL_USER_DATA_TRANS_TO_DU 218 +#define EVENT_UL_USER_DATA_TRANS_TO_DU 219 #define RB_ID_SRB 0 #define RB_ID_DRB 1 @@ -48,6 +51,12 @@ #define LCH_DTCH 4 /*!< DTCH Logical Channel */ #define LCH_DCCH 5 /*!< DCCH Logical Channel */ +typedef enum +{ + TRANSMISSION_IN_PROGRESS, + TRANSMISSION_COMPLETE, + TRANSMISSION_FAILED +}DlMsgState; typedef enum { @@ -505,6 +514,16 @@ typedef struct ulRrcMsgInfo uint8_t *rrcMsg; /* RRC Message (UL-DCCH Message) */ }RlcUlRrcMsgInfo; +/* UL User Data from RLC to DU APP */ +typedef struct ulUserDatInfo +{ + uint16_t cellId; /* Cell Id */ + uint16_t ueIdx; /* UE Index */ + uint8_t rbId; + uint16_t msgLen; /* User data length (in bytes) */ + uint8_t *userData; /* User data (UL-DTCH Message) */ +}RlcUlUserDatInfo; + /* DL RRC Message from DU APP to RLC */ typedef struct dlRrcMsgInfo { @@ -520,6 +539,14 @@ typedef struct dlRrcMsgInfo uint8_t *rrcMsg; /* RRC Message (DL-DCCH Message) */ }RlcDlRrcMsgInfo; +/* DL RRC Message Rsp From RLC to DU APP */ +typedef struct dlRrcMsgRsp +{ + uint16_t cellId; /* Cell Id */ + uint16_t crnti; /* UE index */ + DlMsgState state; /* Dl RRC Msg State */ +}RlcDlRrcMsgRsp; + /* RRC delivery message from RLC to DU APP */ typedef struct rrcDeliveryStatus { @@ -565,6 +592,16 @@ typedef uint8_t (*DuRlcUeReconfigReq) ARGS(( Pst *pst, RlcUeCfg *ueCfg )); +/* DL RRC Message from RLC to DU APP */ +typedef uint8_t (*RlcDlRrcMsgRspToDuFunc) ARGS(( + Pst *pst, + RlcDlRrcMsgRsp *dlRrcMsgRsp)); + +/* UL User data from RLC to DU APP */ +typedef uint8_t (*RlcUlUserDataToDuFunc) ARGS(( + Pst *pst, + RlcUlUserDatInfo *ulUserData)); + /* Pack/Unpack function declarations */ uint8_t packDuRlcUeCreateReq(Pst *pst, RlcUeCfg *ueCfg); uint8_t unpackRlcUeCreateReq(DuRlcUeCreateReq func, Pst *pst, Buffer *mBuf); @@ -578,6 +615,10 @@ uint8_t packRrcDeliveryReportToDu(Pst *pst, RrcDeliveryReport *rrcDeliveryReport uint8_t unpackRrcDeliveryReportToDu(RlcRrcDeliveryReportToDuFunc func,Pst *pst, Buffer *mBuf); uint8_t packDuRlcUeReconfigReq(Pst *pst, RlcUeCfg *ueCfg); uint8_t unpackRlcUeReconfigReq(DuRlcUeReconfigReq func, Pst *pst, Buffer *mBuf); +uint8_t packRlcDlRrcMsgRspToDu(Pst *pst, RlcDlRrcMsgRsp *dlRrcMsgRsp); +uint8_t unpackRlcDlRrcMsgRspToDu(RlcDlRrcMsgRspToDuFunc func, Pst *pst, Buffer *mBuf); +uint8_t packRlcUlUserDataToDu(Pst *pst, RlcUlUserDatInfo *ulUserData); +uint8_t unpackRlcUlUserDataToDu(RlcUlUserDataToDuFunc func, Pst *pst, Buffer *mBuf); /* Event Handler function declarations */ uint8_t RlcProcUeCreateReq(Pst *pst, RlcUeCfg *ueCfg); @@ -586,6 +627,8 @@ uint8_t DuProcRlcUlRrcMsgTrans(Pst *pst, RlcUlRrcMsgInfo *ulRrcMsgInfo); uint8_t RlcProcDlRrcMsgTransfer(Pst *pst, RlcDlRrcMsgInfo *dlRrcMsgInfo); uint8_t DuProcRlcRrcDeliveryReport(Pst *pst, RrcDeliveryReport *rrcDeliveryReport); uint8_t RlcProcUeReconfigReq(Pst *pst, RlcUeCfg *ueCfg); +uint8_t DuProcRlcDlRrcMsgRsp(Pst *pst, RlcDlRrcMsgRsp *dlRrcMsg); +uint8_t DuProcRlcUlUserDataTrans(Pst *pst, RlcUlUserDatInfo *ulUserData); #endif /* RLC_INF_H */