X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2F5gnrmac%2Fmac.h;h=296c20e45a7d571c19c27f46927581dadb287ef0;hb=0382686ae884abc5eca5a6706803bcb8cd9069c7;hp=fb78f8073f482a65ceb426e0b6535cf559ea817c;hpb=1fc18fe484bf8a324ed3ed1d04d9617869817f22;p=o-du%2Fl2.git diff --git a/src/5gnrmac/mac.h b/src/5gnrmac/mac.h index fb78f8073..296c20e45 100644 --- a/src/5gnrmac/mac.h +++ b/src/5gnrmac/mac.h @@ -90,6 +90,21 @@ typedef enum MAC_LC_STATE_ACTIVE }MacLcState; +typedef struct dlTbInfo +{ + SlotTimingInfo txTime; + uint16_t tbSize; + uint8_t *tb; +}DlTbInfo; + +/* DL HARQ Process Info */ +typedef struct dlHarqProcCb +{ + uint8_t procId; /* HARQ Process Id */ + uint8_t numTb; /* Number of TB */ + DlTbInfo tbInfo[MAX_NUM_TB_PER_UE]; /* TB information */ +}DlHarqProcCb; + typedef struct macDlSlot { DlSchedInfo dlInfo; @@ -108,8 +123,7 @@ typedef struct macCbInfo uint8_t msg3Pdu[6]; /* used as CRI value during muxing */ uint8_t *msg4Pdu; /* storing DL-CCCH Ind Pdu */ uint16_t msg4PduLen; /* storing DL-CCCH Ind Pdu Len */ - uint8_t *msg4TxPdu; /* muxed Pdu used for re-transmission */ - uint16_t msg4TbSize; /* size required for msg4TxPdu */ + DlHarqProcCb msg4HqInfo; /* HARQ process info for msg 4 */ }MacRaCbInfo; typedef struct macCe @@ -138,12 +152,6 @@ typedef struct macDlData MacDlInfo pduInfo[MAX_MAC_DL_PDU]; }MacDlData; -/* HARQ Process Info */ -typedef struct dlHarqProcCb -{ - uint8_t procId; /* HARQ Process Id */ -}DlHarqProcCb; - /* DL HARQ entity */ typedef struct dlHarqEnt { @@ -221,6 +229,7 @@ typedef struct macUeCb struct macCellCb { uint16_t cellId; + uint16_t numOfSlots; CellState state; uint16_t crntiMap; MacRaCbInfo macRaCb[MAX_NUM_UE]; @@ -228,6 +237,7 @@ struct macCellCb MacUlSlot ulSlot[MAX_SLOTS]; uint16_t numActvUe; MacUeCfg *ueCfgTmpData[MAX_NUM_UE]; + MacUeRecfg *ueRecfgTmpData[MAX_NUM_UE]; MacUeCb ueCb[MAX_NUM_UE]; MacCellCfg macCellCfg; SlotTimingInfo currTime; @@ -264,6 +274,7 @@ uint8_t sendSchedRptToRlc(DlSchedInfo dlInfo, SlotTimingInfo slotInfo, uint8_t u uint8_t macProcLongBsr(uint16_t cellId, uint16_t crnti,uint8_t numLcg,\ DataVolInfo dataVolInfo[MAX_NUM_LOGICAL_CHANNEL_GROUPS]); void freeMacSliceCfgReq(MacSliceCfgReq *cfgReq,Pst *pst); +void deleteMacRaCb(uint16_t cellIdx, MacUeCb *ueCb); #endif /********************************************************************** End of file