X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_mgr.h;h=92344464160d6dddbcfba2089b89c3127c1b90fb;hb=b9a6860b8d95b57307e3e30b95642c83a762241e;hp=c9b1bc92248b0df4054a2896d0387236af070ff4;hpb=3fb14013a5209cb17f3e2a5a3faf496b5e9cdd95;p=o-du%2Fl2.git diff --git a/src/du_app/du_mgr.h b/src/du_app/du_mgr.h index c9b1bc922..923444641 100644 --- a/src/du_app/du_mgr.h +++ b/src/du_app/du_mgr.h @@ -71,6 +71,51 @@ typedef enum UE_ACTIVE }UeState; +typedef enum +{ + UE_CTXT_UNKNOWN, + UE_CTXT_SETUP, + UE_CTXT_MOD +}UeCtxtActionType; + +/** F1AP Msg IE **/ +typedef struct f1setupRsp +{ + uint32_t transId; /* Uniquely identify transaction */ + char cuName[CU_DU_NAME_LEN_MAX]; /* CU Name */ + F1RrcVersion rrcVersion; /* RRC version */ +}F1SetupRsp; + +typedef struct f1DlRrcMsg +{ + uint32_t gnbDuUeF1apId; + uint32_t gnbCuUeF1apId; + uint8_t srbId; + bool execDup; + bool deliveryStatRpt; + uint16_t rrcMsgSize; + uint8_t *rrcMsgPdu; +}F1DlRrcMsg; + +typedef struct duUeCfg +{ + void *cellGrpCfg; + void *ueNrCapability; + uint8_t numRlcLcs; /* Rlc Ue Cfg */ + RlcBearerCfg rlcLcCfg[MAX_NUM_LC]; + uint8_t numMacLcs; /* Mac Ue Cfg */ + LcCfg macLcCfg[MAX_NUM_LC]; + AmbrCfg *ambrCfg; +}DuUeCfg; + +typedef struct f1UeContextSetup +{ + UeCtxtActionType actionType; + uint8_t cellIdx; + DuUeCfg duUeCfg; + F1DlRrcMsg *dlRrcMsg; +}F1UeContextSetupDb; + typedef struct cellCfgParams { NrEcgi nrEcgi; /* ECGI */ @@ -82,11 +127,14 @@ typedef struct cellCfgParams typedef struct duUeCb { - uint32_t gnbDuUeF1apId; /* GNB DU UE F1AP ID */ - uint32_t gnbCuUeF1apId; /* GNB CU UE F1AP ID */ - UeState ueState; - MacUeCfg macUeCfg; - RlcUeCfg rlcUeCfg; + F1UeContextSetupDb *f1UeDb; + uint16_t crnti; + uint32_t gnbDuUeF1apId; /* GNB DU UE F1AP ID */ + uint32_t gnbCuUeF1apId; /* GNB CU UE F1AP ID */ + uint32_t drbBitMap; /* Drb Bit Map */ + UeState ueState; /* UE Active/ Ue Inactive state */ + MacUeCfg macUeCfg; /* Mac Ue Cfg */ + RlcUeCfg rlcUeCfg; /* Rlc Ue Cfg */ }DuUeCb; typedef struct duCellCb @@ -95,7 +143,6 @@ typedef struct duCellCb CellCfgParams cellInfo; /* Cell info */ /* pointer to store the address of macCellCfg params used to send du-app to MAC */ MacCellCfg *duMacCellCfg; - bool firstSlotIndRcvd; CellStatus cellStatus; /* Cell status */ uint32_t numActvUes; /* Total Active UEs */ DuUeCb ueCb[MAX_NUM_UE]; /* UE CONTEXT */ @@ -188,12 +235,11 @@ uint8_t duHdlEgtpCfgComplete(CmStatus cfm); uint8_t duSendEgtpSrvOpenReq(); uint8_t duHdlEgtpSrvOpenComplete(CmStatus cfm); uint8_t duSendEgtpTnlMgmtReq(uint8_t action, uint32_t lclTeid, uint32_t remTeid); -uint8_t duHdlEgtpTnlMgmtCfm(EgtpTnlEvt tnlEvtCfm); uint8_t duSendEgtpTestData(); uint8_t duSendEgtpDatInd(Buffer *mBuf); uint8_t duHdlSchCfgComplete(Pst *pst, RgMngmt *cfm); -uint8_t duBuildAndSendMacCellStartReq(); -uint8_t duBuildAndSendMacCellStopReq(); +uint8_t duBuildAndSendMacCellStart(); +uint8_t duBuildAndSendMacCellStop(); #endif /**********************************************************************