diff --git a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp index d6b588aad1024d16c256779d4f9e78188081dcfc..e4480600fe4c3574aa89f707d6ffe6912fbc82d6 100644 --- a/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp +++ b/targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp @@ -405,27 +405,27 @@ int openair0_dev_init_usrp(openair0_device* device, openair0_config_t *openair0_ openair0_cfg[0].rx_gain_calib_table = calib_table_x310; - switch (openair0_cfg[0].sample_rate) { - case 30.72e6: + switch ((int)openair0_cfg[0].sample_rate) { + case 30720000: // from usrp_time_offset openair0_cfg[0].samples_per_packet = 2048; openair0_cfg[0].tx_sample_advance = 15; - openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[0].samples_per_packet; break; - case 15.36e6: + case 15360000: openair0_cfg[0].samples_per_packet = 2048; openair0_cfg[0].tx_sample_advance = 45; - openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[0].samples_per_packet; break; - case 7.6e6: + case 7680000: openair0_cfg[0].samples_per_packet = 1024; openair0_cfg[0].tx_sample_advance = 50; - openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[0].samples_per_packet; break; - case 1.92e6: + case 1920000: openair0_cfg[0].samples_per_packet = 256; openair0_cfg[0].tx_sample_advance = 50; - openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[0].samples_per_packet; break; default: printf("Error: unknown sampling rate %f\n",openair0_cfg[0].sample_rate); @@ -445,32 +445,32 @@ int openair0_dev_init_usrp(openair0_device* device, openair0_config_t *openair0_ // s->usrp->set_clock_source("internal"); // set master clock rate and sample rate for tx & rx for streaming - device->type = USRP_B200_IF + device->type = USRP_B200_IF; s->usrp->set_master_clock_rate(30.72e6); openair0_cfg[0].rx_gain_calib_table = calib_table_b210; - switch (openair0_cfg[0].sample_rate) { - case 30.72e6: + switch ((int)openair0_cfg[0].sample_rate) { + case 30720000: // from usrp_time_offset openair0_cfg[0].samples_per_packet = 2048; openair0_cfg[0].tx_sample_advance = 175; - openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[0].samples_per_packet; break; - case 15.36e6: + case 15360000: openair0_cfg[0].samples_per_packet = 2048; openair0_cfg[0].tx_sample_advance = 95; - openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[0].samples_per_packet; break; - case 7.6e6: + case 7680000: openair0_cfg[0].samples_per_packet = 1024; openair0_cfg[0].tx_sample_advance = 70; - openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 5*openair0_cfg[0].samples_per_packet; break; - case 1.92e6: + case 1920000: openair0_cfg[0].samples_per_packet = 256; openair0_cfg[0].tx_sample_advance = 40; - openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[card].samples_per_packet; + openair0_cfg[0].tx_scheduling_advance = 8*openair0_cfg[0].samples_per_packet; break; default: printf("Error: unknown sampling rate %f\n",openair0_cfg[0].sample_rate); diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c index 786cd97a59f818feec6a0ec2b31efb5eee21c541..45625e7e736d05eab7848c5831262061ebd5c9ea 100644 --- a/targets/RT/USER/lte-softmodem.c +++ b/targets/RT/USER/lte-softmodem.c @@ -1632,7 +1632,6 @@ static void* eNB_thread( void* arg ) #ifndef EXMIMO spp = openair0_cfg[0].samples_per_packet; tx_pos = openair0_cfg[0].tx_scheduling_advance; - tx_advance = openair0_cfg[0].tx_sample_advance; #endif while (!oai_exit) { diff --git a/targets/RT/USER/lte-ue.c b/targets/RT/USER/lte-ue.c index ec245360d7554fe6a68fc6966ef1685a321a6054..aa22488687f323c07874aa0f1861581a7d61a77e 100644 --- a/targets/RT/USER/lte-ue.c +++ b/targets/RT/USER/lte-ue.c @@ -1003,7 +1003,7 @@ void *UE_thread(void *arg) static int UE_thread_retval; PHY_VARS_UE *UE = PHY_vars_UE_g[0][0]; int spp = openair0_cfg[0].samples_per_packet; - int slot=1, frame=0, hw_subframe=0, rxpos=0, txpos=spp*openair0_cfg[0].tx_delay; + int slot=1, frame=0, hw_subframe=0, rxpos=0, txpos=spp*openair0_cfg[0].tx_scheduling_advance; #ifdef __AVX2__ int dummy[2][spp] __attribute__((aligned(32))); #else @@ -1128,7 +1128,7 @@ void *UE_thread(void *arg) txp[i] = (void*)&txdata[i][txpos]; openair0.trx_write_func(&openair0, - (timestamp+spp*openair0_cfg[0].tx_delay-openair0_cfg[0].tx_forward_nsamps), + (timestamp+spp*openair0_cfg[0].tx_scheduling_advance-openair0_cfg[0].tx_sample_advance), txp, spp - ((first_rx==1) ? rx_off_diff : 0), UE->lte_frame_parms.nb_antennas_tx,