Replaced old SSI function with new macros jira id - ODUHIGH-212
[o-du/l2.git] / src / du_app / du_cfg.h
index 2a80460..8e11684 100644 (file)
 #ifndef __DU_CONFIG_H_
 #define __DU_CONFIG_H__
 
-#include "stdbool.h"
-#include "du_app_mac_inf.h"
-#include "du_log.h"
-#include "odu_common_codec.h"
-
 /* MACROS */
 #define DU_INST 0
 #define DU_ID 1
@@ -48,7 +43,8 @@
 #define PLMN_MNC1 8
 #define PLMN_MNC2 0
 #define PLMN_SIZE 3
-#define NR_ARFCN  2079427
+#define NR_DL_ARFCN 385627
+#define NR_UL_ARFCN 386687
 #define SUL_ARFCN 100
 #define NR_FREQ_BAND 257
 #define NR_FREQ_BAND_IND 78
@@ -80,6 +76,8 @@
 #define BANDWIDTH 20
 #define DMRS_TYPE_A_POS 2
 #define NUM_SYMBOLS_PER_SLOT 14       /* Number of symbols within a slot */
+#define CORESET0_END_PRB   48
+#define CORESET1_NUM_PRB   24
 
 /* MACRO defines for PRACH Configuration */
 #define PRACH_CONFIG_IDX   88
 #define PDCCH_SRCH_SPC_TWO_AGG_LVL8_CANDIDATE 2   /* Num of candidate at aggregation level 8 */
 #define PDCCH_SRCH_SPC_TWO_AGG_LVL16_CANDIDATE 1  /* Num of candidate at aggregation level 16 */
 #define PDCCH_SRCH_SPC_TWO_UE_SPEC_DCI_FORMAT  0  /* format 0-0 and 1-0 */
-#define PDCCH_FREQ_DOM_RSRC 255          /* Frequency domain Resource Value */
 #define PDCCH_SYMBOL_WITHIN_SLOT 128     /* Symbol within Slot Value */
 
 
 #define SIB1_VALUE_TAG 10
 
-/* MACRCO Ddefine for PDSCH Configuration */
+/* MACRO Ddefine for PDSCH Configuration */
 #define PDSCH_K0  0
 #define PDSCH_START_SYMBOL  2
 #define PDSCH_LENGTH_SYMBOL 12
 /* Macro definitions for F1 procedures */
 #define CU_DU_NAME_LEN_MAX 30      /* Max length of CU/DU name string */
 #define MAX_F1_CONNECTIONS 65536    /* Max num of F1 connections */
-#define DU_MAX_CELLS       1      /* Max num of cells served by gNB-DU */
-#define DU_MAX_UE          1      /* Maximum number of UE Ids */
 #define MAX_PLMN           6        /* Max num of broadcast PLMN ids */
 #define MAXNRARFCN         3279165  /* Maximum values of NRAFCN */
 #define MAXNRCELLBANDS     2       /* Maximum number of frequency bands */
@@ -812,7 +807,7 @@ typedef struct f1SetupReq
    uint32_t                transId;                       /* Uniquely identify transaction */
    uint32_t                duId;                          /* DU ID */ 
    char               duName[CU_DU_NAME_LEN_MAX];    /* DU name */
-   F1DuSrvdCellInfo   srvdCellLst[DU_MAX_CELLS];   /* Serving cell list */
+   F1DuSrvdCellInfo   srvdCellLst[MAX_NUM_CELL];   /* Serving cell list */
    F1RrcVersion       rrcVersion;                    /* RRC version */
 }F1SetupReq;
 
@@ -863,11 +858,11 @@ typedef struct f1ErrorInd
 typedef struct f1GnbDuCfgUpd
 {
    uint32_t                 transId;                             /* Uniquely identify transaction */
-   F1DuSrvdCellInfo    srvdCellLstAdd[DU_MAX_CELLS];      /* Served cell list to be added */
-   F1DuSrvdCellToDel   srvdCellLstMod[DU_MAX_CELLS];      /* Served cell list to be modified */
-   NrEcgi              srvdCellLstDel[DU_MAX_CELLS];      /* Served cell list to be deleted */
-   F1CellStatus        cellStatus[DU_MAX_CELLS];          /* Cell status */
-   F1DedSIDelUE        ueLst[DU_MAX_UE];                     /* Ue list that requires dedicated SI delivery */
+   F1DuSrvdCellInfo    srvdCellLstAdd[MAX_NUM_CELL];      /* Served cell list to be added */
+   F1DuSrvdCellToDel   srvdCellLstMod[MAX_NUM_CELL];      /* Served cell list to be modified */
+   NrEcgi              srvdCellLstDel[MAX_NUM_CELL];      /* Served cell list to be deleted */
+   F1CellStatus        cellStatus[MAX_NUM_CELL];          /* Cell status */
+   F1DedSIDelUE        ueLst[MAX_NUM_UE];                     /* Ue list that requires dedicated SI delivery */
    uint32_t            gnbDuId;
    F1TnlAssocToRmv     gnbDuTnlAssocRmv[MAX_TNL_ASSOC];  /* TNL Assoc list to remove */ 
 }F1GnbDuCfgUpd;
@@ -875,9 +870,9 @@ typedef struct f1GnbDuCfgUpd
 typedef struct f1GnbDuCfgUpdAck
 {
    uint32_t           transId;                      /* Uniquely identify transaction */
-   F1CuActCellInfo    cellLstAct[DU_MAX_CELLS];    /* List of cells to be activated */   
+   F1CuActCellInfo    cellLstAct[MAX_NUM_CELL];    /* List of cells to be activated */   
    F1CritDiagnostic   critDiagnostic;               /* Critical diagnostics */
-   NrEcgi             cellLstDeact[DU_MAX_CELLS]; /* List of cells to be deactivated */
+   NrEcgi             cellLstDeact[MAX_NUM_CELL]; /* List of cells to be deactivated */
 }F1GnbDuCfgUpdAck;
 
 typedef struct f1GnbDuCfgUpdFail
@@ -889,12 +884,12 @@ typedef struct f1GnbDuCfgUpdFail
 typedef struct f1GnbCuCfgUpd
 {
    uint32_t            transId;                            /* Uniquely identifies transaction */
-   F1CuActCellInfo     cellLstAct[DU_MAX_CELLS];         /* List of cells to be activated */
-   NrEcgi              cellLstDeact[DU_MAX_CELLS];       /* List of cells to be deactivated */
+   F1CuActCellInfo     cellLstAct[MAX_NUM_CELL];         /* List of cells to be activated */
+   NrEcgi              cellLstDeact[MAX_NUM_CELL];       /* List of cells to be deactivated */
    F1TnlAssoc          assocLstAdd[MAX_TNL_ASSOC];     /* List of TNL assocs to be added */
    F1TnlAssoc          assocLstUpd[MAX_TNL_ASSOC];     /* List of TNL assocs to be updated */
    F1TnlAssocToRmv     assocLstRmv[MAX_TNL_ASSOC];     /* List of TNL assocs to be removed */
-   F1CellBarred        cellToBarList[DU_MAX_CELLS];      /* List of Cells to be barred */
+   F1CellBarred        cellToBarList[MAX_NUM_CELL];      /* List of Cells to be barred */
    F1ProtectEUTRARsrc  protectEutraRsrcList[MAXCELLINENB]; /* List of Protected EUTRA resources */
 }F1GnbCuCfgUpd;
 
@@ -903,7 +898,7 @@ typedef struct f1GnbCuCfgUpd
 typedef struct f1GnbCuCfgUpdAck
 {
    uint32_t              transId;                              /* Uniquely identify transaction */
-   F1ActCellFail         actCellFailList[DU_MAX_CELLS];      /* Cells failed to be activated list */
+   F1ActCellFail         actCellFailList[MAX_NUM_CELL];      /* Cells failed to be activated list */
    F1CritDiagnostic      critDiagnostic;                       /* Critical diagnostics */
    F1TnlAssocAddr        assocSetupList[MAX_TNL_ASSOC];     /* TNL Assoc Setup list */
    F1TnlAssocSetupFail   assocSetupFailList[MAX_TNL_ASSOC]; /* TNL Assoc Setup fail list */
@@ -981,11 +976,11 @@ typedef struct f1Ipaddr
 typedef struct sctpParams
 {
    F1IpAddr  duIpAddr;
-   U16       duPort[MAX_DU_PORT];
+   uint16_t       duPort[MAX_DU_PORT];
    F1IpAddr  cuIpAddr;
-   U16       cuPort;
+   uint16_t       cuPort;
    F1IpAddr  ricIpAddr;
-   U16       ricPort;
+   uint16_t       ricPort;
 }SctpParams;
 
 typedef struct f1EgtpParams
@@ -1186,7 +1181,7 @@ typedef struct duCfgParams
    uint32_t           duId;
    uint8_t            duName[CU_DU_NAME_LEN_MAX];
    SchedulerCfg       schedCfg;
-   F1DuSrvdCellInfo   srvdCellLst[DU_MAX_CELLS];  /* Serving cell list *///TODO: this must be removed eventually
+   F1DuSrvdCellInfo   srvdCellLst[MAX_NUM_CELL];  /* Serving cell list *///TODO: this must be removed eventually
    F1RrcVersion       rrcVersion;                 /* RRC version */
    MacCellCfg         macCellCfg;                    /* MAC cell configuration */
    MibParams          mibParams;                  /* MIB Params */
@@ -1195,10 +1190,9 @@ typedef struct duCfgParams
 
 /*function declarations */
 void FillSlotConfig();
-S16 readClCfg();
-S16 readCfg();
-S16 duReadCfg(); 
-S16 bitStringToInt(BIT_STRING_t *bitString, uint16_t *val);
+uint8_t readClCfg();
+uint8_t readCfg();
+uint8_t duReadCfg(); 
 uint16_t calcSliv(uint8_t startSymbol, uint8_t lengthSymbol);
 
 #endif /* __DU_CONFIG_H__ */