Merge "MAC Clean-up [Issue-ID: ODUHIGH-212]"
[o-du/l2.git] / src / du_app / du_cell_mgr.c
index 522801e..f5d0373 100644 (file)
 *******************************************************************************/
 
 /* This file contains message handling functionality for DU cell management */
+#include "common_def.h"
+#include "lrg.h"
+#include "legtp.h"
+#include "lrg.x"
+#include "lkw.x"
+#include "du_app_mac_inf.h"
+#include "du_cfg.h"
+#include "E2AP-PDU.h"
+#include<ProtocolIE-Field.h>
+#include "F1AP-PDU.h"
 #include "du_cell_mgr.h"
+#include "odu_common_codec.h"
 
 extern DuCfgParams duCfgParam;
-
 extern S16 duBuildAndSendMacCellCfg();
 
 /*******************************************************************
@@ -54,7 +64,7 @@ S16 procCellsToBeActivated(Cells_to_be_Activated_List_t cellsToActivate)
           value.choice.Cells_to_be_Activated_List_Item;
 
       bitStringToInt(&cell.nRCGI.nRCellIdentity, &nci);
-      if(nci <= 0 || nci > DU_MAX_CELLS)
+      if(nci <= 0 || nci > MAX_NUM_CELL)
       {
          DU_LOG("\nDU APP : Invalid NCI %d", nci);
          return RFAILED;
@@ -78,7 +88,7 @@ S16 procCellsToBeActivated(Cells_to_be_Activated_List_t cellsToActivate)
       /* Now remove this cell from configured list and move to active list */
       duCb.cfgCellLst[nci-1] = NULL;
       duCb.actvCellLst[nci-1] = cellCb;
-
+      duCb.numActvCells++;
       /* Build and send Mac Cell Cfg for the number of active cells */
       ret = duBuildAndSendMacCellCfg();
       if(ret != ROK)
@@ -105,9 +115,9 @@ S16 procCellsToBeActivated(Cells_to_be_Activated_List_t cellsToActivate)
 *         RFAILED - failure
 *
 * ****************************************************************/
-S16 procF1SetupRsp(F1AP_PDU_t *f1apMsg)
+uint8_t procF1SetupRsp(F1AP_PDU_t *f1apMsg)
 {
-   S16 ret = ROK;
+   uint8_t ret = ROK;
 
    F1SetupResponse_t *f1SetRspMsg;
    F1SetupRsp    f1SetRspDb;
@@ -171,6 +181,37 @@ S16 procF1SetupRsp(F1AP_PDU_t *f1apMsg)
    return ret;
 }
 
+/*******************************************************************
+ *
+ * @brief Processes GNB DU config update ack
+ *
+ * @details
+ *
+ *    Function : procGNBDUCfgUpdAck
+ *
+ *    Functionality: Processes GNB DU config update ack
+ *
+ * @params[in] F1AP_PDU_t ASN decoded F1AP message
+ * @return ROK     - success
+ *         RFAILED - failure
+ *
+ * ****************************************************************/
+S16 procGNBDUCfgUpdAck(F1AP_PDU_t *f1apMsg)
+{
+   DU_LOG("\nF1AP : GNB-DU config update acknowledgment received");
+/* TODO :Check the deallocation */
+#if 0
+   SPutSBuf(DU_APP_MEM_REGION,DU_POOL,(Data*)&(gNBDuCfgAck->protocolIEs.list.array),\
+           (Size)elementCnt * sizeof(GNBDUConfigurationUpdateAcknowledgeIEs_t
+));
+   SPutSBuf(DU_APP_MEM_REGION,DU_POOL,(Data*)&(f1apMsg->choice.successfulOutcome),\
+           (Size)sizeof(SuccessfulOutcome_t));
+   SPutSBuf(DU_APP_MEM_REGION,DU_POOL,(Data*)&f1apMsg,(Size)sizeof(F1AP_PDU_t));
+#endif
+    return ROK;
+}
+
+
 /**********************************************************************
   End of file
  **********************************************************************/