[Issue Id-ODUHIGH-457] Fixes related to slice configuration in Ue Context Setup
[o-du/l2.git] / src / cu_stub / cu_stub.c
index 4224201..a57bf06 100644 (file)
@@ -273,9 +273,11 @@ void initiateInterDuHandover(uint32_t sourceDuId, uint32_t targetDuId, uint32_t
 void *cuConsoleHandler(void *args)
 {
    char ch;
-   uint8_t teId = 0;
+   uint32_t teId = 0;
+   uint32_t duId;
    uint8_t ret = ROK;
    uint8_t cnt = 0;
+   EgtpTeIdCb *teidCb = NULLP;
 
    /* This variable is taken for sending specific number of downlink data packet. 
     * Presently the code is supporting total 4500 data packets trasfer for 3 UEs only with sleep(1).
@@ -283,7 +285,7 @@ void *cuConsoleHandler(void *args)
     * NUM_TUNNEL_TO_PUMP_DATA = 9, NUM_DL_PACKETS = 1.
     * totalDataPacket = totalNumOfTestFlow * NUM_TUNNEL_TO_PUMP_DATA * NUM_DL_PACKETS 
     * totalDataPacket = [500*9*1] */
-   int32_t totalNumOfTestFlow = 5
+   int32_t totalNumOfTestFlow = 2
 
    while(true) 
    {
@@ -318,24 +320,32 @@ void *cuConsoleHandler(void *args)
             cnt++;
          }
 #else
+
          while(totalNumOfTestFlow)
          {
-            for(teId = 1; teId <= NUM_TUNNEL_TO_PUMP_DATA; teId++)
+            for(duId = 1; duId<=MAX_DU_SUPPORTED; duId++)
             {
-               DU_LOG("\nDEBUG  -->  EGTP: Sending DL User Data(teId:%d)\n",teId);
-               cnt =0;
-               while(cnt < NUM_DL_PACKETS)
+               for(teId = 1; teId <= NUM_TUNNEL_TO_PUMP_DATA; teId++)
                {
-                  ret =  cuEgtpDatReq(teId);      
-                  if(ret != ROK)
+                  DU_LOG("\nDEBUG  -->  EGTP: Sending DL User Data(duId %d, teId:%d)\n", duId, teId);
+                  cmHashListFind(&(egtpCb.dstCb[duId-1].teIdLst), (uint8_t *)&(teId), sizeof(uint32_t), 0, (PTR *)&teidCb);
+                  if(teidCb)
                   {
-                     DU_LOG("\nERROR --> EGTP: Issue with teid=%d\n",teId);
-                     break;
+                     cnt =0;
+                     while(cnt < NUM_DL_PACKETS)
+                     {
+                        ret =  cuEgtpDatReq(duId, teId);      
+                        if(ret != ROK)
+                        {
+                           DU_LOG("\nERROR --> EGTP: Issue with teid=%d\n",teId);
+                           break;
+                        }
+                        /* TODO : sleep(1) will be removed later once we will be able to
+                         * support the continuous data pack transfer */
+                        sleep(1);
+                        cnt++;
+                     }
                   }
-                  /* TODO : sleep(1) will be removed later once we will be able to
-                   * support the continuous data pack transfer */
-                  sleep(1);
-                  cnt++;
                }
             }
             totalNumOfTestFlow--;