X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_cfg.h;h=14007fdfba18ef6899cc1c4accf58af49b53539c;hb=9bfd39713f94e019675b4a255855177462b39bbd;hp=3876523e72ae014901843074ee3aff3771b6383c;hpb=dbd113538c5ed4ee5499902ce6e8bea0eb2b9db1;p=o-du%2Fl2.git diff --git a/src/du_app/du_cfg.h b/src/du_app/du_cfg.h index 3876523e7..14007fdfb 100644 --- a/src/du_app/du_cfg.h +++ b/src/du_app/du_cfg.h @@ -24,6 +24,8 @@ #endif /* MACROS */ +#define GNB_ID 1 /* As per 38.423,Sec 9.2.2.1, gnbId range b/w 0 to 4294967295 */ + #define DU_INST 0 #define DU_ID 1 @@ -46,7 +48,6 @@ //TODO: while testing for TDD, Mu1 and 100 MHz, this flag must be enabled #ifdef NR_TDD #define DUPLEX_MODE DUP_MODE_TDD -#define NR_NUMEROLOGY 1 #define NR_DL_ARFCN 623400 #define NR_UL_ARFCN 623400 #define NR_FREQ_BAND 78 @@ -54,7 +55,6 @@ #define NR_BANDWIDTH BANDWIDTH_100MHZ #else #define DUPLEX_MODE DUP_MODE_FDD -#define NR_NUMEROLOGY 0 #define NR_DL_ARFCN 428000 #define NR_UL_ARFCN 390000 #define NR_FREQ_BAND 1 @@ -76,7 +76,8 @@ #define SUL_ARFCN 100 #define SUL_BAND 2 -#define TIME_CFG 0 +#define TIME_CFG 4 +#define MEAS_TIMING_ARFCN 630432 #define CARRIER_IDX 1 #define NUM_TX_ANT 2 #define NUM_RX_ANT 2 @@ -253,7 +254,7 @@ #define PHR_PROHIBHIT_TMR 0 #define PHR_PWR_FACTOR_CHANGE 3 #define PHR_MODE_OTHER_CG 0 -#define SN_FIELD_LEN 1 +#define SN_FIELD_LEN_12BIT 0 /*As per Spec 38.331, The network configures only value size12 in SN-FieldLengthAM for SRB */ #define T_POLL_RETRANSMIT 8 /* Enum for 45ms */ #define T_POLL_RETRANSMIT_VAL 45 /* Value in ms */ #define POLL_PDU 0 /* Enum for 4 pdus */ @@ -316,6 +317,13 @@ #define DRX_SLOT_OFFSET 0 #endif +/* In case of initial configuration we are supporting only 2 measurement + * information RRU.PrbTotDl and RRU.PrbTotUl. + * In case of configuration modification we are supporting 3 measurement + * information RRU.PrbTotDl, RRU.PrbTotUl and UECNTX.RelReq */ +#define NUM_OF_MEASUREMENT_INFO_SUPPORTED(_configType) \ + ((_configType == CONFIG_ADD) ? 2 :3) + typedef enum { GNBDU, @@ -679,17 +687,11 @@ typedef struct epIpAddrPort char port[2]; }EpIpAddrPort; -typedef struct f1TaiSliceSuppLst -{ - uint8_t numSupportedSlices; - Snssai **snssai; -}F1TaiSliceSuppLst; - typedef struct f1SrvdPlmn { Plmn plmn; Plmn extPlmn; /* Extended available PLMN list */ - F1TaiSliceSuppLst taiSliceSuppLst; + SupportedSliceList taiSliceSuppLst; }F1SrvdPlmn; typedef struct f1BrdcstPlmnInfo @@ -714,7 +716,7 @@ typedef struct f1DuCellInfo uint16_t tac; /* tracking area code */ uint16_t epsTac; /* Configured EPS TAC */ NrModeInfo f1Mode; /* NR mode info : FDD/TDD */ - uint8_t measTimeCfg; /* Measurement timing configuration */ + uint8_t measTimeCfgDuration; /* Measurement timing configuration */ F1CellDir cellDir; /* Cell Direction */ F1CellType cellType; /* Cell Type */ F1BrdcstPlmnInfo brdcstPlmnInfo[MAX_BPLMN_NRCELL_MINUS_1]; /* Broadcast PLMN Identity Info List */ @@ -1240,17 +1242,33 @@ typedef struct sib1Params long cellResvdForOpUse; long connEstFailCnt; long connEstFailOffValidity; + long connEstFailOffset; SiSchedInfo siSchedInfo; SrvCellCfgCommSib srvCellCfgCommSib; }Sib1Params; -typedef struct duCfgParams +typedef struct threadInfo { + SSTskId duAppSTskId; + SSTskId egtpSTskId; + SSTskId sctpSTskId; + SSTskId rlcUlSTskId; + SSTskId rlcMacSTskId; + SSTskId schSTskId; + SSTskId lwrMacSTskId; + SSTskId phyStubSlotIndSTskId; +}ThreadInfo; + +typedef struct duCfgParams +{ + uint32_t duId; + char *duName; + uint16_t maxNumDrb; + uint16_t maxSupportedUes; + uint32_t maxUe; + ThreadInfo threadInfo; SctpParams sctpParams; /* SCTP Params */ F1EgtpParams egtpParams; /* EGTP Params */ - uint32_t maxUe; - uint32_t duId; - uint8_t duName[CU_DU_NAME_LEN_MAX]; SchedulerCfg schedCfg; F1DuSrvdCellInfo srvdCellLst[MAX_NUM_CELL]; /* Serving cell list *///TODO: this must be removed eventually F1RrcVersion rrcVersion; /* RRC version */ @@ -1260,15 +1278,6 @@ typedef struct duCfgParams MacSliceCfgReq tempSliceCfg; }DuCfgParams; -typedef struct f1SetupMsg -{ - uint8_t f1MsgReqBufSize; - char *f1MsgReqBuf; - uint8_t f1MsgRspBufSize; - char *f1MsgRspBuf; -}F1SetupMsg; - - #ifndef O1_ENABLE //RRM POLICY STRUCT @@ -1307,6 +1316,10 @@ DuCfgParams duCfgParam; uint8_t readClCfg(); uint8_t readCfg(); uint8_t duReadCfg(); +void printDuConfig(); + +uint8_t fillDuSrvdCellSysInfo(F1DuSysInfo *sysInfo); + uint16_t calcSliv(uint8_t startSymbol, uint8_t lengthSymbol); uint8_t cpyRrmPolicyInDuCfgParams(RrmPolicyList rrmPolicy[], uint8_t policyNum, MacSliceCfgReq *tempSliceCfg);