1 /******************************************************************************
2 ###############################################################################
3 # Copyright (c) [2017-2020] [ICT/CAS] #
4 # Licensed under the ORAN Software License v1.0 (License) #
5 ###############################################################################
6 ******************************************************************************/
11 #include "vos_types.h"
12 #include "cuModuleInterface.h"
13 #include "upcContext.h"
14 #include "upcCommon.h"
16 #define UE_ACTIVITY_NOTIFY_LEVEL 1
17 #define PDU_SESS_ACTIVITY_NOTIFY_LEVEL 2
18 #define DRB_ACTIVITY_NOTIFY_LEVEL 3
27 UINT64 pduDataCount[256];
28 }PduSessActivityNotify_t;
32 UINT64 drbDataCount[33];
38 UINT8 notifyLevel; /*UE, PDU SESSION, DRB*/
40 UeActivityNotify_t ueNotify;
41 PduSessActivityNotify_t pduSessNotify;
42 DrbActivityNotify_t drbNotify;
44 }SdapActivityNotify_t;
47 /* 1、每个实体内的Session ID、drbID、QosFlowId,都是连续的
48 2、Session和Qos相关的信息都是以ID作为下标保存的
49 3、DRB是以DRB ID - 1 保存的*/
51 /* 实体的配置结果和实体的保存原则是一致的 */
57 UINT64 Qfi[UPC_MAX_QOS_PARA_NUM];
59 UINT64 failQfi[UPC_MAX_QOS_PARA_NUM];
60 E1apCause_e cause[UPC_MAX_QOS_PARA_NUM];
66 E1apCause_e sessFailCause;
70 UINT8 actDrbId[UPC_MAX_DRB_NUM];
71 SdapDrbCfgRet_t actDrbCfg[UPC_MAX_DRB_NUM];
73 UINT64 failDrbId[UPC_MAX_DRB_NUM];
74 E1apCause_e cause[UPC_MAX_DRB_NUM];
78 UINT8 modDrbId[UPC_MAX_DRB_NUM];
79 SdapDrbCfgRet_t modDrbCfg[UPC_MAX_DRB_NUM];
81 UINT64 failModDrbId[UPC_MAX_DRB_NUM];
82 E1apCause_e modCause[UPC_MAX_DRB_NUM];
90 INT64 qfi[UPC_MAX_QOS_PARA_NUM];
91 QoSFlowQosItem_t qosFlowInfo[UPC_MAX_QOS_PARA_NUM];
98 UINT64 drbId[UPC_MAX_DRB_NUM];
99 SdapDrbCfg_t drbCfg[UPC_MAX_DRB_NUM];
106 UINT16 sessId[UPC_MAX_SESSION_NUM];
107 SdapInstance_t sdapInstance[UPC_MAX_SESSION_NUM];
125 #define SDAP_HEADER_LEN 1
127 SdapGlobalDtat_t* sdapGetUeGlobalData(UINT64 upE1apId, UINT8 *flag);
128 INT32 sdapCreateInstance(UINT64 upE1apId, upcTempSessInfo_t *pSessTempInfo, sdapSessCfgRet_t *pCfgRet);
129 INT32 sdapModSetupInstance(UINT64 upE1apId, upcTempSessInfo_t *pSessTempInfo, sdapSessCfgRet_t *pCfgRet);
130 INT32 sdapModInstance(UINT64 upE1apId, upcTempSessInfo_t *pSessTempInfo, sdapSessCfgRet_t *pCfgRet);
131 INT32 sdapDeleteDrbInfo(SdapInstance_t *pSdapInstance, UINT8 drbId);
132 INT32 sdapDeleteDrbInfoOfInstance(UINT64 upE1apId, UINT8 sessId, UINT8 drbId);
133 INT32 sdapDeleteInstance(UINT64 upE1apId, UINT16 sessId);