UE nr parms init bug fix
This commit is contained in:
+89
@@ -0,0 +1,89 @@
|
||||
[AD9371]
|
||||
ad9371-phy.in_voltage2_rf_port_select = OFF
|
||||
ad9371-phy.in_voltage2_hardwaregain = -156.000000 dB
|
||||
ad9371-phy.in_voltage2_temp_comp_gain = 0.00 dB
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.out_voltage0_lo_leakage_tracking_en = 0
|
||||
ad9371-phy.out_voltage0_hardwaregain = 0.000000 dB
|
||||
ad9371-phy.out_voltage0_quadrature_tracking_en = 1
|
||||
ad9371-phy.out_voltage1_hardwaregain = 0.000000 dB
|
||||
ad9371-phy.out_voltage1_lo_leakage_tracking_en = 0
|
||||
ad9371-phy.out_voltage1_quadrature_tracking_en = 1
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.out_altvoltage1_TX_LO_frequency = 2560000000
|
||||
ad9371-phy.out_altvoltage2_RX_SN_LO_frequency = 2680000000
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.in_voltage0_gain_control_mode = manual
|
||||
ad9371-phy.in_voltage0_quadrature_tracking_en = 1
|
||||
ad9371-phy.in_voltage0_hardwaregain = 30.000000 dB
|
||||
ad9371-phy.in_voltage0_temp_comp_gain = 0.00 dB
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.in_voltage1_quadrature_tracking_en = 1
|
||||
ad9371-phy.in_voltage1_hardwaregain = 30.000000 dB
|
||||
ad9371-phy.in_voltage1_temp_comp_gain = 0.00 dB
|
||||
ad9371-phy.in_voltage1_gain_control_mode = manual
|
||||
ad9371-phy.in_voltage_rf_port_select_available = OFF INTERNALCALS OBS_SNIFFER SN_A SN_B SN_C ORX1_TX_LO ORX2_TX_LO ORX1_SN_LO ORX2_SN_LO
|
||||
ad9371-phy.out_altvoltage0_RX_LO_frequency = 2680000000
|
||||
ad9371-phy.calibrate_rx_qec_en = 0
|
||||
ad9371-phy.calibrate_tx_lol_en = 0
|
||||
ad9371-phy.calibrate_vswr_en = 0
|
||||
ad9371-phy.calibrate_tx_qec_en = 0
|
||||
ad9371-phy.calibrate_clgc_en = 0
|
||||
ad9371-phy.ensm_mode = radio_on
|
||||
ad9371-phy.calibrate_tx_lol_ext_en = 0
|
||||
ad9371-phy.calibrate_dpd_en = 0
|
||||
axi-ad9371-tx-hpc.out_altvoltage0_TX1_I_F1_phase = 90000
|
||||
axi-ad9371-tx-hpc.out_altvoltage0_TX1_I_F1_scale = 0.501160
|
||||
axi-ad9371-tx-hpc.out_altvoltage0_TX1_I_F1_frequency = 1999718
|
||||
axi-ad9371-tx-hpc.out_altvoltage0_TX1_I_F1_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage5_TX2_I_F2_phase = 90000
|
||||
axi-ad9371-tx-hpc.out_altvoltage5_TX2_I_F2_scale = 0.000000
|
||||
axi-ad9371-tx-hpc.out_altvoltage5_TX2_I_F2_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage5_TX2_I_F2_frequency = 1000327
|
||||
axi-ad9371-tx-hpc.out_altvoltage4_TX2_I_F1_frequency = 7999809
|
||||
axi-ad9371-tx-hpc.out_altvoltage4_TX2_I_F1_phase = 90000
|
||||
axi-ad9371-tx-hpc.out_altvoltage4_TX2_I_F1_scale = 0.251160
|
||||
axi-ad9371-tx-hpc.out_altvoltage4_TX2_I_F1_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage6_TX2_Q_F1_frequency = 7999809
|
||||
axi-ad9371-tx-hpc.out_altvoltage6_TX2_Q_F1_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage6_TX2_Q_F1_phase = 0
|
||||
axi-ad9371-tx-hpc.out_altvoltage6_TX2_Q_F1_scale = 0.251160
|
||||
axi-ad9371-tx-hpc.out_altvoltage3_TX1_Q_F2_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage3_TX1_Q_F2_phase = 0
|
||||
axi-ad9371-tx-hpc.out_altvoltage3_TX1_Q_F2_scale = 0.000000
|
||||
axi-ad9371-tx-hpc.out_altvoltage3_TX1_Q_F2_frequency = 19998117
|
||||
axi-ad9371-tx-hpc.out_altvoltage7_TX2_Q_F2_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage7_TX2_Q_F2_phase = 0
|
||||
axi-ad9371-tx-hpc.out_altvoltage7_TX2_Q_F2_scale = 0.000000
|
||||
axi-ad9371-tx-hpc.out_altvoltage7_TX2_Q_F2_frequency = 1000327
|
||||
axi-ad9371-tx-hpc.out_altvoltage2_TX1_Q_F1_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage2_TX1_Q_F1_phase = 0
|
||||
axi-ad9371-tx-hpc.out_altvoltage2_TX1_Q_F1_scale = 0.501160
|
||||
axi-ad9371-tx-hpc.out_altvoltage2_TX1_Q_F1_frequency = 1999718
|
||||
axi-ad9371-tx-hpc.out_altvoltage1_TX1_I_F2_frequency = 19998117
|
||||
axi-ad9371-tx-hpc.out_altvoltage1_TX1_I_F2_raw = 1
|
||||
axi-ad9371-tx-hpc.out_altvoltage1_TX1_I_F2_phase = 90000
|
||||
axi-ad9371-tx-hpc.out_altvoltage1_TX1_I_F2_scale = 0.000000
|
||||
load_myk_profile_file = /targets/ARCH/ADRV9371_ZC706/USERSPACE/PROFILES/profileNR80MHz.txt
|
||||
dds_mode_tx1 = 1
|
||||
dds_mode_tx2 = 1
|
||||
dac_buf_filename = /usr/local/lib/osc/waveforms/LTE20.mat
|
||||
tx_channel_0 = 1
|
||||
tx_channel_1 = 1
|
||||
tx_channel_2 = 0
|
||||
tx_channel_3 = 0
|
||||
global_settings_show = 1
|
||||
tx_show = 1
|
||||
rx_show = 1
|
||||
obs_show = 1
|
||||
fpga_show = 1
|
||||
|
||||
[ADRV9371_ZC706]
|
||||
# NO_DEBUG=0; DEBUG=1
|
||||
debug_mode = 0
|
||||
# 20MHz 40MHz 80MHz=1; 10MHz=2; 5MHz=4
|
||||
interpolation_decimation_factor = 1
|
||||
# is taken into account only if "ad9371-phy.in_voltage0_gain_control_mode = manual"
|
||||
rx_gain_offset = 53
|
||||
@@ -413,7 +413,7 @@ static void *UE_thread_synch(void *arg) {
|
||||
//UE->rfdevice.trx_set_gains_func(&openair0,&openair0_cfg[0]);
|
||||
//UE->rfdevice.trx_stop_func(&UE->rfdevice);
|
||||
// sleep(1);
|
||||
//nr_init_frame_parms(&UE->frame_parms);
|
||||
nr_init_frame_parms_ue(&UE->frame_parms);
|
||||
/*if (UE->rfdevice.trx_start_func(&UE->rfdevice) != 0 ) {
|
||||
LOG_E(HW,"Could not start the device\n");
|
||||
oai_exit=1;
|
||||
@@ -733,8 +733,8 @@ void *UE_thread(void *arg) {
|
||||
|
||||
#ifdef NAS_UE
|
||||
MessageDef *message_p;
|
||||
message_p = itti_alloc_new_message(TASK_NAS_UE, INITIALIZE_MESSAGE);
|
||||
itti_send_msg_to_task (TASK_NAS_UE, UE->Mod_id + NB_eNB_INST, message_p);
|
||||
//message_p = itti_alloc_new_message(TASK_NAS_UE, INITIALIZE_MESSAGE);
|
||||
//itti_send_msg_to_task (TASK_NAS_UE, UE->Mod_id + NB_eNB_INST, message_p);
|
||||
#endif
|
||||
|
||||
int tti_nr=-1;
|
||||
|
||||
@@ -693,6 +693,73 @@ int T_dont_fork = 0; /* default is to fork, see 'T_init' to understand */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void set_default_frame_parms_single(nfapi_config_request_t *config, NR_DL_FRAME_PARMS *frame_parms) {
|
||||
|
||||
//int CC_id;
|
||||
|
||||
//for (CC_id=0; CC_id<MAX_NUM_CCs; CC_id++) {
|
||||
frame_parms = (NR_DL_FRAME_PARMS*) malloc(sizeof(NR_DL_FRAME_PARMS));
|
||||
/* Set some default values that may be overwritten while reading options */
|
||||
frame_parms = (NR_DL_FRAME_PARMS*) malloc(sizeof(NR_DL_FRAME_PARMS));
|
||||
config = (nfapi_config_request_t*) malloc(sizeof(nfapi_config_request_t));
|
||||
config->subframe_config.numerology_index_mu.value =1;
|
||||
config->subframe_config.duplex_mode.value = 1; //FDD
|
||||
config->subframe_config.dl_cyclic_prefix_type.value = 0; //NORMAL
|
||||
config->rf_config.dl_channel_bandwidth.value = 106;
|
||||
config->rf_config.ul_channel_bandwidth.value = 106;
|
||||
config->rf_config.tx_antenna_ports.value = 1;
|
||||
config->rf_config.rx_antenna_ports.value = 1;
|
||||
config->sch_config.physical_cell_id.value = 0;
|
||||
|
||||
frame_parms->frame_type = FDD;
|
||||
frame_parms->tdd_config = 3;
|
||||
//frame_parms[CC_id]->tdd_config_S = 0;
|
||||
frame_parms->N_RB_DL = 100;
|
||||
frame_parms->N_RB_UL = 100;
|
||||
frame_parms->Ncp = NORMAL;
|
||||
//frame_parms[CC_id]->Ncp_UL = NORMAL;
|
||||
frame_parms->Nid_cell = 0;
|
||||
//frame_parms[CC_id]->num_MBSFN_config = 0;
|
||||
frame_parms->nb_antenna_ports_eNB = 1;
|
||||
frame_parms->nb_antennas_tx = 1;
|
||||
frame_parms->nb_antennas_rx = 1;
|
||||
|
||||
//frame_parms[CC_id]->nushift = 0;
|
||||
|
||||
///frame_parms[CC_id]->phich_config_common.phich_resource = oneSixth;
|
||||
//frame_parms[CC_id]->phich_config_common.phich_duration = normal;
|
||||
// UL RS Config
|
||||
/*frame_parms[CC_id]->pusch_config_common.ul_ReferenceSignalsPUSCH.cyclicShift = 1;//n_DMRS1 set to 0
|
||||
frame_parms[CC_id]->pusch_config_common.ul_ReferenceSignalsPUSCH.groupHoppingEnabled = 1;
|
||||
frame_parms[CC_id]->pusch_config_common.ul_ReferenceSignalsPUSCH.sequenceHoppingEnabled = 0;
|
||||
frame_parms[CC_id]->pusch_config_common.ul_ReferenceSignalsPUSCH.groupAssignmentPUSCH = 0;
|
||||
|
||||
frame_parms[CC_id]->pusch_config_common.n_SB = 1;
|
||||
frame_parms[CC_id]->pusch_config_common.hoppingMode = 0;
|
||||
frame_parms[CC_id]->pusch_config_common.pusch_HoppingOffset = 0;
|
||||
frame_parms[CC_id]->pusch_config_common.enable64QAM = 0;
|
||||
|
||||
frame_parms[CC_id]->prach_config_common.rootSequenceIndex=22;
|
||||
frame_parms[CC_id]->prach_config_common.prach_ConfigInfo.zeroCorrelationZoneConfig=1;
|
||||
frame_parms[CC_id]->prach_config_common.prach_ConfigInfo.prach_ConfigIndex=0;
|
||||
frame_parms[CC_id]->prach_config_common.prach_ConfigInfo.highSpeedFlag=0;
|
||||
frame_parms[CC_id]->prach_config_common.prach_ConfigInfo.prach_FreqOffset=0;*/
|
||||
|
||||
// NR: Init to legacy LTE 20Mhz params
|
||||
frame_parms->numerology_index = 0;
|
||||
frame_parms->ttis_per_subframe = 1;
|
||||
frame_parms->slots_per_tti = 2;
|
||||
|
||||
downlink_frequency[0][0] = 2680000000; // Use float to avoid issue with frequency over 2^31.
|
||||
//downlink_frequency[CC_id][1] = downlink_frequency[CC_id][0];
|
||||
//downlink_frequency[CC_id][2] = downlink_frequency[CC_id][0];
|
||||
//downlink_frequency[CC_id][3] = downlink_frequency[CC_id][0];
|
||||
//printf("Downlink for CC_id %d frequency set to %u\n", CC_id, downlink_frequency[CC_id][0]);
|
||||
|
||||
//}
|
||||
|
||||
}
|
||||
void init_openair0(void);
|
||||
void init_openair0() {
|
||||
@@ -931,10 +998,10 @@ int main( int argc, char **argv ) {
|
||||
set_default_frame_parms(config[CC_id],frame_parms[CC_id]);
|
||||
|
||||
//init_ul_hopping(frame_parms[CC_id]);
|
||||
nr_init_frame_parms(config[CC_id],frame_parms[CC_id]);
|
||||
nr_init_frame_parms_ue(config[CC_id],frame_parms[CC_id]);
|
||||
printf("after init frame_parms %d\n",frame_parms[CC_id]->ofdm_symbol_size);
|
||||
// phy_init_top(frame_parms[CC_id]);
|
||||
//phy_init_lte_top(frame_parms[CC_id]);
|
||||
phy_init_nr_top(frame_parms[CC_id]);
|
||||
}
|
||||
|
||||
|
||||
@@ -1009,8 +1076,10 @@ int main( int argc, char **argv ) {
|
||||
//UE[CC_id]->pdcch_vars[1][0]->crnti = 0x1235;
|
||||
}
|
||||
|
||||
//UE[CC_id]->rx_total_gain_dB = (int)rx_gain[CC_id][0] + rx_gain_off;
|
||||
//UE[CC_id]->tx_power_max_dBm = tx_max_power[CC_id];
|
||||
rx_gain[CC_id][0] = 81;
|
||||
|
||||
UE[CC_id]->rx_total_gain_dB = (int)rx_gain[CC_id][0] + rx_gain_off;
|
||||
UE[CC_id]->tx_power_max_dBm = tx_max_power[CC_id];
|
||||
|
||||
if (frame_parms[CC_id]->frame_type==FDD) {
|
||||
UE[CC_id]->N_TA_offset = 0;
|
||||
|
||||
Reference in New Issue
Block a user