From f4a957f7cbdd1c6593ba0ff62e7ac294c37751d8 Mon Sep 17 00:00:00 2001 From: Florian Kaltenberger <florian.kaltenberger@eurecom.fr> Date: Thu, 11 Dec 2014 10:56:47 +0000 Subject: [PATCH] fix for compilation with EXMIMO=1 and Rel10=1 git-svn-id: http://svn.eurecom.fr/openair4G/trunk@6245 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- openair1/PHY/INIT/lte_init.c | 40 ++++++++++++++----------- openair1/SCHED/phy_procedures_lte_eNb.c | 6 ++-- openair1/SCHED/phy_procedures_lte_ue.c | 2 ++ 3 files changed, 27 insertions(+), 21 deletions(-) diff --git a/openair1/PHY/INIT/lte_init.c b/openair1/PHY/INIT/lte_init.c index 86b6ba9902..e6ec127f1c 100644 --- a/openair1/PHY/INIT/lte_init.c +++ b/openair1/PHY/INIT/lte_init.c @@ -37,6 +37,7 @@ //#include "pci_commands.h" #endif //CBMIMO1 */ +#include "openair0_lib.h" #include "defs.h" #include "SCHED/defs.h" #include "PHY/extern.h" @@ -49,6 +50,10 @@ #include "UTIL/LOG/vcd_signal_dumper.h" //#define DEBUG_PHY +#ifdef Rel10 +extern openair0_rf_map rf_map[MAX_NUM_CCs]; +#endif + extern uint16_t prach_root_sequence_map0_3[838]; extern uint16_t prach_root_sequence_map4[138]; uint8_t dmrs1_tab[8] = {0,2,3,4,6,8,9,10}; @@ -646,24 +651,23 @@ void phy_config_dedicated_scell_eNB(uint8_t Mod_id, #ifdef EXMIMO #ifdef DRIVER2013 - exmimo_config_t *p_exmimo_config = openair0_exmimo_pci[card].exmimo_config_ptr; + exmimo_config_t *p_exmimo_config = openair0_exmimo_pci[rf_map[CC_id].card].exmimo_config_ptr; #endif #endif if ((dl_CarrierFreq_r10>=36000) && (dl_CarrierFreq_r10<=36199)) { carrier_freq_local = 1900000000 + (dl_CarrierFreq_r10-36000)*100000; //band 33 from 3GPP 36.101 v 10.9 Table 5.7.3-1 -#warning "fixme: update the phy frame counter " LOG_I(PHY,"[eNB %d] Frame %d: Configured SCell %d to frequency %d (ARFCN %d) for UE %d\n",Mod_id,/*phy_vars_eNB->frame*/0,CC_id,carrier_freq_local,dl_CarrierFreq_r10,UE_id); #ifdef EXMIMO #ifdef DRIVER2013 - carrier_freq[CC_id] = carrier_freq_local; - openair_daq_vars.freq_offset = -6540; - p_exmimo_config->rf.rf_freq_rx[CC_id] = carrier_freq[CC_id]+openair_daq_vars.freq_offset2; - p_exmimo_config->rf.rf_freq_tx[CC_id] = carrier_freq[CC_id]+openair_daq_vars.freq_offset2; - p_exmimo_config->rf.tx_gain[CC_id][0] = 25; - p_exmimo_config->rf.rf_vcocal[CC_id] = 910; - p_exmimo_config->rf.rf_local[CC_id] = 8255063; //this should be taken form calibration file - p_exmimo_config->rf.rffe_band_mode[CC_id] = B19G_TDD; + //carrier_freq[CC_id] = carrier_freq_local; + //openair_daq_vars.freq_offset = -6540; + p_exmimo_config->rf.rf_freq_rx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2; + p_exmimo_config->rf.rf_freq_tx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2; + p_exmimo_config->rf.tx_gain[rf_map[CC_id].chain][0] = 25; + p_exmimo_config->rf.rf_vcocal[rf_map[CC_id].chain] = 910; + p_exmimo_config->rf.rf_local[rf_map[CC_id].chain] = 8255063; //this should be taken form calibration file + p_exmimo_config->rf.rffe_band_mode[rf_map[CC_id].chain] = B19G_TDD; #endif #endif } @@ -673,14 +677,14 @@ void phy_config_dedicated_scell_eNB(uint8_t Mod_id, LOG_I(PHY,"[eNB %d] Frame %d: Configured SCell %d to frequency %d (ARFCN %d) for UE %d\n",Mod_id,/*phy_vars_eNB->frame*/0,CC_id,carrier_freq_local,dl_CarrierFreq_r10,UE_id); #ifdef EXMIMO #ifdef DRIVER2013 - carrier_freq[CC_id] = carrier_freq_local; - openair_daq_vars.freq_offset = -2000; - p_exmimo_config->rf.rf_freq_rx[CC_id] = carrier_freq[CC_id]+openair_daq_vars.freq_offset2; - p_exmimo_config->rf.rf_freq_tx[CC_id] = carrier_freq[CC_id]+openair_daq_vars.freq_offset2; - p_exmimo_config->rf.tx_gain[CC_id][0] = 10; - p_exmimo_config->rf.rf_vcocal[CC_id] = 2015; - p_exmimo_config->rf.rf_local[CC_id] = 8254992; //this should be taken form calibration file - p_exmimo_config->rf.rffe_band_mode[CC_id] = DD_TDD; + //carrier_freq[CC_id] = carrier_freq_local; + //openair_daq_vars.freq_offset = -2000; + p_exmimo_config->rf.rf_freq_rx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2; + p_exmimo_config->rf.rf_freq_tx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2; + p_exmimo_config->rf.tx_gain[rf_map[CC_id].chain][0] = 10; + p_exmimo_config->rf.rf_vcocal[rf_map[CC_id].chain] = 2015; + p_exmimo_config->rf.rf_local[rf_map[CC_id].chain] = 8254992; //this should be taken form calibration file + p_exmimo_config->rf.rffe_band_mode[rf_map[CC_id].chain] = DD_TDD; #endif #endif } diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c index 920faf5873..7f60037882 100755 --- a/openair1/SCHED/phy_procedures_lte_eNb.c +++ b/openair1/SCHED/phy_procedures_lte_eNb.c @@ -219,7 +219,7 @@ int get_ue_active_harq_pid(uint8_t Mod_id,uint8_t CC_id,uint16_t rnti,int frame, // int subframe = PHY_vars_eNB_g[Mod_id][CC_id]->proc[sched_subframe].subframe_tx; if (UE_id==-1) { - LOG_E(PHY,"Cannot find UE with rnti %x\n",rnti); + LOG_D(PHY,"Cannot find UE with rnti %x (Mod_id %d, CC_id %d)\n",rnti, Mod_id, CC_id); *round=0; return(-1); } @@ -3095,8 +3095,8 @@ void phy_procedures_eNB_RX(unsigned char sched_subframe,PHY_VARS_eNB *phy_vars_e // If we've dropped the UE, go back to PRACH mode for this UE //#if !defined(EXMIMO_IOT) if (phy_vars_eNB->eNB_UE_stats[i].ulsch_consecutive_errors == ULSCH_max_consecutive_errors) { - LOG_I(PHY,"[eNB %d] frame %d, subframe %d, UE %d: ULSCH consecutive error count reached %u, removing UE\n", - phy_vars_eNB->Mod_id,frame,subframe, i, phy_vars_eNB->eNB_UE_stats[i].ulsch_consecutive_errors); + LOG_I(PHY,"[eNB %d, CC %d] frame %d, subframe %d, UE %d: ULSCH consecutive error count reached %u, removing UE\n", + phy_vars_eNB->Mod_id,phy_vars_eNB->CC_id,frame,subframe, i, phy_vars_eNB->eNB_UE_stats[i].ulsch_consecutive_errors); // mac_xface->macphy_exit("Consecutive error count reached"); diff --git a/openair1/SCHED/phy_procedures_lte_ue.c b/openair1/SCHED/phy_procedures_lte_ue.c index 2ddbab1a49..b8e7f6c884 100755 --- a/openair1/SCHED/phy_procedures_lte_ue.c +++ b/openair1/SCHED/phy_procedures_lte_ue.c @@ -3176,10 +3176,12 @@ int lte_ue_pdcch_procedures(uint8_t eNB_id,PHY_VARS_UE *phy_vars_ue,uint8_t abst 0,0); } else { // abstraction +#ifdef PHY_ABSTRACTION ret = dlsch_decoding_emul(phy_vars_ue, subframe_rx, 5, // PMCH eNB_id); +#endif } if (mcch_active == 1) phy_vars_ue->dlsch_mcch_trials[sync_area][0]++; -- 2.26.2