Commit 50689d1a authored by Anta Huang's avatar Anta Huang

Add additional cell config info to flexran API and message

parent f7e8f1dc
......@@ -39,6 +39,10 @@ message flex_cell_config {
optional uint32 enable_64QAM = 33; // One of the FLEQ_* enum values
optional uint32 carrier_index = 34; // Carrier component index
optional uint32 op_dl_freq = 35; // operating downlink frequency
optional uint32 op_ul_freq = 36; // operating uplink frequency
optional uint32 op_eutra_band= 37; // operating band
optional int32 op_dl_pdsch_power = 38; // operating downlink power
optional int32 op_ul_pusch_power = 39; // operating uplink power
}
message flex_ue_config {
......
......@@ -1013,10 +1013,22 @@ int flexran_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__F
cell_conf[i]->srs_mac_up_pts = flexran_get_srs_MaxUpPts(enb_id,i);
cell_conf[i]->has_srs_mac_up_pts = 1;
cell_conf[i]->op_dl_freq = flexran_agent_get_operating_dl_freq (i);
cell_conf[i]->op_dl_freq = flexran_agent_get_operating_dl_freq (enb_id,i);
cell_conf[i]->has_op_dl_freq = 1;
cell_conf[i]->op_ul_freq = flexran_agent_get_operating_ul_freq (enb_id, i);
cell_conf[i]->has_op_ul_freq = 1;
cell_conf[i]->op_eutra_band = flexran_agent_get_operating_eutra_band (enb_id,i);
cell_conf[i]->has_op_eutra_band = 1;
cell_conf[i]->op_dl_pdsch_power = flexran_agent_get_operating_pdsch_refpower(enb_id, i);
cell_conf[i]->has_op_dl_pdsch_power = 1;
cell_conf[i]->op_ul_pusch_power = flexran_agent_get_operating_pusch_p0 (enb_id,i);
cell_conf[i]->has_op_ul_pusch_power = 1;
if (flexran_get_enable64QAM(enb_id,i) == 0) {
cell_conf[i]->enable_64qam = PROTOCOL__FLEX_QAM__FLEQ_MOD_16QAM;
} else if(flexran_get_enable64QAM(enb_id,i) == 1) {
......
......@@ -958,9 +958,28 @@ int flexran_get_antenna_ports(mid_t mod_id, int CC_id){
}
float flexran_agent_get_operating_dl_freq (mid_t cc_id) {
float flexran_agent_get_operating_dl_freq (mid_t mod_id, int cc_id) {
const Enb_properties_array_t* enb_properties = enb_config_get();
return (enb_properties->properties[0]->downlink_frequency[cc_id] / 1000000);
return (enb_properties->properties[mod_id]->downlink_frequency[cc_id] / 1000000);
}
float flexran_agent_get_operating_ul_freq (mid_t mod_id, int cc_id) {
const Enb_properties_array_t* enb_properties = enb_config_get();
return ((enb_properties->properties[mod_id] ->downlink_frequency[cc_id] + enb_properties->properties[0]->uplink_frequency_offset[cc_id]) / 1000000);
}
int flexran_agent_get_operating_eutra_band (mid_t mod_id, int cc_id) {
const Enb_properties_array_t* enb_properties = enb_config_get();
return enb_properties->properties[mod_id]->eutra_band[cc_id];
}
int flexran_agent_get_operating_pdsch_refpower (mid_t mod_id, int cc_id) {
const Enb_properties_array_t* enb_properties = enb_config_get();
return enb_properties->properties[mod_id]->pdsch_referenceSignalPower[cc_id];
}
int flexran_agent_get_operating_pusch_p0 (mid_t mod_id, int cc_id) {
const Enb_properties_array_t* enb_properties = enb_config_get();
return enb_properties->properties[mod_id]->pusch_p0_Nominal[cc_id];
}
......@@ -300,5 +300,17 @@ int flexran_get_lcg(mid_t ue_id, mid_t lc_id);
/* Get direction of logical channel with id lc_id */
int flexran_get_direction(mid_t ue_id, mid_t lc_id);
/*Gety downlink frequency*/
float flexran_agent_get_operating_dl_freq (mid_t cc_id);
\ No newline at end of file
/*Get downlink frequency*/
float flexran_agent_get_operating_dl_freq (mid_t mod_id, int cc_id);
/*Get uplink frequency*/
float flexran_agent_get_operating_ul_freq (mid_t mod_id, int cc_id);
/*Get eutra band*/
int flexran_agent_get_operating_eutra_band (mid_t mod_id, int cc_id);
/*Get downlink ref signal power*/
int flexran_agent_get_operating_pdsch_refpower (mid_t mod_id, int cc_id);
/*Get uplink power*/
int flexran_agent_get_operating_pusch_p0 (mid_t mod_id, int cc_id);
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