X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrsch%2Fsch.h;h=5c46b6e51546da159f6dd21ec67a0cda0557b0f4;hb=a5f35b2204dd87ebe347f11282000852b55810ad;hp=544e3250dfcae2201a1cb7d883bcc3d1c6276299;hpb=e6391c742645c17e4494d52f94fdeb66cfc99d1e;p=o-du%2Fl2.git diff --git a/src/5gnrsch/sch.h b/src/5gnrsch/sch.h index 544e3250d..5c46b6e51 100644 --- a/src/5gnrsch/sch.h +++ b/src/5gnrsch/sch.h @@ -96,6 +96,7 @@ typedef enum CREATE, DELETE }ActionTypeLcLL; + /** * @brief * Structure holding LTE MAC's General Configuration information. @@ -143,14 +144,15 @@ typedef struct schDlSlotInfo uint8_t pdcchUe; /*!< UE for which PDCCH is scheduled in this slot */ uint8_t pdschUe; /*!< UE for which PDSCH is scheduled in this slot */ RarAlloc *rarAlloc[MAX_NUM_UE]; /*!< RAR allocation per UE*/ - DlMsgAlloc *dlMsgAlloc; /*!< Dl msg allocation */ + DciInfo *ulGrant; + DlMsgAlloc *dlMsgAlloc[MAX_NUM_UE]; /*!< Dl msg allocation per UE*/ }SchDlSlotInfo; typedef struct schRaCb { bool msg4recvd; - DlMsgInfo dlMsgInfo; uint16_t tcrnti; + uint16_t dlMsgPduLen; }SchRaCb; /** @@ -265,12 +267,13 @@ typedef struct schLcPrbEstimate */ typedef struct schUeCb { - uint16_t ueIdx; + uint16_t ueId; uint16_t crnti; SchUeCfgCb ueCfg; SchUeState state; SchCellCb *cellCb; bool srRcvd; + bool bsrRcvd; BsrInfo bsrInfo[MAX_NUM_LOGICAL_CHANNEL_GROUPS]; SchUlCb ulInfo; SchDlCb dlInfo; @@ -290,6 +293,31 @@ typedef struct schRaReq SlotTimingInfo winEndTime; }SchRaReq; +typedef struct schPageInfo +{ + uint8_t pf; /*Value of Paging Frame received from DUAPP*/ + uint8_t i_s; /*Value of Paging Occ Index received from DUAPP*/ + SlotTimingInfo TxTime; /*Start Paging window*/ + uint8_t crntSsbIdx; /*Counts the slot till totalSSB is receached*/ + uint8_t mcs; + uint8_t nPRB; + uint16_t msgLen; + uint8_t *pagePdu; +}SchPageInfo; + +typedef struct schPagingOcc +{ + uint8_t frameOffset; + uint8_t pagingOccSlot; +}SchPagingOcc; + +typedef struct schPageCb +{ + CmLListCp pageReqInfoRecord[MAX_SFN]; /*List of Page Records received which are stored per sfn*/ + SchPagingOcc pagMonOcc[MAX_PO_PER_PF]; /*Paging Occasion Slot/FrameOffset are stored*/ + SchPageInfo currPageInfo; /*Page Req which is being currently processed */ +}SchPageCb; + /** * @brief * Cell Control block per cell. @@ -314,6 +342,7 @@ typedef struct schCellCb uint32_t boIndBitMap; /*!