X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcm%2Fdu_app_mac_inf.h;h=0aa7055529695e177e38fd14daa12cb695f91699;hb=498307aa9dc40cd0fe5b659a07553caf8789f141;hp=3514714606af0cd378d385da7026f766d448c143;hpb=ce91d5cd5af28b166b1147bbdca029712a1d55de;p=o-du%2Fl2.git diff --git a/src/cm/du_app_mac_inf.h b/src/cm/du_app_mac_inf.h index 351471460..0aa705552 100644 --- a/src/cm/du_app_mac_inf.h +++ b/src/cm/du_app_mac_inf.h @@ -26,18 +26,14 @@ #define NUM_SSB 1 /* max value is 64 */ #define SSB_MASK_SIZE 1 /* SSB mask size is 32bit for sub6 */ #define SIB1_REPETITION_PERIOD 20 -#define CORESET_0_INDEX 0 #define CORESET_1_INDEX 1 #define CORESET_2_INDEX 2 #define CORESET_3_INDEX 3 #define CORESET_4_INDEX 4 #define SEARCHSPACE_0_INDEX 0 -#define SEARCHSPACE_1_INDEX 1 #define SEARCHSPACE_2_INDEX 2 #define SEARCHSPACE_3_INDEX 3 #define SEARCHSPACE_4_INDEX 4 -#define SS_MONITORING_SLOT_SL1 0 /* all slots */ -#define SS_MONITORING_SYMBOL 0x2000; /* symbol-0, set 14th bit */ /* Macro for Ue Context */ #define MAX_NUM_SR_CFG_PER_CELL_GRP 8 /* Max number of scheduling request config per cell group */ @@ -92,6 +88,10 @@ #define EVENT_MAC_STATISTICS_REQ 229 #define EVENT_MAC_STATISTICS_RSP 230 #define EVENT_MAC_STATISTICS_IND 231 +#define EVENT_MAC_STATS_DELETE_REQ 232 +#define EVENT_MAC_STATS_DELETE_RSP 233 +#define EVENT_MAC_STATISTICS_MODIFY_REQ 234 +#define EVENT_MAC_STATISTICS_MODIFY_RSP 235 #define BSR_PERIODIC_TIMER_SF_10 10 #define BSR_RETX_TIMER_SF_320 320 @@ -101,7 +101,7 @@ #define MAX_PLMN 2 /********************* Global Variable ********************/ -uint64_t ueBitMapPerCell[MAX_NUM_CELL]; /* Bit Map to store used/free UE-IDX per Cell */ +extern uint64_t ueBitMapPerCell[MAX_NUM_CELL]; /* Bit Map to store used/free UE-IDX per Cell */ /********************* Interface structure definition ********************/ typedef enum @@ -360,22 +360,22 @@ typedef enum typedef enum { - SLOTPERIODICITYANDOFFSET_PR_SL1 = 1, - SLOTPERIODICITYANDOFFSET_PR_SL2, - SLOTPERIODICITYANDOFFSET_PR_SL4, - SLOTPERIODICITYANDOFFSET_PR_SL5, - SLOTPERIODICITYANDOFFSET_PR_SL8, - SLOTPERIODICITYANDOFFSET_PR_SL10, - SLOTPERIODICITYANDOFFSET_PR_SL16, - SLOTPERIODICITYANDOFFSET_PR_SL20, - SLOTPERIODICITYANDOFFSET_PR_SL40, - SLOTPERIODICITYANDOFFSET_PR_SL80, - SLOTPERIODICITYANDOFFSET_PR_SL160, - SLOTPERIODICITYANDOFFSET_PR_SL320, - SLOTPERIODICITYANDOFFSET_PR_SL640, - SLOTPERIODICITYANDOFFSET_PR_SL1280, - SLOTPERIODICITYANDOFFSET_PR_SL2560 -}MSlotPeriodAndOffset; + SLOTPERIODICITY_PR_SL1 = 1, + SLOTPERIODICITY_PR_SL2, + SLOTPERIODICITY_PR_SL4, + SLOTPERIODICITY_PR_SL5, + SLOTPERIODICITY_PR_SL8, + SLOTPERIODICITY_PR_SL10, + SLOTPERIODICITY_PR_SL16, + SLOTPERIODICITY_PR_SL20, + SLOTPERIODICITY_PR_SL40, + SLOTPERIODICITY_PR_SL80, + SLOTPERIODICITY_PR_SL160, + SLOTPERIODICITY_PR_SL320, + SLOTPERIODICITY_PR_SL640, + SLOTPERIODICITY_PR_SL1280, + SLOTPERIODICITY_PR_SL2560 +}MSlotPeriodicity; typedef enum { @@ -645,8 +645,7 @@ typedef enum typedef struct plmnInfoList { Plmn plmn; - uint8_t numSupportedSlice; /* Total slice supporting */ - Snssai **snssai; /* List of supporting snssai*/ + SupportedSliceList suppSliceList; }PlmnInfoList; typedef struct schPageCfg @@ -876,7 +875,7 @@ typedef struct beamformingConf typedef struct csiRsCfg { - uint8_t *csiFreqDomainAlloc; + uint8_t *csiFreqDomainAlloc; uint8_t csiNrofPorts; uint8_t csirsfirstOFDMSymbolInTimeDomain; uint8_t csirsfirstOFDMSymbolInTimeDomain2; @@ -894,7 +893,7 @@ typedef struct macCellCfg CarrierCfg carrCfg; /* Carrier configuration */ CellCfg cellCfg; /* Cell Configuration*/ SsbCfg ssbCfg; /* SSB configuration */ - CsiRsCfg csiRsCfg; /*Reference: 38.331 CSI-MeasConfig*/ + CsiRsCfg csiRsCfg; /*Reference: 38.331 CSI-RS-ResourceMapping */ PrachCfg prachCfg; /* PRACH Configuration */ #ifdef NR_TDD TDDCfg tddCfg; /* TDD periodicity and slot configuration */ @@ -1006,6 +1005,12 @@ typedef struct controlRsrcSet uint16_t dmrsScramblingId; }ControlRsrcSet; +typedef struct mSlotPeriodAndOffset +{ + MSlotPeriodicity mSlotPeriodicity; + uint16_t mSlotOffset; +}MSlotPeriodAndOffset; + /* Search Space info */ typedef struct searchSpace { @@ -1899,6 +1904,32 @@ typedef struct macStatsInd MacStats measuredStatsList[MAX_NUM_STATS]; }MacStatsInd; +typedef struct macStatsDeleteReq +{ + uint64_t subscriptionId; + uint8_t numStatsGroupToBeDeleted; + uint8_t statsGrpIdToBeDelList[MAX_NUM_STATS_GRP]; +}MacStatsDeleteReq; + +typedef struct macStatsDeleteInfo +{ + uint8_t groupId; + MacRsp statsGrpDelRsp; + CauseOfResult statsGrpDelCause; +}MacStatsDeleteInfo; + +typedef struct macStatsDeleteRsp +{ + uint64_t subscriptionId; /* subscription Id */ + MacRsp subsDelRsp; /* deletion status of all statsGrp with given subscriptionId */ + CauseOfResult subsDelCause; /* cause of failure in deletion of all statsGrp with given subscriptionId */ + uint8_t numStatsGroupDeleted; /* number of actions to deleted */ + MacStatsDeleteInfo statsGrpDelInfo[MAX_NUM_STATS_GRP]; /*list of the deletion statuses for specific actions */ +}MacStatsDeleteRsp; + +typedef struct macStatsReq MacStatsModificationReq; +typedef struct macStatsRsp MacStatsModificationRsp; + /****************** FUNCTION POINTERS ********************************/ /* DL broadcast req from DU APP to MAC*/ @@ -2068,6 +2099,26 @@ typedef uint8_t (*MacDuStatsIndFunc) ARGS(( Pst *pst, MacStatsInd *statsInd)); +/* Statitics Delete Request from DU APP to MAC */ +typedef uint8_t (*DuMacStatsDeleteReqFunc) ARGS(( + Pst *pst, + MacStatsDeleteReq *statsDeleteReq)); + +/* Statistics Delete Response from MAC to DU APP */ +typedef uint8_t (*MacDuStatsDeleteRspFunc) ARGS(( + Pst *pst, + MacStatsDeleteRsp *statsDeleteRsp)); + +/* Statitics Modification Request from DU APP to MAC */ +typedef uint8_t (*DuMacStatsModificationReqFunc) ARGS(( + Pst *pst, + MacStatsModificationReq *statsModificationReq)); + +/* Statistics Modification Response from MAC to DU APP */ +typedef uint8_t (*MacDuStatsModificationRspFunc) ARGS(( + Pst *pst, + MacStatsModificationRsp *statsModificationRsp)); + /******************** FUNCTION DECLARATIONS ********************************/ uint8_t packMacCellUpInd(Pst *pst, OduCellId *cellId); uint8_t unpackMacCellUpInd(DuMacCellUpInd func, Pst *pst, Buffer *mBuf); @@ -2200,6 +2251,24 @@ uint8_t unpackDuMacStatsRsp(MacDuStatsRspFunc func, Pst *pst, Buffer *mBuf); uint8_t packDuMacStatsInd(Pst *pst, MacStatsInd *statsRsp); uint8_t DuProcMacStatsInd(Pst *pst, MacStatsInd *statsRsp); uint8_t unpackDuMacStatsInd(MacDuStatsIndFunc func, Pst *pst, Buffer *mBuf); + +uint8_t packDuMacStatsDeleteReq(Pst *pst, MacStatsDeleteReq *statsDeleteReq); +uint8_t MacProcStatsDeleteReq(Pst *pst, MacStatsDeleteReq *statsDeleteReq); +uint8_t unpackMacStatsDeleteReq(DuMacStatsDeleteReqFunc func, Pst *pst, Buffer *mBuf); + +uint8_t packDuMacStatsDeleteRsp(Pst *pst, MacStatsDeleteRsp *statsDeleteRsp); +uint8_t DuProcMacStatsDeleteRsp(Pst *pst, MacStatsDeleteRsp *statsDeleteRsp); +uint8_t unpackDuMacStatsDeleteRsp(MacDuStatsDeleteRspFunc func, Pst *pst, Buffer *mBuf); + +uint8_t packDuMacStatsModificationReq(Pst *pst, MacStatsModificationReq *statsModificationReq); +uint8_t MacProcStatsModificationReq(Pst *pst, MacStatsModificationReq *statsModificationReq); +uint8_t unpackMacStatsModificationReq(DuMacStatsModificationReqFunc func, Pst *pst, Buffer *mBuf); + +uint8_t packDuMacStatsModificationRsp(Pst *pst, MacStatsModificationRsp *statsModificationRsp); +uint8_t DuProcMacStatsModificationRsp(Pst *pst, MacStatsModificationRsp *statsModificationRsp); +uint8_t unpackDuMacStatsModificationRsp(MacDuStatsModificationRspFunc func, Pst *pst, Buffer *mBuf); + + #endif