[Epic-ID: ODUHIGH-][Task-ID: ODUHIGH-]WG8 alignment | Cell conf
[o-du/l2.git] / src / cm / common_def.h
index ab72caa..4c0a55a 100644 (file)
 #define MAX_NUM_LC   MAX_DRB_LCID + 1   /*Spec 38.331: Sec 6.4: maxLC-ID Keyword*/
 #define MAX_NUM_SRB  3    /* Max. no of Srbs */
 #define MAX_NUM_DRB  29   /* spec 38.331, maxDRB */
+#define MAX_NUM_SSB  64   /* spec 28.331, maxNrofSSBs */
+#define MAX_NUM_HARQ_PROC 16 /* spec 38.331, nrofHARQ-ProcessesForPDSCH */
+#define MAX_NUM_TB_PER_UE 2  /* spec 38.331, maxNrofCodeWordsScheduledByDCI */
 
 /* 5G ORAN phy delay */
+#ifdef NR_TDD
+#define PHY_DELTA_DL 2
+#define PHY_DELTA_UL 0
+#else
 #define PHY_DELTA_DL 1
 #define PHY_DELTA_UL 0
+#endif
 
  /* SELECTORS */ 
 #define ODU_SELECTOR_LC 0
 
 #ifdef NR_TDD
 /* Maximum slots for max periodicity and highest numerology is 320.
- * However, aligning to fapi_interface.h, setting this macro to 160 */
-#define MAX_TDD_PERIODICITY_SLOTS 160 
+ * However, aligning to fapi_interface.h, setting this macro to 160.
+ * TODO : To support 160, FAPI_MAX_NUM_TLVS_CONFIG in fapi_interface.h
+ * of Intel L1 must be incremented to a higher number */
+#define MAX_TDD_PERIODICITY_SLOTS 10 
 #endif
 
 #define GET_UE_ID( _crnti,_ueId)           \
@@ -230,13 +240,6 @@ typedef enum
 }ConfigType;
 
 #ifdef NR_TDD
-typedef enum
-{
-   DL_SLOT,
-   UL_SLOT,
-   FLEXI_SLOT
-}SlotConfig;
-
 typedef enum
 {
    TX_PRDCTY_MS_0P5,
@@ -288,7 +291,9 @@ typedef enum
 {
    SEARCH,
    CREATE,
-   DELETE
+   DELETE,
+   PRINT,
+   TRAVERSE_ALL
 }ActionTypeLL;
 
 typedef struct slotTimingInfo
@@ -318,9 +323,11 @@ typedef struct oduCellId
 #ifdef NR_TDD
 typedef struct tddCfg
 {
-   bool               pres;
-   DlUlTxPeriodicity  tddPeriod;      /* DL UL Transmission periodicity */
-   SlotConfig         slotCfg[MAX_TDD_PERIODICITY_SLOTS][MAX_SYMB_PER_SLOT]; 
+   DlUlTxPeriodicity  tddPeriod;     /*DL UL Transmission periodicity */
+   uint8_t            nrOfDlSlots;   /*No. of consecultive full DL slots at beginning of DL-UL pattern*/
+   uint8_t            nrOfDlSymbols; /*No. of consecultive DL symbol at beginning of slot after last full DL slot*/ 
+   uint8_t            nrOfUlSlots;   /*No. of consecutive full UL slots at the end of each DL-UL pattern*/
+   uint8_t            nrOfUlSymbols; /*No. of consecutive UL symbols in the end of the slot before the first full UL slot*/
 }TDDCfg;
 #endif
 
@@ -332,15 +339,17 @@ void fillCoresetFeqDomAllocMap(uint16_t startPrb, uint16_t prbSize, uint8_t *fre
 void oduCpyFixBufToMsg(uint8_t *fixBuf, Buffer *mBuf, uint16_t len);
 uint8_t buildPlmnId(Plmn plmn, uint8_t *buf);
 uint16_t convertScsEnumValToScsVal(uint8_t scsEnumValue);
+uint8_t convertScsValToScsEnum(uint32_t num);
+uint8_t convertScsPeriodicityToEnum(uint32_t num);
 
-uint8_t SGetSBufNewForDebug(char *file, char *func, char *line, Region region, Pool pool, Data **ptr, Size size);
-uint8_t SPutSBufNewForDebug(char *file, char *func, char *line, Region region, Pool pool, Data *ptr, Size size);
-uint8_t SGetStaticBufNewForDebug(char *file, char *func, char *line, \
+uint8_t SGetSBufNewForDebug(char *file, const char *func, int line, Region region, Pool pool, Data **ptr, Size size);
+uint8_t SPutSBufNewForDebug(char *file, const char *func, int line, Region region, Pool pool, Data *ptr, Size size);
+uint8_t SGetStaticBufNewForDebug(char *file, const char *func, int line, \
 Region region, Pool pool, Data **ptr, Size size, uint8_t memType);
-uint8_t SPutStaticBufNewForDebug(char *file, char *func, char *line, \
+uint8_t SPutStaticBufNewForDebug(char *file, const char *func, int line, \
 Region region, Pool pool, Data *ptr, Size size, uint8_t memType);
 uint8_t countSetBits(uint32_t num);
-
+uint32_t convertArfcnToFreqKhz(uint32_t arfcn);
 #endif
 
 /**********************************************************************