X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fcu_stub%2Fcu_stub.h;h=806356164baa8941b6191d5444e57758dea416fe;hb=6eda577056855df28788aef28ee0a29c9128d1f5;hp=d87c10c6a1a279ae339db51956131ba0e09abe93;hpb=8660dd47a5ef27b62300fabf6b027852f1d5d026;p=o-du%2Fl2.git diff --git a/src/cu_stub/cu_stub.h b/src/cu_stub/cu_stub.h index d87c10c6a..806356164 100644 --- a/src/cu_stub/cu_stub.h +++ b/src/cu_stub/cu_stub.h @@ -19,122 +19,81 @@ #ifndef __CU_MGR_MAIN_H__ #define __CU_MGR_MAIN_H__ +#define CU_ID 1 +#define CU_NAME "ORAN_OAM_CU" + +#define DU_IP_V6_ADDR "0000:0000:0000:0000:0000:0000:0000:0001" +#define CU_IP_V6_ADDR "0000:0000:0000:0000:0000:0000:0000:0011" + +#ifndef O1_ENABLE +#define DU_IP_V4_ADDR (char*[]){"192.168.130.81", "192.168.130.83"} +#define DU_SCTP_PORT (int[]){38472, 38473} + +#define CU_IP_V4_ADDR "192.168.130.82" +#define CU_SCTP_PORT_TO_DU (int[]){38472, 38473} +#endif + +#define DU_EGTP_PORT 39001 +#define CU_EGTP_PORT 39002 +#define RRC_VER 0 +#define EXT_RRC_VER 5 +#define PLMN_MCC0 3 +#define PLMN_MCC1 1 +#define PLMN_MCC2 1 +#define PLMN_MNC0 4 +#define PLMN_MNC1 8 +#define PLMN_MNC2 0 -#include "stdio.h" -#include "stdlib.h" -#include "string.h" -#include "stdbool.h" -#include "ctype.h" -#include "envopt.h" /* Environment options */ -#include "envdep.h" /* Environment dependent */ -#include "envind.h" /* Environment independent */ - -#include "gen.h" /* General */ -#include "ssi.h" /* System services */ -#include "ss_queue.h" -#include "ss_task.h" -#include "ss_msg.h" -#include "cm_inet.h" -#include "cm_llist.h" /* Common link list defines */ -#include "cm_hash.h" /* Common hashlist defines */ - -#include "gen.x" /* General */ -#include "ssi.x" /* System services */ -#include "ss_queue.x" -#include "ss_task.x" -#include "ss_msg.x" -#include "cm_lib.x" -#include "cm_inet.x" -#include "cm_llist.x" /* Common link list defines */ -#include "cm_hash.x" /* Common hashlist defines */ - -#include "du_log.h" -#define MAX_IPV6_LEN 16 #define CU_DU_NAME_LEN_MAX 30 /* Max length of CU/DU name string */ #define CU_APP_MEM_REG 1 #define CU_POOL 1 -#define MAX_DU_PORT 2 -#define DU_PORT 38472 + +#define MAX_NUM_OF_SLICE 1024 /* As per the spec 38.473, maxnoofSliceItems = 1024*/ /* allocate and zero out a static buffer */ -#define CU_ALLOC(_datPtr, _size) \ -{ \ - S16 _ret; \ + +#define CU_ALLOC(_datPtr, _size) \ +{ \ + S16 _ret; \ _ret = SGetSBuf(CU_APP_MEM_REG, CU_POOL, \ - (Data **)&_datPtr, _size); \ - if(_ret == ROK) \ - cmMemset((U8*)_datPtr, 0, _size); \ - else \ - _datPtr = NULLP; \ + (Data **)&_datPtr, _size); \ + if(_ret == ROK) \ + memset(_datPtr, 0, _size); \ + else \ + _datPtr = NULLP; \ } /* free a static buffer */ -#define CU_FREE(_datPtr, _size) \ +#define CU_FREE(_datPtr, _size) \ + if(_datPtr) \ SPutSBuf(CU_APP_MEM_REG, CU_POOL, \ (Data *)_datPtr, _size); - -typedef struct ipAddr -{ - Bool ipV4Pres; - U32 ipV4Addr; - Bool ipV6Pres; - U8 ipV6Addr[MAX_IPV6_LEN]; -}SctpIpAddr; - typedef struct RrcVersion { - U8 rrcVer; /* Latest RRC Version */ - U32 extRrcVer; /* Latest RRC version extended */ + uint8_t rrcVer; /* Latest RRC Version */ + uint32_t extRrcVer; /* Latest RRC version extended */ }RrcVersion; -typedef struct -{ - U8 f1Itf; - U8 e2Itf; -}ItfType; - -typedef struct egtpParams -{ - SctpIpAddr localIp; - U16 localPort; - SctpIpAddr destIp; - U16 destPort; - U32 minTunnelId; - U32 maxTunnelId; -}EgtpParams; - -typedef struct sctpParamsCu -{ - SctpIpAddr duIpAddr; - U16 duPort; - SctpIpAddr cuIpAddr; - U16 cuPort; - ItfType itfType; -}SctpParamsCu; - -typedef struct fPLMN -{ - U8 mcc[3]; - U8 mnc[3]; -}Plmn; - - typedef struct cuCfgParams { - U32 cuId; + uint32_t cuId; char cuName[CU_DU_NAME_LEN_MAX]; - SctpParamsCu sctpParams; - Plmn plmn; + CuSctpParams sctpParams; + Plmn plmn; EgtpParams egtpParams; RrcVersion rrcVersion; + uint8_t numSnssaiSupported; + Snssai *snssaiList[MAX_NUM_OF_SLICE]; }CuCfgParams; CuCfgParams cuCfgParams; //global variable to hold all configs void readCuCfg(); void cuAppInmsgHdlr(Buffer *mBuf); void sctpNtfyInd(CmInetSctpNotification *ntfy); +uint8_t egtpInitReq(); +void *cuConsoleHandler(void *); #endif