Merge "cleanup of BuildAndSendUESetReq"
[o-du/l2.git] / src / 5gnrmac / mac.h
index f2b60ed..6af82e3 100644 (file)
 #include "tfu.x"           /* RGU Interface includes */
 #include "lrg.x"
 
-#define MAX_SLOT_SUPPORTED 10 /* numerology 0 15Khz */
+#define MAX_SLOT_SUPPORTED    10 /* numerology 0 15Khz */
+#define MAX_ZERO_CORR_CFG_IDX 16 /* max zero correlation config index */
+#define SI_RNTI 0xFFFF
+#define P_RNTI 0xFFFE
+
+#define MAC_LCID_CCCH              0
+#define MAC_DEDLC_MIN_LCID         1
+#define MAC_DEDLC_MAX_LCID         32
+#define MAC_LCID_RESERVED_MIN      33
+#define MAC_LCID_RESERVED_MAX      51
+#define MAC_LCID_CCCH_48BIT        52
+#define MAC_LCID_BIT_RATE_QUERY    53
+#define MAC_LCID_MULT_PHR_FOUR_OCT 54
+#define MAC_LCID_CFG_GRANT_CFM     55
+#define MAC_LCID_MULT_PHR_ONE_OCT  56
+#define MAC_LCID_SINGLE_PHR        57
+#define MAC_LCID_CRNTI             58
+#define MAC_LCID_SHORT_TRUNC_BSR   59
+#define MAC_LCID_LONG_TRUNC_BSR    60
+#define MAC_LCID_SHORT_BSR         61
+#define MAC_LCID_LONG_BSR          62
+#define MAC_LCID_PADDING           63
 
 typedef struct macDlSlot
 {
-   DlBrdcstAlloc cellBroadcastInfo;
-
+   DlAlloc dlInfo;
 }MacDlSlot;
 
+typedef struct macUlSlot
+{
+   UlSchInfo    ulCellInfo;
+}MacUlSlot;
+
 typedef struct macCellCb
 {
+   uint16_t   cellId;
+   RachIndInfo raCb;
    MacDlSlot  dlSlot[MAX_SLOT_SUPPORTED];
+   MacUlSlot  ulSlot[MAX_SLOT_SUPPORTED];
 }MacCellCb;
 
 typedef struct macCb
 {
+   Inst       macInst;
    MacCellCb  *macCell;
 }MacCb;
 
 /* global variable */
-MacCb macCb;
+EXTERN MacCb macCb;
+void fillMacToSchPst(Pst *pst);
+void fillRarPdu(RarInfo *rarInfo);
+int unpackRxData(SlotIndInfo timingInfo, RxDataIndPdu *rxDataIndPdu);
 
 #endif
 /**********************************************************************