X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcm%2Fmac_sch_interface.h;h=941ad4a7772d3717552d182f5b372081f55889c3;hb=6dc8a4c17da24847b3a3aee91b37151f77a8a5bc;hp=781973f4a12f9923cb62681df6f9e4809aa841ad;hpb=a14bf79bbc001990f96e01ada0dd291bcc9ddcad;p=o-du%2Fl2.git diff --git a/src/cm/mac_sch_interface.h b/src/cm/mac_sch_interface.h index 781973f4a..941ad4a77 100644 --- a/src/cm/mac_sch_interface.h +++ b/src/cm/mac_sch_interface.h @@ -53,6 +53,9 @@ #define EVENT_PHR_IND_TO_SCH 34 #define EVENT_STATISTICS_REQ_TO_SCH 35 #define EVENT_STATISTICS_RSP_TO_MAC 36 +#define EVENT_STATISTICS_IND_TO_MAC 37 +#define EVENT_STATISTICS_DELETE_REQ_TO_SCH 38 +#define EVENT_STATISTICS_DELETE_RSP_TO_MAC 39 /*macros*/ #define MAX_SSB_IDX 1 /* forcing it as 1 for now. Right value is 64 */ @@ -1971,7 +1974,6 @@ typedef struct schModulationInfo typedef struct schUeCfgReq { uint16_t cellId; - uint8_t ueId; uint8_t beamIdx; uint16_t crnti; bool macCellGrpCfgPres; @@ -1991,7 +1993,6 @@ typedef struct schUeCfgReq typedef struct schUeRecfgReq { uint16_t cellId; - uint8_t ueId; uint8_t beamIdx; uint16_t crnti; bool macCellGrpRecfgPres; @@ -2020,7 +2021,6 @@ typedef struct schUeCfgRsp { uint16_t cellId; uint8_t beamIdx; - uint16_t ueId; uint16_t crnti; SchMacRsp rsp; CauseOfResult cause; @@ -2247,24 +2247,65 @@ typedef struct schRlsHqInfo SchUeHqInfo *ueHqInfo; }SchRlsHqInfo; -typedef struct schStatsInfo +/* Statistics Request from MAC to SCH */ +typedef struct schStatsGrpInfo { - SchMeasurementType type; - uint16_t periodicity; /* In milliseconds */ -}SchStatsInfo; + uint8_t groupId; + uint16_t periodicity; /* In milliseconds */ + uint8_t numStats; + SchMeasurementType statsList[MAX_NUM_STATS]; +}SchStatsGrpInfo; typedef struct schStatsReq { - uint8_t numStats; - SchStatsInfo statsList[MAX_NUM_STATS]; + uint64_t subscriptionId; + uint8_t numStatsGroup; + SchStatsGrpInfo statsGrpList[MAX_NUM_STATS_GRP]; }SchStatsReq; -typedef struct schStatsRsp +/* Statistics Response from SCH to MAC */ +typedef struct schStatsGrpRejected { - SchMacRsp rsp; + uint8_t groupId; CauseOfResult cause; +}SchStatsGrpRejected; + +typedef struct schStatsRsp +{ + uint64_t subscriptionId; + uint8_t numGrpAccepted; + uint8_t statsGrpAcceptedList[MAX_NUM_STATS_GRP]; + uint8_t numGrpRejected; + SchStatsGrpRejected statsGrpRejectedList[MAX_NUM_STATS_GRP]; }SchStatsRsp; +/* Statistics Indication from SCH to MAC */ +typedef struct schStats +{ + SchMeasurementType type; + double value; +}SchStats; + +typedef struct schStatsInd +{ + uint64_t subscriptionId; + uint8_t groupId; + uint8_t numStats; + SchStats measuredStatsList[MAX_NUM_STATS]; +}SchStatsInd; + +typedef struct schStatsDeleteReq +{ + uint64_t subscriptionId; +}SchStatsDeleteReq; + +typedef struct schStatsDeleteRsp +{ + uint64_t subscriptionId; + SchMacRsp rsp; + CauseOfResult cause; +}SchStatsDeleteRsp; + /* function declarations */ uint8_t MacMessageRouter(Pst *pst, void *msg); uint8_t SchMessageRouter(Pst *pst, void *msg);