Commit 78a47159 authored by Aikaterini Trilyraki's avatar Aikaterini Trilyraki

updated enb configuration params for rrh

parent e697b222
......@@ -177,7 +177,11 @@
#define ENB_CONFIG_STRING_RRH_GW_LOCAL_PORT "local_port"
#define ENB_CONFIG_STRING_RRH_GW_REMOTE_PORT "remote_port"
#define ENB_CONFIG_STRING_RRH_GW_ACTIVE "active"
#define ENB_CONFIG_STRING_RRH_GW_PREFERENCE "preference"
#define ENB_CONFIG_STRING_RRH_GW_TRANSPORT_PREFERENCE "tr_preference"
#define ENB_CONFIG_STRING_RRH_GW_RF_TARGET_PREFERENCE "rf_preference"
#define ENB_CONFIG_STRING_RRH_GW_IQ_TXSHIFT "iq_txshift"
#define ENB_CONFIG_STRING_RRH_GW_TX_SAMPLE_ADVANCE "tx_sample_advance"
#define ENB_CONFIG_STRING_RRH_GW_TX_SCHEDULING_ADVANCE "tx_scheduling_advance"
#define ENB_CONFIG_STRING_ASN1_VERBOSITY "Asn1_verbosity"
#define ENB_CONFIG_STRING_ASN1_VERBOSITY_NONE "none"
......@@ -291,7 +295,23 @@ static void enb_config_display(void)
printf( "\tlocal port : \t%d:\n",enb_properties.properties[i]->rrh_gw_config[j].local_port);
printf( "\tremote address : \t%s:\n",enb_properties.properties[i]->rrh_gw_config[j].remote_address);
printf( "\tremote port : \t%d:\n",enb_properties.properties[i]->rrh_gw_config[j].remote_port);
printf( "\ttransport : \t%s Ethernet:\n\n",(enb_properties.properties[i]->rrh_gw_config[j].raw == 1)? "RAW" : "UDP");
printf( "\ttx_scheduling_advance :\t%d:\n",enb_properties.properties[i]->rrh_gw_config[j].tx_scheduling_advance);
printf( "\ttx_sample_advance : \t%d:\n",enb_properties.properties[i]->rrh_gw_config[j].tx_sample_advance);
printf( "\tiq_txshift : \t%d:\n",enb_properties.properties[i]->rrh_gw_config[j].iq_txshift);
printf( "\ttransport : \t%s Ethernet:\n",(enb_properties.properties[i]->rrh_gw_config[j].raw == 1)? "RAW" : "UDP");
if (enb_properties.properties[i]->rrh_gw_config[j].exmimo == 1) {
printf( "\tRF target : \tEXMIMO:\n\n");
} else if (enb_properties.properties[i]->rrh_gw_config[j].usrp_b200 == 1) {
printf( "\tRF target : \tUSRP_B200:\n\n");
} else if (enb_properties.properties[i]->rrh_gw_config[j].usrp_x300 == 1) {
printf( "\tRF target : \tUSRP_X300:\n\n");
} else if (enb_properties.properties[i]->rrh_gw_config[j].bladerf == 1) {
printf( "\tRF target : \tBLADERF:\n\n");
} else if (enb_properties.properties[i]->rrh_gw_config[j].lmssdr == 1) {
printf( "\tRF target : \tLMSSDR:\n\n");
} else {
printf( "\tRF target : \tNONE:\n\n");
}
}
}
......@@ -479,14 +499,14 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
config_setting_t *setting_rrh_gw = NULL;
config_setting_t *setting_enb = NULL;
config_setting_t *setting_otg = NULL;
config_setting_t *subsetting_otg = NULL;
config_setting_t *subsetting_otg = NULL;
int num_enb_properties = 0;
int enb_properties_index = 0;
int num_enbs = 0;
int num_mme_address = 0;
int num_rrh_gw = 0;
int num_otg_elements =0;
int num_component_carriers =0;
int num_otg_elements = 0;
int num_component_carriers = 0;
int i = 0;
int j = 0;
int parse_errors = 0;
......@@ -588,6 +608,12 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
char* ipv6 = NULL;
char* active = NULL;
char* preference = NULL;
char* tr_preference = NULL;
char* rf_preference = NULL;
libconfig_int tx_scheduling_advance = 0;
libconfig_int tx_sample_advance = 0;
libconfig_int iq_txshift = 0;
libconfig_int local_port = 0;
libconfig_int remote_port = 0;
const char* active_enb[MAX_ENB];
......@@ -2180,7 +2206,11 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
&& config_setting_lookup_int(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_LOCAL_PORT, &local_port)
&& config_setting_lookup_int(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_REMOTE_PORT, &remote_port)
&& config_setting_lookup_string(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_ACTIVE, (const char **)&active)
&& config_setting_lookup_string(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_PREFERENCE, (const char **)&preference)
&& config_setting_lookup_string(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_TRANSPORT_PREFERENCE, (const char **)&tr_preference)
&& config_setting_lookup_string(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_RF_TARGET_PREFERENCE, (const char **)&rf_preference)
&& config_setting_lookup_int(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_IQ_TXSHIFT, &iq_txshift)
&& config_setting_lookup_int(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_TX_SAMPLE_ADVANCE, &tx_sample_advance)
&& config_setting_lookup_int(setting_rrh_gw, ENB_CONFIG_STRING_RRH_GW_TX_SCHEDULING_ADVANCE, &tx_scheduling_advance)
)
) {
AssertError (0, parse_errors ++,
......@@ -2194,21 +2224,43 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
enb_properties.properties[enb_properties_index]->rrh_gw_if_name = strdup(if_name);
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].local_address = strdup(ipv4);
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].remote_address = strdup(ipv4_remote);
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].local_port= local_port;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].remote_port= remote_port;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].local_port = local_port;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].remote_port = remote_port;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].iq_txshift = iq_txshift;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].tx_sample_advance = tx_sample_advance;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].tx_scheduling_advance= tx_scheduling_advance;
if (strcmp(active, "yes") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].active = 1;
}
if (strcmp(preference, "udp") == 0) {
if (strcmp(tr_preference, "udp") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].udp = 1;
} else if (strcmp(preference, "raw") == 0) {
} else if (strcmp(tr_preference, "raw") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].raw = 1;
} else {//if (strcmp(preference, "no") == 0)
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].udp = 1;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].raw = 1;
}
if (strcmp(rf_preference, "exmimo") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].exmimo = 1;
} else if (strcmp(rf_preference, "usrp_b200") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_b200 = 1;
} else if (strcmp(rf_preference, "usrp_x300") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_x300 = 1;
} else if (strcmp(rf_preference, "bladerf") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].bladerf = 1;
} else if (strcmp(rf_preference, "bladerf") == 0) {
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].lmssdr = 1;
} else {//if (strcmp(preference, "no") == 0)
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].exmimo = 1;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_b200 = 1;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_x300 = 1;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].bladerf = 1;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].lmssdr = 1;
}
}
} else {
enb_properties.properties[enb_properties_index]->nb_rrh_gw = 0;
......@@ -2220,6 +2272,14 @@ const Enb_properties_array_t *enb_config_init(char* lib_config_file_name_pP)
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].active = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].udp = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].raw = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].tx_scheduling_advance = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].tx_sample_advance = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].iq_txshift = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].exmimo = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_b200 = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].usrp_x300 = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].bladerf = 0;
enb_properties.properties[enb_properties_index]->rrh_gw_config[j].lmssdr = 0;
}
// SCTP SETTING
......
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