[Epic-ID: ODUHIGH-405][Task-ID: ODUHIGH-414] F1 Setup from multiple DU to one CU
[o-du/l2.git] / src / cu_stub / cu_f1ap_msg_hdl.h
index 776a02b..13da1bc 100644 (file)
 *******************************************************************************/
 
 /* This file contains all F1AP message handler related functionality */
-#include <stdbool.h>
-#include <string.h>
-#include<ProtocolIE-Field.h>
-#include "ProtocolExtensionField.h"
-#include "F1AP-PDU.h"
-#include "Cells-to-be-Activated-List.h"
-#include "DL-CCCH-Message.h"
-#include "SRB-ToAddModList.h"
-#include "SRB-ToAddMod.h"
-#include "RRCSetup-IEs.h"
-#include "RRCSetup.h"
-#include "DL-DCCH-Message.h"
-#include "RRCReconfiguration-IEs.h"
-#include "RRCReconfiguration.h"
-#include "DRB-ToAddModList.h"
-#include "DRB-ToAddMod.h"
-#include "SDAP-Config.h"
-#include "du_log.h"
-
 #define ENCODE_FAIL -1
 #define TRANS_ID 1
 #define RRC_SIZE 1
 #define SRB2 2
 #define DRB1 1
 #define DRB2 2
+#define DRB3 3
 #define QCI  9
+#define MAX_DRB_SET_UE_CONTEXT_SETUP_REQ 2  /*Number of DRBs to be added using UE CONTEXT SETUP procedure*/
+#define MAX_DRB_SET_UE_CONTEXT_MOD_REQ 1     /*Number of DRBs to be added/setup via UE CONTEXT MODIFICATION procedure*/
+#define MAX_DRB_MODIFIED_UE_MOD_REQ 1        /*Currently CU trigger Modification of 2DRBs*/
+#define DRB_ID_TO_ADD_MOD MAX_DRB_SET_UE_CONTEXT_SETUP_REQ+1 /*The DRB ID: which will be added using Modification Procedure*/
+
+/*Total num of DRBs added using UE COntext Setup and Modification procedures*/
+#define MAX_NUM_DRB_ADDED_PER_UE (MAX_DRB_SET_UE_CONTEXT_SETUP_REQ + MAX_DRB_SET_UE_CONTEXT_MOD_REQ)
 
 #define CU_UE_F1AP_ID 0
 #define DU_UE_F1AP_ID 1
@@ -66,6 +55,8 @@
 #define SECURITY_MODE_COMPLETE 5
 #define RRC_RECONFIG 6
 #define UE_CONTEXT_MOD_REQ 7
+#define NUM_QOS_EXT 1
+
 
 typedef struct f1apDb
 {
@@ -73,9 +64,18 @@ typedef struct f1apDb
    OCTET_STRING_t duToCuContainer;
 }F1apMsgDb;
   
-F1apMsgDb f1apMsgDb;
-void F1APMsgHdlr(Buffer *mBuf);
-uint8_t BuildAndSendUeContextModificationReq();
+typedef struct ueInfo
+{
+  uint8_t ueId;
+  F1apMsgDb f1apMsgDb;
+}UeCb;
+
+UeCb ueCb[MAX_NUM_UE];
+
+void F1APMsgHdlr(uint32_t *destDuId, Buffer *mBuf);
+uint8_t BuildAndSendUeContextModificationReq(uint8_t ueId);
+uint8_t BuildAndSendUeContextReleaseCommand(uint8_t cuUeF1apId, uint8_t duUeF1apId);
+uint8_t BuildAndSendF1ResetReq();
 /**********************************************************************
          End of file
 **********************************************************************/