X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcm%2Fmac_sch_interface.h;h=58f894a01515d3936b434ca10015fc0932995adf;hb=refs%2Fchanges%2F60%2F11760%2F2;hp=f3d4799d53065aca2087220fc5f895807398e872;hpb=47a15faec02b721d3e466815eb388fea0a209e3c;p=o-du%2Fl2.git diff --git a/src/cm/mac_sch_interface.h b/src/cm/mac_sch_interface.h index f3d4799d5..58f894a01 100644 --- a/src/cm/mac_sch_interface.h +++ b/src/cm/mac_sch_interface.h @@ -51,6 +51,10 @@ #define EVENT_DL_CQI_TO_SCH 32 #define EVENT_UL_CQI_TO_SCH 33 #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 + /*macros*/ #define MAX_SSB_IDX 1 /* forcing it as 1 for now. Right value is 64 */ #define SCH_SSB_MASK_SIZE 1 @@ -448,6 +452,13 @@ typedef enum CQI_PUSCH }CqiUlReportType; +/* Performance measurements from 3GPP TS 28.552 Release 15 */ +typedef enum +{ + SCH_DL_TOTAL_PRB_USAGE, + SCH_UL_TOTAL_PRB_USAGE +}SchMeasurementType; + /*structures*/ typedef struct timeDomainAlloc { @@ -2237,8 +2248,31 @@ typedef struct schRlsHqInfo SchUeHqInfo *ueHqInfo; }SchRlsHqInfo; +typedef struct schStatsInfo +{ + SchMeasurementType type; + uint16_t periodicity; /* In milliseconds */ +}SchStatsInfo; + +typedef struct schStatsReq +{ + uint8_t numStats; + SchStatsInfo statsList[MAX_NUM_STATS]; +}SchStatsReq; + +typedef struct schStatsRsp +{ + SchMacRsp rsp; + CauseOfResult cause; +}SchStatsRsp; + +typedef struct schStatsInd +{ + SchMeasurementType type; + double value; +}SchStatsInd; + /* function declarations */ -uint8_t schActvInit(Ent entity, Inst instId, Region region, Reason reason); uint8_t MacMessageRouter(Pst *pst, void *msg); uint8_t SchMessageRouter(Pst *pst, void *msg);