From a6069f7481a9a70867c16e7154c0016f11cdeab5 Mon Sep 17 00:00:00 2001
From: luis_pereira87 <lpereira@allbesmart.pt>
Date: Thu, 13 May 2021 16:30:21 +0100
Subject: [PATCH] Fix dl_carrier assignment

---
 executables/softmodem-common.h                  | 2 +-
 openair1/PHY/NR_UE_TRANSPORT/nr_ue_rf_helpers.c | 8 +++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/executables/softmodem-common.h b/executables/softmodem-common.h
index 7ab1f926c6c..e4b4f11c0df 100644
--- a/executables/softmodem-common.h
+++ b/executables/softmodem-common.h
@@ -136,7 +136,7 @@ extern int usrp_tx_thread;
     {"wait-for-sync",        NULL,                    PARAMFLAG_BOOL, iptr:&WAIT_FOR_SYNC,                defintval:0,           TYPE_INT,    0},                     \
     {"single-thread-enable", CONFIG_HLP_NOSNGLT,      PARAMFLAG_BOOL, iptr:&SINGLE_THREAD_FLAG,           defintval:0,           TYPE_INT,    0},                     \
     {"C" ,                   CONFIG_HLP_DLF,          0,              u64ptr:&(downlink_frequency[0][0]),     defuintval:3619200000,  TYPE_UINT64,   0},              \
-    {"CO" ,                  CONFIG_HLP_ULF,          0,              iptr:&(uplink_frequency_offset[0][0]),  defintval:3619200000,   TYPE_INT,      0},              \
+    {"CO" ,                  CONFIG_HLP_ULF,          0,              iptr:&(uplink_frequency_offset[0][0]),  defintval:0,   TYPE_INT,      0},              \
     {"a" ,                   CONFIG_HLP_CHOFF,        0,              iptr:&CHAIN_OFFSET,                 defintval:0,           TYPE_INT,    0},                     \
     {"d" ,                   CONFIG_HLP_SOFTS,        PARAMFLAG_BOOL, uptr:(uint32_t *)&do_forms,         defintval:0,           TYPE_INT8,   0},                     \
     {"q" ,                   CONFIG_HLP_STMON,        PARAMFLAG_BOOL, iptr:&opp_enabled,                  defintval:0,           TYPE_INT,    0},                     \
diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_ue_rf_helpers.c b/openair1/PHY/NR_UE_TRANSPORT/nr_ue_rf_helpers.c
index 76fc5f298fb..6cf782d9d83 100644
--- a/openair1/PHY/NR_UE_TRANSPORT/nr_ue_rf_helpers.c
+++ b/openair1/PHY/NR_UE_TRANSPORT/nr_ue_rf_helpers.c
@@ -31,13 +31,15 @@
 #include "PHY/defs_nr_UE.h"
 #include "PHY/phy_extern_nr_ue.h"
 #include "nr_transport_proto_ue.h"
+#include "executables/softmodem-common.h"
 
 void nr_get_carrier_frequencies(NR_DL_FRAME_PARMS *fp, uint64_t *dl_carrier, uint64_t *ul_carrier){
 
-  if (downlink_frequency[0][0])
-    *dl_carrier = downlink_frequency[0][0];
-  else
+  if (get_softmodem_params()->phy_test==1 || get_softmodem_params()->do_ra==1 || !downlink_frequency[0][0]) {
     *dl_carrier = fp->dl_CarrierFreq;
+  } else {
+    *dl_carrier = downlink_frequency[0][0];
+  }
 
   if (uplink_frequency_offset[0][0])
     *ul_carrier = *dl_carrier + uplink_frequency_offset[0][0];
-- 
GitLab