Fixes of Ul and Dl data flow
[o-du/l2.git] / src / cu_stub / cu_stub.c
index e9ae4ef..0b9edb3 100644 (file)
@@ -243,6 +243,14 @@ void *cuConsoleHandler(void *args)
    uint8_t ret = ROK;
    uint8_t cnt = 0;
 
+   /* 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).
+    * If you wants to pump data for 3 UE change the following macro values
+    * 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 = 500; 
+
    while(true) 
    {
       /* Send DL user data to CU when user enters 'd' on console */
@@ -275,20 +283,27 @@ void *cuConsoleHandler(void *args)
             cnt++;
          }
 #else
-         for(teId = 1; teId <= NUM_TUNNEL_TO_PUMP_DATA; teId++)
+         while(totalNumOfTestFlow)
          {
-            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(teId:%d)\n",teId);
+               cnt =0;
+               while(cnt < NUM_DL_PACKETS)
                {
-                  DU_LOG("\nERROR --> EGTP: Issue with teid=%d\n",teId);
-                  break;
+                  ret =  cuEgtpDatReq(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++;
                }
-               cnt++;
             }
+            totalNumOfTestFlow--;
          }
 #endif
          continue;