Commit f4a957f7 authored by Florian Kaltenberger's avatar Florian Kaltenberger

fix for compilation with EXMIMO=1 and Rel10=1


git-svn-id: http://svn.eurecom.fr/openair4G/trunk@6245 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 34b68e2a
...@@ -37,6 +37,7 @@ ...@@ -37,6 +37,7 @@
//#include "pci_commands.h" //#include "pci_commands.h"
#endif //CBMIMO1 #endif //CBMIMO1
*/ */
#include "openair0_lib.h"
#include "defs.h" #include "defs.h"
#include "SCHED/defs.h" #include "SCHED/defs.h"
#include "PHY/extern.h" #include "PHY/extern.h"
...@@ -49,6 +50,10 @@ ...@@ -49,6 +50,10 @@
#include "UTIL/LOG/vcd_signal_dumper.h" #include "UTIL/LOG/vcd_signal_dumper.h"
//#define DEBUG_PHY //#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_map0_3[838];
extern uint16_t prach_root_sequence_map4[138]; extern uint16_t prach_root_sequence_map4[138];
uint8_t dmrs1_tab[8] = {0,2,3,4,6,8,9,10}; 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, ...@@ -646,24 +651,23 @@ void phy_config_dedicated_scell_eNB(uint8_t Mod_id,
#ifdef EXMIMO #ifdef EXMIMO
#ifdef DRIVER2013 #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
#endif #endif
if ((dl_CarrierFreq_r10>=36000) && (dl_CarrierFreq_r10<=36199)) { 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 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); 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 EXMIMO
#ifdef DRIVER2013 #ifdef DRIVER2013
carrier_freq[CC_id] = carrier_freq_local; //carrier_freq[CC_id] = carrier_freq_local;
openair_daq_vars.freq_offset = -6540; //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_rx[rf_map[CC_id].chain] = carrier_freq_local;//+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.rf_freq_tx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2;
p_exmimo_config->rf.tx_gain[CC_id][0] = 25; p_exmimo_config->rf.tx_gain[rf_map[CC_id].chain][0] = 25;
p_exmimo_config->rf.rf_vcocal[CC_id] = 910; p_exmimo_config->rf.rf_vcocal[rf_map[CC_id].chain] = 910;
p_exmimo_config->rf.rf_local[CC_id] = 8255063; //this should be taken form calibration file 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[CC_id] = B19G_TDD; p_exmimo_config->rf.rffe_band_mode[rf_map[CC_id].chain] = B19G_TDD;
#endif #endif
#endif #endif
} }
...@@ -673,14 +677,14 @@ void phy_config_dedicated_scell_eNB(uint8_t Mod_id, ...@@ -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); 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 EXMIMO
#ifdef DRIVER2013 #ifdef DRIVER2013
carrier_freq[CC_id] = carrier_freq_local; //carrier_freq[CC_id] = carrier_freq_local;
openair_daq_vars.freq_offset = -2000; //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_rx[rf_map[CC_id].chain] = carrier_freq_local;//+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.rf_freq_tx[rf_map[CC_id].chain] = carrier_freq_local;//+openair_daq_vars.freq_offset2;
p_exmimo_config->rf.tx_gain[CC_id][0] = 10; p_exmimo_config->rf.tx_gain[rf_map[CC_id].chain][0] = 10;
p_exmimo_config->rf.rf_vcocal[CC_id] = 2015; p_exmimo_config->rf.rf_vcocal[rf_map[CC_id].chain] = 2015;
p_exmimo_config->rf.rf_local[CC_id] = 8254992; //this should be taken form calibration file 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[CC_id] = DD_TDD; p_exmimo_config->rf.rffe_band_mode[rf_map[CC_id].chain] = DD_TDD;
#endif #endif
#endif #endif
} }
......
...@@ -219,7 +219,7 @@ int get_ue_active_harq_pid(uint8_t Mod_id,uint8_t CC_id,uint16_t rnti,int frame, ...@@ -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; // int subframe = PHY_vars_eNB_g[Mod_id][CC_id]->proc[sched_subframe].subframe_tx;
if (UE_id==-1) { 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; *round=0;
return(-1); return(-1);
} }
...@@ -3095,8 +3095,8 @@ void phy_procedures_eNB_RX(unsigned char sched_subframe,PHY_VARS_eNB *phy_vars_e ...@@ -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 we've dropped the UE, go back to PRACH mode for this UE
//#if !defined(EXMIMO_IOT) //#if !defined(EXMIMO_IOT)
if (phy_vars_eNB->eNB_UE_stats[i].ulsch_consecutive_errors == ULSCH_max_consecutive_errors) { 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", 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,frame,subframe, i, phy_vars_eNB->eNB_UE_stats[i].ulsch_consecutive_errors); 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"); // mac_xface->macphy_exit("Consecutive error count reached");
......
...@@ -3176,10 +3176,12 @@ int lte_ue_pdcch_procedures(uint8_t eNB_id,PHY_VARS_UE *phy_vars_ue,uint8_t abst ...@@ -3176,10 +3176,12 @@ int lte_ue_pdcch_procedures(uint8_t eNB_id,PHY_VARS_UE *phy_vars_ue,uint8_t abst
0,0); 0,0);
} }
else { // abstraction else { // abstraction
#ifdef PHY_ABSTRACTION
ret = dlsch_decoding_emul(phy_vars_ue, ret = dlsch_decoding_emul(phy_vars_ue,
subframe_rx, subframe_rx,
5, // PMCH 5, // PMCH
eNB_id); eNB_id);
#endif
} }
if (mcch_active == 1) if (mcch_active == 1)
phy_vars_ue->dlsch_mcch_trials[sync_area][0]++; phy_vars_ue->dlsch_mcch_trials[sync_area][0]++;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment