From 21b492f95cd305f83b6e7d17d35caac46b1460b5 Mon Sep 17 00:00:00 2001
From: Sandeep Kumar <ee13b1025@iith.ac.in>
Date: Tue, 21 Jun 2016 18:08:10 +0200
Subject: [PATCH] minimal fixes from rcc test

---
 openair1/PHY/LTE_TRANSPORT/if4_tools.c  | 6 +++---
 openair1/PHY/LTE_TRANSPORT/prach.c      | 2 +-
 openair1/SCHED/phy_procedures_lte_eNb.c | 4 ++--
 targets/RT/USER/lte-enb.c               | 4 ++--
 targets/RT/USER/lte-softmodem.c         | 6 +++++-
 5 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/openair1/PHY/LTE_TRANSPORT/if4_tools.c b/openair1/PHY/LTE_TRANSPORT/if4_tools.c
index 342512397a4..e716695c06b 100644
--- a/openair1/PHY/LTE_TRANSPORT/if4_tools.c
+++ b/openair1/PHY/LTE_TRANSPORT/if4_tools.c
@@ -89,7 +89,7 @@ void send_IF4(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type)
       // Write the packet to the fronthaul
       if ((eNB->ifdevice.trx_write_func(&eNB->ifdevice,
                                         symbol_id,
-                                        tx_buffer,
+                                        &tx_buffer,
                                         db_fulllength,
       			                            1,
                                         IF4_PDLFFT)) < 0) {
@@ -127,7 +127,7 @@ void send_IF4(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type)
       // Write the packet(s) to the fronthaul 
       if ((eNB->ifdevice.trx_write_func(&eNB->ifdevice,
                                         (int64_t) symbol_id,
-                                        tx_buffer,
+                                        &tx_buffer,
                                         db_fulllength,
       			                            1,
                                         IF4_PULFFT)) < 0) {
@@ -157,7 +157,7 @@ void send_IF4(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type)
     // Write the packet to the fronthaul
     if ((eNB->ifdevice.trx_write_func(&eNB->ifdevice,
                                       (int64_t) symbol_id,
-                                      tx_buffer,
+                                      &tx_buffer,
                                       db_fulllength,
                                       1,
                                       IF4_PRACH)) < 0) {
diff --git a/openair1/PHY/LTE_TRANSPORT/prach.c b/openair1/PHY/LTE_TRANSPORT/prach.c
index 85330b5a181..23ea2cae539 100644
--- a/openair1/PHY/LTE_TRANSPORT/prach.c
+++ b/openair1/PHY/LTE_TRANSPORT/prach.c
@@ -1271,7 +1271,7 @@ void rx_prach(PHY_VARS_eNB *eNB,
   if (eNB->node_function == NGFI_RRU_IF4) {
     /// **** send_IF4 of prachF to RCC **** ///    
     VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 1 );   
-    // send_IF4();
+    //send_IF4(eNB, frame, subframe, IF4_PRACH);
     VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 0 );   
 
     return;
diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c
index 92392070af3..3b7052db586 100755
--- a/openair1/SCHED/phy_procedures_lte_eNb.c
+++ b/openair1/SCHED/phy_procedures_lte_eNb.c
@@ -2572,7 +2572,7 @@ void phy_procedures_eNB_common_RX(PHY_VARS_eNB *eNB,const uint8_t abstraction_fl
 			  /// **** send_IF4 of rxdataF to RCC (no prach now) **** ///
         
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 1 );   
-        // send_IF4();
+        //send_IF4(eNB, frame, subframe, IF4_PULFFT);
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 0 );   
         
       }
@@ -2624,7 +2624,7 @@ void phy_procedures_eNB_common_RX(PHY_VARS_eNB *eNB,const uint8_t abstraction_fl
          
       do {
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_RECV_IF4, 1 );   
-        //recv_IF4(eNB, proc, &packet_type, &symbol_number);
+        //recv_IF4(eNB, frame, subframe, &packet_type, &symbol_number);
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_RECV_IF4, 0 );   
 
         if (packet_type == IF4_PULFFT) {
diff --git a/targets/RT/USER/lte-enb.c b/targets/RT/USER/lte-enb.c
index 8126ef46e0c..4031cd5842c 100644
--- a/targets/RT/USER/lte-enb.c
+++ b/targets/RT/USER/lte-enb.c
@@ -486,7 +486,7 @@ static void* eNB_thread_rxtx( void* param ) {
         /// **** recv_IF4 of txdataF from RCC **** ///     
         
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_RECV_IF4, 1 );   
-        //recv_IF4(eNB, proc, packet_type, symbol_number);        
+        //recv_IF4(eNB, frame, subframe, packet_type, symbol_number);        
         VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_RECV_IF4, 0 );   
         
       }
@@ -536,7 +536,7 @@ static void* eNB_thread_rxtx( void* param ) {
       /// **** send_IF4 of txdataF to RRU **** /// 
       
       VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 1 );   
-      //send_IF4(PHY_vars_eNB_g[0][proc->CC_id], proc, 0);
+      send_IF4(PHY_vars_eNB_g[0][proc->CC_id], proc->frame_tx, proc->subframe_tx, IF4_PDLFFT);
       VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_SEND_IF4, 0 );
 
     }
diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c
index dd55dacb1f5..dcfa88afbf5 100644
--- a/targets/RT/USER/lte-softmodem.c
+++ b/targets/RT/USER/lte-softmodem.c
@@ -1911,8 +1911,12 @@ int main( int argc, char **argv )
   pthread_cond_destroy(&sync_cond);
   pthread_mutex_destroy(&sync_mutex);
 
-  // *** Handle per CC_id openair0
+  // *** Handle per CC_id openair0 
   openair0.trx_end_func(&openair0);
+  for(CC_id=0; CC_id<MAX_NUM_CCs; CC_id++) {
+    PHY_vars_eNB_g[0][CC_id]->rfdevice.trx_end_func(&PHY_vars_eNB_g[0][CC_id]->rfdevice);  
+    PHY_vars_eNB_g[0][CC_id]->ifdevice.trx_end_func(&PHY_vars_eNB_g[0][CC_id]->ifdevice);  
+  }
 
   if (ouput_vcd)
     VCD_SIGNAL_DUMPER_CLOSE();
-- 
GitLab