[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-414]Storing UE context per Cell per DU at...
[o-du/l2.git] / src / du_app / du_mgr.h
index 0cd9f86..2c4d195 100644 (file)
 #define DU_SET_ZERO(_buf, _size)   \
    memset((_buf), 0, _size);
 
+typedef enum
+{
+   SLICE_INFO_NOT_AVAILABLE,
+   SLICE_CONFIGURED,
+   SLICE_RECONFIGURED
+}SliceCfgState;
+
 typedef enum
 {
    CELL_OUT_OF_SERVICE,
@@ -110,7 +117,7 @@ typedef struct upTnlCfg
 {
    ConfigType configType;
    uint8_t cellId;
-   uint8_t ueIdx;
+   uint8_t ueId;
    uint8_t drbId;
    GtpTnlCfg *tnlCfg1; /* Tunnel 1 */
    GtpTnlCfg *tnlCfg2; /* Tunnel 2 */
@@ -127,6 +134,8 @@ typedef struct duUeCfg
    AmbrCfg *ambrCfg;
    uint8_t numDrb;
    UpTnlCfg upTnlInfo[MAX_NUM_DRB];  /* User plane TNL Info*/
+   uint8_t numDrbSetupMod;        /*No. of DRB Added during Modification*/
+   MacUeCfg copyOfmacUeCfg;
 }DuUeCfg;
 
 typedef struct f1UeContextSetup
@@ -166,7 +175,6 @@ typedef struct duCellCb
    /* pointer to store the address of macCellCfg params used to send du-app to MAC */
    MacCellCfg     *duMacCellCfg;
    CellStatus     cellStatus;             /* Cell status */
-   uint32_t       gnbDuUeF1apIdGenerator; /* Generating Du Ue F1ap Id */
    uint32_t       numActvUes;             /* Total Active UEs */
    DuUeCb         ueCb[MAX_NUM_UE];       /* UE CONTEXT */
 }DuCellCb;
@@ -210,11 +218,14 @@ typedef struct duCb
    DuCellCb*     cfgCellLst[MAX_NUM_CELL];  /* List of cells at DU APP of type DuCellCb */
    uint8_t       numActvCells;              /* Number of active cells */
    DuCellCb*     actvCellLst[MAX_NUM_CELL]; /* List of cells activated/to be activated of type DuCellCb */
+   uint32_t      gnbDuUeF1apIdGenerator;    /* Generating Du Ue F1ap Id */
    uint32_t      numUe;                     /* current number of UEs */
    UeCcchCtxt    ueCcchCtxt[MAX_NUM_UE];    /* mapping of gnbDuUeF1apId to CRNTI required for CCCH processing*/
-   uint8_t       numDrb;                    /* current number of DRbs*/
-   UpTnlCfg*     upTnlCfg[MAX_NUM_DRB];     /* tunnel info for every Drb */
+   uint8_t       numTeId;                    /* current number of TEIDs configured in the system*/
+   UpTnlCfg*     upTnlCfg[MAX_TEID];     /* tunnel info for every Drb */
    CmLListCp     reservedF1apPduList;       /*storing F1AP pdu infomation and transId */
+   SliceCfgState sliceState;
+   F1SetupMsg    f1SetupReqAndRspMsg;
 }DuCb;