X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fdu_app%2Fdu_mgr.h;h=a46a3709fe76fac16f72880358cf074f23346839;hb=04ac036d193d4f4807cfaae96ce74dfd1c3e7966;hp=8678e109993f5affdaa867051f31cbf155b6626b;hpb=b5a77f556b20a2acd7d653367fdcac030461f85b;p=o-du%2Fl2.git diff --git a/src/du_app/du_mgr.h b/src/du_app/du_mgr.h index 8678e1099..a46a3709f 100644 --- a/src/du_app/du_mgr.h +++ b/src/du_app/du_mgr.h @@ -57,6 +57,8 @@ #define DU_SET_ZERO(_buf, _size) \ memset((_buf), 0, _size); +#define MAX_PAGING_UE_RECORDS 32 + typedef enum { SLICE_INFO_NOT_AVAILABLE, @@ -182,7 +184,7 @@ typedef struct pagingMsg { /*Note: Paging UEID is extracted from 5gSTMSI as per Spec 38.304, Sec 7.1. *This is not same as DU-UE_F1AP_ID or CU_UE_F1AP_ID*/ - uint16_t ueId; /* UE Identifier from CU*/ + uint16_t pagUeId; /* UE Identifier from CU*/ /*TODO: When RAN Inititated Paging will be supported then I-RNTI will be * added as a choice for UE Identity along with S-TMSI*/ @@ -196,6 +198,25 @@ typedef struct pagingMsg uint16_t T; /* T is DRX cycle of the UE */ }DuPagingMsg; +typedef struct duPagUeRecord +{ + uint16_t pagUeId; /*UEID calculated from 5gsTMSI as per Spec 38.304*/ + uint64_t sTmsi; /*UE Paging Identity: 5GS-TMSI*/ + uint8_t pagPriority; /* Paging priority */ +}DuPagUeRecord; + +typedef struct duPagInfo +{ + uint8_t i_s; /*Index of PO*/ + CmLListCp pagUeList; /*List of UEs to be paged in this Paging Frame/Paging Occ*/ +}DuPagUeList; + +typedef struct duPagInfoMap +{ + uint16_t pf; /* Paging Frame*/ + CmLListCp pagInfoList; /* Master List of Paging Identified by PF and i_s*/ +}DuPagInfoList; + typedef struct duCellCb { uint16_t cellId; /* Internal cell Id */ @@ -207,6 +228,7 @@ typedef struct duCellCb DuUeCb ueCb[MAX_NUM_UE]; /* Stores UE context */ SlotInfo currSlotInfo; DuPagingMsg tmpPagingInfoOfUe; /* UE paging information */ + CmHashListCp pagingInfoMap; /*Paging Map between PF and PagingInfoList*/ }DuCellCb; typedef struct duLSapCb