[Epic-ID: ODUHIGH-406][Task-ID: ODUHIGH-423]UE context creation at MAC/SCH in Target DU
[o-du/l2.git] / src / 5gnrsch / sch.h
index 5c46b6e..865bc0e 100644 (file)
@@ -74,7 +74,8 @@ typedef enum
 typedef enum
 {
    SCH_UE_STATE_INACTIVE,
-   SCH_UE_STATE_ACTIVE
+   SCH_UE_STATE_ACTIVE,
+   SCH_UE_HANDIN_IN_PROGRESS
 }SchUeState;
 
 typedef enum
@@ -219,6 +220,7 @@ typedef struct schUlCb
 typedef struct schUeCfgCb
 {
    uint16_t        cellId;
+   uint8_t         duUeF1apId;
    uint16_t        crnti;
    bool macCellGrpCfgPres;
    SchMacCellGrpCfg   macCellGrpCfg;
@@ -337,6 +339,7 @@ typedef struct schCellCb
    uint8_t       ssbStartSymbArr[SCH_MAX_SSB_BEAM]; /*!<start symbol per SSB beam */
    SchRaReq      *raReq[MAX_NUM_UE];                /*!< Pending RA request */
    SchRaCb       raCb[MAX_NUM_UE];                  /*!< RA Cb */
+   SchUeCb       hoUeCb[MAX_NUM_UE];                /*!<List of UE being handed-in to this DU */
    uint16_t      numActvUe;                         /*!<Number of active UEs */
    uint32_t      actvUeBitMap;                      /*!<Bit map to find active UEs */
    uint32_t      boIndBitMap;                       /*!<Bit map to indicate UEs that have recevied BO */
@@ -397,7 +400,7 @@ PduTxOccsaion schCheckSsbOcc(SchCellCb *cell, SlotTimingInfo slotTime);
 PduTxOccsaion schCheckSib1Occ(SchCellCb *cell, SlotTimingInfo slotTime);
 uint8_t schBroadcastSsbAlloc(SchCellCb *cell, SlotTimingInfo slotTime, DlBrdcstAlloc *dlBrdcstAlloc);
 uint8_t schBroadcastSib1Alloc(SchCellCb *cell, SlotTimingInfo slotTime, DlBrdcstAlloc *dlBrdcstAlloc);
-bool schProcessRaReq(SchCellCb *cellCb, SlotTimingInfo currTime, uint8_t ueId);
+bool schProcessRaReq(Inst schInst, SchCellCb *cellCb, SlotTimingInfo currTime, uint8_t ueId);
 bool schProcessMsg4Req(SchCellCb *cell, SlotTimingInfo currTime, uint8_t ueId);
 uint8_t schFillRar(SchCellCb *cell, SlotTimingInfo rarTime, uint16_t ueId, RarAlloc *rarAlloc, uint8_t k0Index);
 uint8_t schDlRsrcAllocDlMsg(SchCellCb *cell, SlotTimingInfo slotTime, uint16_t crnti,
@@ -436,6 +439,8 @@ void updateBsrAndLcList(CmLListCp *lcLL, BsrInfo *bsrInfo, uint8_t status);
 /*Paging Functions*/
 void schProcPagingCfg(SchCellCb *cell);
 void schCfgPdcchMonOccOfPO(SchCellCb *cell);
+void schIncrSlot(SlotTimingInfo *timingInfo, uint8_t incr, uint16_t numSlotsPerRF);
+
 /**********************************************************************
   End of file
  **********************************************************************/