diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c index 1d598dfece9d852409b1ac5c5556d84580594480..2409f102a4c506649651a8e2ecd6d1cd944c59ad 100644 --- a/targets/RT/USER/lte-softmodem.c +++ b/targets/RT/USER/lte-softmodem.c @@ -316,6 +316,7 @@ static LTE_DL_FRAME_PARMS *frame_parms[MAX_NUM_CCs]; int multi_thread=1; uint32_t target_dl_mcs = 28; //maximum allowed mcs uint32_t target_ul_mcs = 10; +uint32_t timing_advance = 0; uint8_t exit_missed_slots=1; uint64_t num_missed_slots=0; // counter for the number of missed slots @@ -2059,7 +2060,7 @@ static void get_options (int argc, char **argv) {NULL, 0, NULL, 0} }; - while ((c = getopt_long (argc, argv, "a:C:dK:g:F:G:hqO:m:SUVRM:r:P:Ws:t:Tx:",long_options,NULL)) != -1) { + while ((c = getopt_long (argc, argv, "A:a:C:dK:g:F:G:hqO:m:SUVRM:r:P:Ws:t:Tx:",long_options,NULL)) != -1) { switch (c) { case LONG_OPTION_MAXPOWER: tx_max_power[0]=atoi(optarg); @@ -2134,6 +2135,10 @@ static void get_options (int argc, char **argv) #endif break; + case 'A': + timing_advance = atoi (optarg); + break; + case 'C': for (CC_id=0; CC_id<MAX_NUM_CCs; CC_id++) { downlink_frequency[CC_id][0] = atof(optarg); // Use float to avoid issue with frequency over 2^31. @@ -3065,7 +3070,7 @@ int main( int argc, char **argv ) // connect the TX/RX buffers if (UE_flag==1) { #ifdef OAI_USRP - openair_daq_vars.timing_advance = 0; + openair_daq_vars.timing_advance = timing_advance; #else openair_daq_vars.timing_advance = 160; #endif