diff --git a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
index 441e193569343b1b3a619ce3e97da437d55bc9d1..c21fee213befb86e97d2399c9a26e54c12e459c9 100644
--- a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
+++ b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto
@@ -38,6 +38,7 @@ message flex_cell_config {
 	optional uint32 srs_mac_up_pts = 32;		// Boolean value. See TS 36.211, section 5.5.3.2. TDD only
 	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 
 }
 
 message flex_ue_config {
diff --git a/openair2/ENB_APP/flexran_agent_common.c b/openair2/ENB_APP/flexran_agent_common.c
index fe70a62ec8bfe6644a5c63186c1b6671feb1c2da..4067145dfd46b6af01aa565ca947a0ea858c7d9f 100644
--- a/openair2/ENB_APP/flexran_agent_common.c
+++ b/openair2/ENB_APP/flexran_agent_common.c
@@ -1013,6 +1013,10 @@ 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 (0);
+      cell_conf[i]->has_op_dl_freq = 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) {
diff --git a/openair2/ENB_APP/flexran_agent_ran_api.c b/openair2/ENB_APP/flexran_agent_ran_api.c
index ae304d1e262e1419d5c14859bfc9eaa2aaeb7ce0..685a3bf57e4d04bd23a20f6b99ead00aba7bdfe3 100644
--- a/openair2/ENB_APP/flexran_agent_ran_api.c
+++ b/openair2/ENB_APP/flexran_agent_ran_api.c
@@ -956,3 +956,11 @@ int flexran_get_antenna_ports(mid_t mod_id, int CC_id){
   return frame_parms->nb_antenna_ports_eNB;
 
 }
+
+
+float flexran_agent_get_operating_dl_freq (mid_t cc_id) {
+        const Enb_properties_array_t* enb_properties = enb_config_get();
+        return (enb_properties->properties[0]->downlink_frequency[cc_id] / 1000000);
+}
+
+
diff --git a/openair2/ENB_APP/flexran_agent_ran_api.h b/openair2/ENB_APP/flexran_agent_ran_api.h
index e80ed44ce958052b61b3506eb84b8f3a63325f6f..ed2a2a1fd538c2f7f8b44580067f7080b8492898 100644
--- a/openair2/ENB_APP/flexran_agent_ran_api.h
+++ b/openair2/ENB_APP/flexran_agent_ran_api.h
@@ -298,4 +298,7 @@ int flexran_get_ue_transmission_antenna(mid_t mod_id, mid_t ue_id);
 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);
\ No newline at end of file
+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