O-CU-UP
[scp/ocu/5gnr.git] / Include / gnbServiceType.h
diff --git a/Include/gnbServiceType.h b/Include/gnbServiceType.h
new file mode 100644 (file)
index 0000000..2d8ba8f
--- /dev/null
@@ -0,0 +1,149 @@
+/******************************************************************************
+###############################################################################
+#   Copyright (c) [2017-2020] [ICT/CAS]                                        #
+#   Licensed under the ORAN Software License v1.0 (License)             #
+###############################################################################
+******************************************************************************/
+
+#ifndef __GNB_COMM_TYPE_H__
+#define __GNB_COMM_TYPE_H__
+
+/** @brief max cell num */
+#define MAX_CELL_NUM                   4
+
+/** @brief max cell id */
+#define MAX_CELL_ID                    (MAX_CELL_NUM - 1)
+
+/** @brief max ue num */
+#define MAX_UE_NUM                     42
+#define MAX_UE_NUM_PER_CELL            21
+
+/** @brief max ue id */
+#define MAX_UE_ID                      (MAX_UE_NUM - 1)
+
+/** @brief max drb num */
+#define MAX_DRB_NUM                    33
+
+/** @brief max drb id */
+#define MAX_DRB_ID                     (MAX_DRB_NUM - 1)
+
+/** @brief max srb num */
+#define MAX_SRB_NUM                    4
+
+/** @brief max srb id */
+#define MAX_SRB_ID                     (MAX_SRB_NUM - 1)
+
+/** @brief max logical channel num */
+#define MAX_LCH_NUM                    33
+
+#define MAX_PLMN_ID_NUM              8
+
+/** @brief tunnel port */
+#define TUNNEL_PORT                   2152
+
+#define MAX_PDU_SESSION_NUM                     (10)
+
+#define MAC_CU_DU_TNL_ASSOC_NUM (32)
+/** @brief Cell ID */
+typedef UINT16   CmNrCellId;
+
+/** @brief RNTI */
+typedef UINT16   CmNrRnti;
+
+/** @brief I-RNTI */
+typedef UINT64  CmNrIRnti;
+
+/** @brief Ue Id */
+typedef UINT16   CmNrUeId;
+
+/** @brief Radio Bearer ID */
+typedef UINT8    CmNrRbId;
+
+/** @brief Logical Channel Type */
+typedef UINT8    CmNrLcType;
+
+/** @brief Radio Bearer ID */
+typedef UINT8    CmNrRbId;
+
+/** @brief Mode Type TM/UM/AM */
+typedef UINT8    CmNrRlcMode;
+
+/** @brief Logical Channel ID */
+typedef UINT8    CmNrLcId;
+
+/** @brief Logical Channel Type */
+typedef UINT8    CmNrLcType;
+
+/** @brief Sn bits*/
+typedef UINT8    CmRlcSnLen;
+
+/*见协议38401 8.5 F1 Startup and cells activation*/
+typedef enum
+{
+    CELL_ACTIVE_STATE,
+    CELL_INACTIVE_STATE,
+    
+}CellState_e;
+
+
+typedef struct  PlmnId
+{
+    UINT8                  mcc2:4;
+    UINT8                  mcc1:4;
+    UINT8                  mnc3:4;
+    UINT8                  mcc3:4;
+    UINT8                  mnc2:4;
+    UINT8                  mnc1:4;
+} PlmnId_t;
+
+/* NR CELL Identity */
+typedef struct  NrCellId
+{
+    UINT64                  cellId:36;
+}NrCellId_t;
+
+#define      TRACKING_AREA_CODE     (1<<0)
+#define      RANRC                  (1<<1)
+typedef struct  plmnInformation
+{
+    UINT16                  bitMask;
+    UINT8                   plmnIdNum;  
+    PlmnId_t                plmnId[MAX_PLMN_ID_NUM];
+    UINT32                  trackingAreaCode;  /*option*/
+    UINT8                   ranac;             /*option*/
+    UINT64                  cellIdentity;
+    BOOL                    cellReservedForOperatorUse;
+} PlmnInformation_t;
+
+
+typedef struct
+{
+    PlmnId_t               plmn;
+    UINT64                 cellId;
+} GnbNrCgi_t;
+
+typedef struct
+{
+    PlmnId_t               plmn;
+}GnbServedPlmn_t;
+
+
+/** @brief SRBID */
+typedef LONG    GnbSrbId_t;//9.3.1.7
+
+/** @brief DRB ID */
+typedef LONG    GnbDrbId_t;
+
+/** @brief Transaction ID */
+typedef LONG     GnbTransId;
+
+/** @brief gND DU ID */
+typedef LONG     GnbDuId;
+
+/** @brief gND CU ID */
+typedef LONG     GnbCuId;
+
+
+
+#endif
+