#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 */
#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
#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
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
{
typedef struct plmnInfoList
{
Plmn plmn;
- uint8_t numSupportedSlice; /* Total slice supporting */
- Snssai **snssai; /* List of supporting snssai*/
+ SupportedSliceList suppSliceList;
}PlmnInfoList;
typedef struct schPageCfg
typedef struct csiRsCfg
{
- uint8_t *csiFreqDomainAlloc;
+ uint8_t *csiFreqDomainAlloc;
uint8_t csiNrofPorts;
uint8_t csirsfirstOFDMSymbolInTimeDomain;
uint8_t csirsfirstOFDMSymbolInTimeDomain2;
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 */
uint16_t dmrsScramblingId;
}ControlRsrcSet;
+typedef struct mSlotPeriodAndOffset
+{
+ MSlotPeriodicity mSlotPeriodicity;
+ uint16_t mSlotOffset;
+}MSlotPeriodAndOffset;
+
/* Search Space info */
typedef struct searchSpace
{
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*/
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);
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