diff --git a/cmake_targets/CMakeLists.txt b/cmake_targets/CMakeLists.txt index c93d7077fca6f3d732af8ab873776d67433638ac..196baf166b0eee7bd8aadd1d017d07006d0f1d47 100644 --- a/cmake_targets/CMakeLists.txt +++ b/cmake_targets/CMakeLists.txt @@ -840,55 +840,55 @@ include_directories("${OPENAIR_DIR}") ################ if (ENB_AGENT_SB_IF) # set the version of protobuf messages, V3 not supported yet - add_list1_option(PRPT_VERSION V2 "PRPT MSG protobuf grammar version" V2 V3) + add_list1_option(FLPT_VERSION V2 "FLPT MSG protobuf grammar version" V2 V3) - if (${PRPT_VERSION} STREQUAL "V2") - set (PRPTDIR V2) - elseif (${PRPT_VERSION} STREQUAL "V3") - set (PRPTDIR V3) - endif(${PRPT_VERSION} STREQUAL "V2") + if (${FLPT_VERSION} STREQUAL "V2") + set (FLPTDIR V2) + elseif (${FLPT_VERSION} STREQUAL "V3") + set (FLPTDIR V3) + endif(${FLPT_VERSION} STREQUAL "V2") - set(PRPT_MSG_DIR ${OPENAIR2_DIR}/ENB_APP/MESSAGES/${PRPTDIR} ) - set(PRPT_MSG_FILES - ${PRPT_MSG_DIR}/header.proto - ${PRPT_MSG_DIR}/progran.proto - ${PRPT_MSG_DIR}/stats_common.proto - ${PRPT_MSG_DIR}/stats_messages.proto - ${PRPT_MSG_DIR}/time_common.proto - ${PRPT_MSG_DIR}/controller_commands.proto - ${PRPT_MSG_DIR}/mac_primitives.proto - ${PRPT_MSG_DIR}/config_messages.proto - ${PRPT_MSG_DIR}/config_common.proto - ${PRPT_MSG_DIR}/control_delegation.proto + set(FLPT_MSG_DIR ${OPENAIR2_DIR}/ENB_APP/MESSAGES/${FLPTDIR} ) + set(FLPT_MSG_FILES + ${FLPT_MSG_DIR}/header.proto + ${FLPT_MSG_DIR}/flexran.proto + ${FLPT_MSG_DIR}/stats_common.proto + ${FLPT_MSG_DIR}/stats_messages.proto + ${FLPT_MSG_DIR}/time_common.proto + ${FLPT_MSG_DIR}/controller_commands.proto + ${FLPT_MSG_DIR}/mac_primitives.proto + ${FLPT_MSG_DIR}/config_messages.proto + ${FLPT_MSG_DIR}/config_common.proto + ${FLPT_MSG_DIR}/control_delegation.proto ) - set(PRPT_C_DIR ${protobuf_generated_dir}/${PRPTDIR}) - #message("calling protoc_call=${protoc_call} PRPT_C_DIR=${PRPT_C_DIR} PRPT_MSG_FILES=${PRPT_MSG_FILES}") - execute_process(COMMAND ${protoc_call} ${PRPT_C_DIR} ${PRPT_MSG_DIR} ${PRPT_MSG_FILES}) - file(GLOB PRPT_source ${PRPT_C_DIR}/*.c) - set(PRPT_OAI_generated - ${PRPT_C_DIR}/header.pb-c.c - ${PRPT_C_DIR}/progran.pb-c.c - ${PRPT_C_DIR}/stats_common.pb-c.c - ${PRPT_C_DIR}/stats_messages.pb-c.c - ${PRPT_C_DIR}/time_common.pb-c.c - ${PRPT_C_DIR}/controller_commands.pb-c.c - ${PRPT_C_DIR}/mac_primitives.pb-c.c - ${PRPT_C_DIR}/config_messages.pb-c.c - ${PRPT_C_DIR}/config_common.pb-c.c - ${PRPT_C_DIR}/control_delegation.pb-c.c + set(FLPT_C_DIR ${protobuf_generated_dir}/${FLPTDIR}) + #message("calling protoc_call=${protoc_call} FLPT_C_DIR=${FLPT_C_DIR} FLPT_MSG_FILES=${FLPT_MSG_FILES}") + execute_process(COMMAND ${protoc_call} ${FLPT_C_DIR} ${FLPT_MSG_DIR} ${FLPT_MSG_FILES}) + file(GLOB FLPT_source ${FLPT_C_DIR}/*.c) + set(FLPT_OAI_generated + ${FLPT_C_DIR}/header.pb-c.c + ${FLPT_C_DIR}/flexran.pb-c.c + ${FLPT_C_DIR}/stats_common.pb-c.c + ${FLPT_C_DIR}/stats_messages.pb-c.c + ${FLPT_C_DIR}/time_common.pb-c.c + ${FLPT_C_DIR}/controller_commands.pb-c.c + ${FLPT_C_DIR}/mac_primitives.pb-c.c + ${FLPT_C_DIR}/config_messages.pb-c.c + ${FLPT_C_DIR}/config_common.pb-c.c + ${FLPT_C_DIR}/control_delegation.pb-c.c ) - file(GLOB prpt_h ${PRPT_C_DIR}/*.h) - set(prpt_h ${prpt_h} ) + file(GLOB flpt_h ${FLPT_C_DIR}/*.h) + set(flpt_h ${flpt_h} ) - add_library(PRPT_MSG - ${PRPT_OAI_generated} - ${PRPT_source} + add_library(FLPT_MSG + ${FLPT_OAI_generated} + ${FLPT_source} ) - set(PRPT_MSG_LIB PRPT_MSG) - #message("prpt c dir is : ${PRPT_C_DIR}") - include_directories (${PRPT_C_DIR}) + set(FLPT_MSG_LIB FLPT_MSG) + #message("prpt c dir is : ${FLPT_C_DIR}") + include_directories (${FLPT_C_DIR}) add_library(ASYNC_IF ${OPENAIR2_DIR}/UTIL/ASYNC_IF/socket_link.c @@ -1757,7 +1757,7 @@ add_executable(lte-softmodem target_link_libraries (lte-softmodem -ldl -Wl,--start-group - RRC_LIB S1AP_LIB S1AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB PHY LFDS L2 ${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ${ITTI_LIB} ${MIH_LIB} ${PRPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 + RRC_LIB S1AP_LIB S1AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB PHY LFDS L2 ${MSC_LIB} ${RAL_LIB} ${NAS_UE_LIB} ${ITTI_LIB} ${MIH_LIB} ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 -Wl,--end-group ) target_link_libraries (lte-softmodem ${LIBXML2_LIBRARIES}) @@ -1791,7 +1791,7 @@ add_executable(lte-softmodem-nos1 ) target_link_libraries (lte-softmodem-nos1 -Wl,--start-group - RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_LIB PHY LFDS L2 ${MSC_LIB} ${RAL_LIB} ${ITTI_LIB} ${MIH_LIB} ${PRPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 + RRC_LIB SECU_CN SECU_OSA UTIL HASHTABLE SCHED_LIB PHY LFDS L2 ${MSC_LIB} ${RAL_LIB} ${ITTI_LIB} ${MIH_LIB} ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 -Wl,--end-group ) target_link_libraries (lte-softmodem-nos1 ${LIBXML2_LIBRARIES}) @@ -1936,7 +1936,7 @@ add_executable(oaisim_nos1 target_include_directories(oaisim_nos1 PUBLIC ${OPENAIR_TARGETS}/SIMU/USER) target_link_libraries (oaisim_nos1 -Wl,--start-group - RRC_LIB X2AP_LIB SECU_CN UTIL HASHTABLE SCHED_LIB PHY LFDS ${MSC_LIB} L2 ${RAL_LIB} SIMU SIMU_ETH SECU_OSA ${ITTI_LIB} ${MIH_LIB} ${PRPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 + RRC_LIB X2AP_LIB SECU_CN UTIL HASHTABLE SCHED_LIB PHY LFDS ${MSC_LIB} L2 ${RAL_LIB} SIMU SIMU_ETH SECU_OSA ${ITTI_LIB} ${MIH_LIB} ${FLPT_MSG_LIB} ${ASYNC_IF_LIB} ${ENB_AGENT_LIB} LFDS7 -Wl,--end-group ) target_link_libraries (oaisim_nos1 ${LIBXML2_LIBRARIES} ${LAPACK_LIBRARIES}) diff --git a/openair2/ENB_APP/MESSAGES/V2/config_common.proto b/openair2/ENB_APP/MESSAGES/V2/config_common.proto index cf07f423aa355af9d920cedb9644bfb0e04b0202..51ae7112770a701d9212ebc2801e3fb6f8753322 100644 --- a/openair2/ENB_APP/MESSAGES/V2/config_common.proto +++ b/openair2/ENB_APP/MESSAGES/V2/config_common.proto @@ -5,64 +5,64 @@ package protocol; // Cell config related structures and enums // -message prp_si_config { +message flex_si_config { optional uint32 sfn = 1; optional uint32 sib1_length = 2; // The length of SIB1 in bytes optional uint32 si_window_length = 3; // The scheduling window for all SIs in SF - repeated prp_si_message si_message = 4; // List of SI messages to be sent. + repeated flex_si_message si_message = 4; // List of SI messages to be sent. // The index identifies the type of an SI message // 0 - SIB1 // 1..31 - SIx // 32..63 - PCCH } -message prp_si_message { +message flex_si_message { optional uint32 periodicity = 1; // Periodicity of SI msg in radio frames optional uint32 length = 2; // The length of the SI message in bytes } -enum prp_hopping_mode { - PRHM_INTER = 0; - PRHM_INTERINTRA = 1; +enum flex_hopping_mode { + FLHM_INTER = 0; + FLHM_INTERINTRA = 1; } -enum prp_phich_resource { - PRPR_ONE_SIXTH = 0; - PRPR_HALF = 1; - PRPR_ONE = 2; - PRPR_TWO = 3; +enum flex_phich_resource { + FLPR_ONE_SIXTH = 0; + FLPR_HALF = 1; + FLPR_ONE = 2; + FLPR_TWO = 3; } -enum prp_phich_duration { - PRPD_NORMAL = 0; - PRPD_EXTENDED = 1; +enum flex_phich_duration { + FLPD_NORMAL = 0; + FLPD_EXTENDED = 1; } -enum prp_ul_cyclic_prefix_length { - PRUCPL_NORMAL = 0; - PRUCPL_EXTENDED = 1; +enum flex_ul_cyclic_prefix_length { + FLUCPL_NORMAL = 0; + FLUCPL_EXTENDED = 1; } -enum prp_dl_cyclic_prefix_length { - PRDCPL_NORMAL = 0; - PRDCPL_EXTENDED = 1; +enum flex_dl_cyclic_prefix_length { + FLDCPL_NORMAL = 0; + FLDCPL_EXTENDED = 1; } -enum prp_duplex_mode { - PRDM_TDD = 0; - PRDM_FDD = 1; +enum flex_duplex_mode { + FLDM_TDD = 0; + FLDM_FDD = 1; } -enum prp_qam { - PREQ_MOD_16QAM = 0; - PREQ_MOD_64QAM = 1; +enum flex_qam { + FLEQ_MOD_16QAM = 0; + FLEQ_MOD_64QAM = 1; } // // UE config related structures and enums // -message prp_drx_config { +message flex_drx_config { optional uint32 on_duration_timer = 1; // Timer in SF. See TS 36.321 optional uint32 drx_inactivity_timer = 2; // Timer in SF. See TS 36.321 optional uint32 drx_retransmission_timer = 3; // Timer in SF. See TS 36.321 @@ -72,30 +72,30 @@ message prp_drx_config { optional uint32 drx_short_cycle_timer = 7; // Timer in subframes. See TS 36.321 } -message prp_sps_config { +message flex_sps_config { optional uint32 semi_persistent_sched_interval_UL = 1; // SPS UL scheduling interval in SF optional uint32 semi_persistent_sched_interval_DL = 2; // SPS DL scheduling interval in SF optional uint32 num_of_conf_sps_proc = 3; // Number of SPS HARQ processes. See TS 36.321 repeated uint32 n1_PUCCH_AN_persistent_element = 4;// See TS36.213. Ignored when config is used - // as part of PRPT_SET_UE_CONFIG + // as part of FLPT_SET_UE_CONFIG optional uint32 implicit_release_after = 5; // number of empty transmissions before release of SPS } -message prp_sr_config { +message flex_sr_config { optional uint32 sr_action = 1; // Indicates if SR config should be changed or released - // One of the PRSRA_* enum values + // One of the FLSRA_* enum values optional uint32 sched_interval = 2; // SR scheduling interval in SF optional uint32 dsr_trans_max = 3; // See TS 36.213 } -message prp_cqi_config { +message flex_cqi_config { optional uint32 cqi_action = 1; // Indicats if CQI changed or released. - // One of the PRSRA_* enum values + // One of the FLSRA_* enum values optional uint32 cqi_sched_interval = 2; // CQI scheduling interval in SF optional uint32 ri_sched_interval = 3; // RI scheduling interval in SF } -message prp_ue_capabilities { +message flex_ue_capabilities { optional uint32 half_duplex = 1; // Boolean value. Only half duplex support. FDD operation optional uint32 intra_SF_hopping = 2; // Support for intra-subframe hopping. Boolean value optional uint32 type2_sb_1 = 3; // Support for type 2 hopping with n_sb > 1 @@ -103,7 +103,7 @@ message prp_ue_capabilities { optional uint32 res_alloc_type1 = 5; // Boolean value. UE support for resource allocation type 1 } -message prp_scell_config { +message flex_scell_config { optional uint32 carrier_index = 1; // Id of the carrier component optional uint32 scell_index = 2; // Index of this Scell (RRC SCellIndex) optional uint32 use_ccs = 3; // Boolean value. Indicates if cross-carrier scheduling @@ -113,46 +113,46 @@ message prp_scell_config { optional uint32 pdsch_start = 5; // Starting OFDM symbol of PDSCH data region for this SCell } -enum prp_meas_gap_config_pattern { - PRMGCP_GP1 = 0; - PRMGCP_GP2 = 1; - PRMGCP_OFF = 2; +enum flex_meas_gap_config_pattern { + FLMGCP_GP1 = 0; + FLMGCP_GP2 = 1; + FLMGCP_OFF = 2; } -enum prp_setup_release_action { - PRSRA_SETUP = 0; - PRSRA_RELEASE = 1; +enum flex_setup_release_action { + FLSRA_SETUP = 0; + FLSRA_RELEASE = 1; } -enum prp_ue_transmission_antenna { - PRUTA_NONE = 0; - PRUTA_OPEN_LOOP = 1; - PRUTA_CLOSED_LOOP = 2; +enum flex_ue_transmission_antenna { + FLUTA_NONE = 0; + FLUTA_OPEN_LOOP = 1; + FLUTA_CLOSED_LOOP = 2; } -enum prp_aperiodic_cqi_report_mode { - PRACRM_RM12 = 0; - PRACRM_RM20 = 1; - PRACRM_RM22 = 2; - PRACRM_RM30 = 3; - PRACRM_RM31 = 4; - PRACRM_NONE = 5; +enum flex_aperiodic_cqi_report_mode { + FLACRM_RM12 = 0; + FLACRM_RM20 = 1; + FLACRM_RM22 = 2; + FLACRM_RM30 = 3; + FLACRM_RM31 = 4; + FLACRM_NONE = 5; } -enum prp_tdd_ack_nack_feedback_mode { - PRTANFM_BUNDLING = 0; - PRTANFM_MULTIPLEXING = 1; +enum flex_tdd_ack_nack_feedback_mode { + FLTANFM_BUNDLING = 0; + FLTANFM_MULTIPLEXING = 1; } // // Logical channel config related structures and enums // -message prp_lc_config { +message flex_lc_config { optional uint32 lcid = 1; // The logical channel id optional uint32 lcg = 2; // The logical channel group (0..3) the LC is mapped to - optional uint32 direction = 3; // The LC direction. One of the PRLCD_* enum values - optional uint32 qos_bearer_type = 4;// GBR or NGBR bearer. One of the PRQBT_* enum values + optional uint32 direction = 3; // The LC direction. One of the FLLCD_* enum values + optional uint32 qos_bearer_type = 4;// GBR or NGBR bearer. One of the FLQBT_* enum values optional uint32 qci = 5; // The QCI defined in TS 23.203, coded as defined in TS 36.413 // One less than the actual QCI value optional uint64 e_RAB_max_bitrate_UL = 6; // In bps (GBR only) @@ -161,20 +161,20 @@ message prp_lc_config { optional uint64 e_RAB_guaranteed_bitrate_DL = 9; // In bps (GBR only) } -enum prp_lc_direction { - PRLCD_UL = 0; - PRLCD_DL = 1; - PRLCD_BOTH = 2; +enum flex_lc_direction { + FLLCD_UL = 0; + FLLCD_DL = 1; + FLLCD_BOTH = 2; } -enum prp_qos_bearer_type { - PRQBT_NON_GBR = 0; - PRQBT_GBR = 1; +enum flex_qos_bearer_type { + FLQBT_NON_GBR = 0; + FLQBT_GBR = 1; } -enum prp_ue_state_change_type { - PRUESC_UPDATED = 0; - PRUESC_ACTIVATED = 1; - PRUESC_DEACTIVATED = 2; - PRUESC_MOVED = 3; +enum flex_ue_state_change_type { + FLUESC_UPDATED = 0; + FLUESC_ACTIVATED = 1; + FLUESC_DEACTIVATED = 2; + FLUESC_MOVED = 3; } \ No newline at end of file diff --git a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto index 4e1151a7e83426ed764c70b9130ae53058f11f7e..441e193569343b1b3a619ce3e97da437d55bc9d1 100644 --- a/openair2/ENB_APP/MESSAGES/V2/config_messages.proto +++ b/openair2/ENB_APP/MESSAGES/V2/config_messages.proto @@ -3,23 +3,23 @@ package protocol; import "config_common.proto"; -message prp_cell_config { +message flex_cell_config { optional uint32 phy_cell_id = 1; // The PCI of this cell optional uint32 cell_id = 2; // The PLMN cell id of this cell optional uint32 pusch_hopping_offset = 3; // PUSCH resources in RBs for hopping - optional uint32 hopping_mode = 4; // One of the PRHM_* enum values + optional uint32 hopping_mode = 4; // One of the FLHM_* enum values optional uint32 n_sb = 5; // The number of subbands optional uint32 phich_resource = 6; // The number of REGs used for PHICH - // One of the PRPR_* enum values - optional uint32 phich_duration = 7; // One of the PRPD_* enum values + // One of the FLPR_* enum values + optional uint32 phich_duration = 7; // One of the FLPD_* enum values optional uint32 init_nr_PDCCH_OFDM_sym = 8; // See TS 36.211, section 6.9 - optional prp_si_config si_config = 9; // The SI configuration + optional flex_si_config si_config = 9; // The SI configuration optional uint32 dl_bandwidth = 10; // The DL transmission bandwidth in RBs optional uint32 ul_bandwidth = 11; // The UL transmission bandwidth in RBs - optional uint32 ul_cyclic_prefix_length = 13; // One of the PRUCPL_* enum values - optional uint32 dl_cyclic_prefix_length = 14; // One of the PRDCPL_* enum values + optional uint32 ul_cyclic_prefix_length = 13; // One of the FLUCPL_* enum values + optional uint32 dl_cyclic_prefix_length = 14; // One of the FLDCPL_* enum values optional uint32 antenna_ports_count = 15; // Number of cell specific antenna ports - optional uint32 duplex_mode = 16; // One of the PRDM_* enum values + optional uint32 duplex_mode = 16; // One of the FLDM_* enum values optional uint32 subframe_assignment = 17; // DL/UL subframe assignment. TDD only optional uint32 special_subframe_patterns = 18; // TDD only. See TS 36.211, table 4.2.1 repeated uint32 mbsfn_subframe_config_rfperiod = 19; // The MBSFN radio frame period (Optional) @@ -36,30 +36,30 @@ message prp_cell_config { optional uint32 srs_subframe_config = 30; // See TS 36.211, table 5.5.3.3-1 and 2 optional uint32 srs_bw_config = 31; // See TS 36.211, section 5.5.3.2 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 PREQ_* enum values + optional uint32 enable_64QAM = 33; // One of the FLEQ_* enum values optional uint32 carrier_index = 34; // Carrier component index } -message prp_ue_config { +message flex_ue_config { optional uint32 rnti = 1; - optional prp_drx_config drx_config = 2; // The DRX configuration (Optional) + optional flex_drx_config drx_config = 2; // The DRX configuration (Optional) optional uint32 time_alignment_timer = 3; // Timer in SF. Control the synchronization // status of the UE, not the actual advance procedure // See TS 36.321 optional uint32 meas_gap_config_pattern = 4; // Measurement gap configuration. - // One of the PRMGCP_* enum values + // One of the FLMGCP_* enum values // See TS 36.133 optional uint32 meas_gap_config_sf_offset = 5; // Measurement gap offset if applicable - optional prp_sps_config sps_config = 6; // The SPS configuration (Optional) - optional prp_sr_config sr_config = 7; // The SR configuration (Optional) - optional prp_cqi_config cqi_config = 8; // The CQI configuration (Optional) + optional flex_sps_config sps_config = 6; // The SPS configuration (Optional) + optional flex_sr_config sr_config = 7; // The SR configuration (Optional) + optional flex_cqi_config cqi_config = 8; // The CQI configuration (Optional) optional uint32 transmission_mode = 9; // The UE transmission mode optional uint64 ue_aggregated_max_bitrate_UL = 10; // Aggregated bit-rate of non-gbr bearer // per UE. See TS 36.413 optional uint64 ue_aggregated_max_bitrate_DL = 11; // Aggregated bit-rate of non-gbr bearer // per UE. See TS 36.413 - optional prp_ue_capabilities capabilities = 12; - optional uint32 ue_transmission_antenna = 13; // One of the PRUTA_* enum values + optional flex_ue_capabilities capabilities = 12; + optional uint32 ue_transmission_antenna = 13; // One of the FLUTA_* enum values optional uint32 tti_bundling = 14; // Boolean value. See TS 36.321 optional uint32 max_HARQ_tx = 15; // The max HARQ retransmission for UL optional uint32 beta_offset_ACK_index = 16; // See TS 36.213 @@ -67,20 +67,20 @@ message prp_ue_config { optional uint32 beta_offset_CQI_index = 18; // See TS 36.213 optional uint32 ack_nack_simultaneous_trans = 19;// Boolean. See TS 36.213 optional uint32 simultaneous_ack_nack_cqi = 20; // Boolean. See TS 36.213 - optional uint32 aperiodic_cqi_rep_mode = 21; // One of the PRACRM_* enum values - optional uint32 tdd_ack_nack_feedback = 22; // One of the PRTANFM_* enum values + optional uint32 aperiodic_cqi_rep_mode = 21; // One of the FLACRM_* enum values + optional uint32 tdd_ack_nack_feedback = 22; // One of the FLTANFM_* enum values optional uint32 ack_nack_repetition_factor = 23;// See TS 36.213, section 10.1 optional uint32 extended_bsr_size = 24; // Boolean for extended BSR size optional uint32 ca_support = 25; // Boolean. Support for carrier aggregation optional uint32 cross_carrier_sched_support = 26; // Boolean value optional uint32 pcell_carrier_index = 27; // Index of primary cell - repeated prp_scell_config scell_config = 28; // Secondary cells configuration + repeated flex_scell_config scell_config = 28; // Secondary cells configuration optional uint32 scell_deactivation_timer = 29;// Deactivation timer for secondary cell } -message prp_lc_ue_config { +message flex_lc_ue_config { optional uint32 rnti = 1; - repeated prp_lc_config lc_config = 2; // A list of LC configurations for the given UE + repeated flex_lc_config lc_config = 2; // A list of LC configurations for the given UE } diff --git a/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto b/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto index c5ce58d3a2122660318351c10945b4890d03f37d..3a5efaf7d40d427d6b1fa3185eba77f36d460ff2 100644 --- a/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto +++ b/openair2/ENB_APP/MESSAGES/V2/control_delegation.proto @@ -1,6 +1,6 @@ //'syntax = "proto2";' package protocol; -enum prp_control_delegation_type { - PRCDT_MAC_DL_UE_SCHEDULER = 1; // DL UE scheduler delegation +enum flex_control_delegation_type { + FLCDT_MAC_DL_UE_SCHEDULER = 1; // DL UE scheduler delegation } \ No newline at end of file diff --git a/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto b/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto index 4ef8c0a370b2217549e56f48780a0f2927a82859..cbec332b304085d4389d7b3498556fc29a9803dd 100644 --- a/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto +++ b/openair2/ENB_APP/MESSAGES/V2/controller_commands.proto @@ -6,11 +6,11 @@ import "mac_primitives.proto"; // Body of UE DL MAC scheduling configuration info // -message prp_dl_data { +message flex_dl_data { optional uint32 rnti = 1; - optional prp_dl_dci dl_dci = 2; + optional flex_dl_dci dl_dci = 2; repeated uint32 ce_bitmap = 3; // list of 2 MAC CEs, one for each TB - repeated prp_rlc_pdu rlc_pdu = 4; // list of parameters for the creation of RLC PDUs. One for each lcid + repeated flex_rlc_pdu rlc_pdu = 4; // list of parameters for the creation of RLC PDUs. One for each lcid optional uint32 serv_cell_index = 5; optional uint32 act_deact_ce = 6; //Hex content of MAC CE for Activation/Deactivation in CA } @@ -18,10 +18,10 @@ message prp_dl_data { // // Body of the RAR scheduler configuration // -message prp_dl_rar { +message flex_dl_rar { optional uint32 rnti = 1; optional uint32 grant = 2; // The 20-bit UL grant. TS 36.213, sec 6.2 - optional prp_dl_dci rar_dci = 3; + optional flex_dl_dci rar_dci = 3; optional uint32 carrier_index = 4; // The carrier index for the RAR } @@ -29,13 +29,13 @@ message prp_dl_rar { // Body of the paging/broadcast configuration message // -message prp_dl_broadcast { - optional uint32 type = 1; // The PRBT_* values +message flex_dl_broadcast { + optional uint32 type = 1; // The FLBT_* values optional uint32 index = 2; // Index of the broadcast message: // 0 - SIB1, // 1..31 - Six, - // 32..63 - PCCH (PCCH index obtained from prp_paging_info) - optional prp_dl_dci broad_dci = 3; + // 32..63 - PCCH (PCCH index obtained from flex_paging_info) + optional flex_dl_dci broad_dci = 3; optional uint32 carrier_index = 4; // Index of the carrier for broadcast } @@ -43,7 +43,7 @@ message prp_dl_broadcast { // Body of the OFDM symbol count message // -message prp_pdcch_ofdm_sym_count { +message flex_pdcch_ofdm_sym_count { optional uint32 carrier_index = 1; optional uint32 num_pdcch_ofdm_symbols = 2; } @@ -52,7 +52,7 @@ message prp_pdcch_ofdm_sym_count { // Types of commands related enums // -enum prp_broadcast_type { - PRBT_BCCH = 0; - PRBT_PCCH = 1; +enum flex_broadcast_type { + FLBT_BCCH = 0; + FLBT_PCCH = 1; } \ No newline at end of file diff --git a/openair2/ENB_APP/MESSAGES/V2/flexran.proto b/openair2/ENB_APP/MESSAGES/V2/flexran.proto new file mode 100644 index 0000000000000000000000000000000000000000..3a1d40bca69479daaafa42f055e690add87426ef --- /dev/null +++ b/openair2/ENB_APP/MESSAGES/V2/flexran.proto @@ -0,0 +1,210 @@ +//'syntax = "proto2";' +package protocol; + +import "stats_messages.proto"; +import "header.proto"; +import "time_common.proto"; +import "config_messages.proto"; +import "controller_commands.proto"; +import "control_delegation.proto"; + +message flexran_message { + optional flexran_direction msg_dir = 100; + oneof msg { + flex_hello hello_msg = 1; + flex_echo_request echo_request_msg = 2; + flex_echo_reply echo_reply_msg = 3; + flex_stats_request stats_request_msg = 4; + flex_stats_reply stats_reply_msg = 5; + flex_sf_trigger sf_trigger_msg = 6; + flex_ul_sr_info ul_sr_info_msg = 7; + flex_enb_config_request enb_config_request_msg = 8; + flex_enb_config_reply enb_config_reply_msg = 9; + flex_ue_config_request ue_config_request_msg = 10; + flex_ue_config_reply ue_config_reply_msg = 11; + flex_lc_config_request lc_config_request_msg = 12; + flex_lc_config_reply lc_config_reply_msg = 13; + flex_dl_mac_config dl_mac_config_msg = 14; + flex_ue_state_change ue_state_change_msg = 15; + flex_control_delegation control_delegation_msg = 16; + flex_agent_reconfiguration agent_reconfiguration_msg = 17; + } +} + +enum flexran_direction { + //option allow_alias = true; + NOT_SET = 0; + INITIATING_MESSAGE = 1; + SUCCESSFUL_OUTCOME=2; + UNSUCCESSFUL_OUTCOME=3; +} + +enum flexran_err { + option allow_alias = true; + // message errors + NO_ERR = 0; + MSG_DEQUEUING = -1; + MSG_ENQUEUING = -2; + MSG_DECODING = -3; + MSG_ENCODING = -4; + MSG_BUILD = -5; + MSG_NOT_SUPPORTED = -6; + MSG_NOT_HANDLED = -7; + MSG_NOT_VALIDATED = -8; + MSG_OUT_DATED = -9; + + + // other erros + UNEXPECTED = -100; +} + +// +// Maintenance and discovery messages +// + +message flex_hello { + optional flex_header header = 1; +} + +message flex_echo_request { + optional flex_header header = 1; + extensions 100 to 199; +} + + +message flex_echo_reply { + optional flex_header header = 1; + extensions 100 to 199; +} + + +// +// Statistics request and reply message +// + +message flex_stats_request { + optional flex_header header = 1; + optional flex_stats_type type = 2; + oneof body { + flex_complete_stats_request complete_stats_request = 3; + flex_cell_stats_request cell_stats_request = 4; + flex_ue_stats_request ue_stats_request = 5; + } +} + +message flex_stats_reply { + optional flex_header header = 1; + repeated flex_ue_stats_report ue_report = 2; + repeated flex_cell_stats_report cell_report = 3; +} + +// +// Time indication messages +// + +message flex_sf_trigger { + optional flex_header header = 1; + optional uint32 sfn_sf = 2; + repeated flex_dl_info dl_info = 3; + repeated flex_ul_info ul_info = 4; +} + +// +// Asynchronous messages +// + +message flex_ul_sr_info { + optional flex_header header = 1; + optional uint32 sfn_sf = 2; + repeated uint32 rnti = 3; +} + +// +// eNB configuration messages +// +message flex_enb_config_request { + optional flex_header header = 1; +} + +message flex_enb_config_reply { + optional flex_header header = 1; + optional uint32 eNB_id = 2; // Unique id to distinguish the eNB + repeated flex_cell_config cell_config = 3; +} + +message flex_ue_config_request { + optional flex_header header = 1; +} + +message flex_ue_config_reply { + optional flex_header header = 1; + repeated flex_ue_config ue_config = 2; +} + +message flex_lc_config_request { + optional flex_header header = 1; +} + +message flex_lc_config_reply { + optional flex_header header = 1; + repeated flex_lc_ue_config lc_ue_config = 2; +} + +// +// Controller command messages +// + +message flex_dl_mac_config { + optional flex_header header = 1; + optional uint32 sfn_sf = 2; + repeated flex_dl_data dl_ue_data = 3; + repeated flex_dl_rar dl_rar = 4; + repeated flex_dl_broadcast dl_broadcast = 5; + repeated flex_pdcch_ofdm_sym_count ofdm_sym = 6; // OFDM symbol count for each CC +} + +// +// UE state change message +// + +message flex_ue_state_change { + optional flex_header header = 1; + optional uint32 type = 2; // One of the FLUESC_* values + optional flex_ue_config config = 3; // Body of the message (based on type) +} + +// +// Control delegation message +// + +message flex_control_delegation { + optional flex_header header = 1; + optional uint32 delegation_type = 2; // Bitmap of FLCDT_* flags + optional bytes payload = 3; // Byte array of shared lib containing the delegated functions + optional string name = 4; // The delegated functions names ordered based on bitmap flags +} + +// +// Agent reconfiguration message +// + +message flex_agent_reconfiguration { + optional flex_header header = 1; + optional string policy = 2; // The policy changes using YAML syntax in string format +} + +// Extensions of the echo request and reply +// messages for carrying a latency value in ms +message flex_echo_request_latency { + extend flex_echo_request { + optional uint32 latency = 100; + } +} + +message flex_echo_reply_latency { + extend flex_echo_reply { + optional uint32 latency = 100; + } +} + + diff --git a/openair2/ENB_APP/MESSAGES/V2/header.proto b/openair2/ENB_APP/MESSAGES/V2/header.proto index 44ad93e16bd4b985a96a2464cfbad8f4a79b9e35..dfd5ea6c9951ef2b266677413a4aec128c839b24 100644 --- a/openair2/ENB_APP/MESSAGES/V2/header.proto +++ b/openair2/ENB_APP/MESSAGES/V2/header.proto @@ -1,43 +1,43 @@ package protocol; -message prp_header { +message flex_header { optional uint32 version = 1; optional uint32 type = 2; optional uint32 xid = 4; } -enum prp_type { +enum flex_type { // Discovery and maintenance messages - PRPT_HELLO = 0; - PRPT_ECHO_REQUEST = 1; - PRPT_ECHO_REPLY = 2; + FLPT_HELLO = 0; + FLPT_ECHO_REQUEST = 1; + FLPT_ECHO_REPLY = 2; // Statistics and measurement messages - PRPT_STATS_REQUEST = 3; - PRPT_STATS_REPLY = 4; + FLPT_STATS_REQUEST = 3; + FLPT_STATS_REPLY = 4; // Time indication messages - PRPT_SF_TRIGGER = 5; + FLPT_SF_TRIGGER = 5; // Asynchronous messages - PRPT_UL_SR_INFO = 6; + FLPT_UL_SR_INFO = 6; // eNB configuration messages - PRPT_GET_ENB_CONFIG_REQUEST = 7; - PRPT_GET_ENB_CONFIG_REPLY = 8; - PRPT_GET_UE_CONFIG_REQUEST = 9; - PRPT_GET_UE_CONFIG_REPLY = 10; - PRPT_GET_LC_CONFIG_REQUEST = 11; - PRPT_GET_LC_CONFIG_REPLY = 12; + FLPT_GET_ENB_CONFIG_REQUEST = 7; + FLPT_GET_ENB_CONFIG_REPLY = 8; + FLPT_GET_UE_CONFIG_REQUEST = 9; + FLPT_GET_UE_CONFIG_REPLY = 10; + FLPT_GET_LC_CONFIG_REQUEST = 11; + FLPT_GET_LC_CONFIG_REPLY = 12; //Controller command messages - PRPT_DL_MAC_CONFIG = 13; + FLPT_DL_MAC_CONFIG = 13; // UE state change messages - PRPT_UE_STATE_CHANGE = 14; + FLPT_UE_STATE_CHANGE = 14; // Control delegation messages - PRPT_DELEGATE_CONTROL = 15; - PRPT_RECONFIGURE_AGENT = 16; + FLPT_DELEGATE_CONTROL = 15; + FLPT_RECONFIGURE_AGENT = 16; } diff --git a/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto b/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto index 4378e6d6682b504f59ca6a5cde0a34839d26edd2..be7c72ab7b07a4dd69bc99d5f7c4b9765d79c1c9 100644 --- a/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto +++ b/openair2/ENB_APP/MESSAGES/V2/mac_primitives.proto @@ -4,7 +4,7 @@ package protocol; // Message containing the DL DCI info // -message prp_dl_dci { +message flex_dl_dci { optional uint32 rnti = 1; optional uint32 res_alloc = 2; // Type of resource allocation optional uint32 rb_bitmap = 3; // Bitmap for RB allocation @@ -17,17 +17,17 @@ message prp_dl_dci { optional uint32 aggr_level = 10; optional uint32 precoding_info = 11; // 2 antenna ports:0..6, // 4 antenna ports:0..50 - optional uint32 format = 12; // DCI format. A PRDCIF_* value + optional uint32 format = 12; // DCI format. A FLDCIF_* value optional uint32 tpc = 13; // TS 36.213, sec 5.1.1.1 optional uint32 harq_process = 14; // HARQ process ID optional uint32 dai = 15; // TDD only - optional uint32 vrb_format = 16; // One of the PRVRBF_* values + optional uint32 vrb_format = 16; // One of the FLVRBF_* values optional uint32 tb_swap = 17; // Boolean. TB to codeword swap flag optional uint32 sps_release = 18; // Flag value optional uint32 pdcch_order = 19; optional uint32 preamble_index = 20; // Only valid if pdcch_order = 1 optional uint32 prach_mask_index = 21; // Only valid if pdcch_order = 1 - optional uint32 n_gap = 22; // One of the PRNGV_* values + optional uint32 n_gap = 22; // One of the FLNGV_* values optional uint32 tbs_idx = 23; // The TBS index for Format 1A optional uint32 dl_power_offset = 24; // For format 1D optional uint32 pdcch_power_offset = 25; // DL PDCCH power boosting in dB @@ -39,11 +39,11 @@ message prp_dl_dci { // Messages related to the creation of RLC PDUs // -message prp_rlc_pdu { - repeated prp_rlc_pdu_tb rlc_pdu_tb = 1; // list of parameters for the creation of RLC PDUs. One for each TB +message flex_rlc_pdu { + repeated flex_rlc_pdu_tb rlc_pdu_tb = 1; // list of parameters for the creation of RLC PDUs. One for each TB } -message prp_rlc_pdu_tb { +message flex_rlc_pdu_tb { optional uint32 logical_channel_id = 1; optional uint32 size = 2; // Maximum RLC PDU to be created in bytes } @@ -52,25 +52,25 @@ message prp_rlc_pdu_tb { // MAC content types related enums // -enum prp_dci_format { - PRDCIF_1 = 0; - PRDCIF_1A = 1; - PRDCIF_1B = 2; - PRDCIF_1C = 3; - PRDCIF_1D = 4; - PRDCIF_2 = 5; - PRDCIF_2A = 6; - PRDCIF_2B = 7; - PRDCIF_3 = 8; - PRDCIF_3A = 9; +enum flex_dci_format { + FLDCIF_1 = 0; + FLDCIF_1A = 1; + FLDCIF_1B = 2; + FLDCIF_1C = 3; + FLDCIF_1D = 4; + FLDCIF_2 = 5; + FLDCIF_2A = 6; + FLDCIF_2B = 7; + FLDCIF_3 = 8; + FLDCIF_3A = 9; } -enum prp_vrb_format { - PRVRBF_LOCALIZED = 0; - PRVRBF_DISTRIBUTED = 1; +enum flex_vrb_format { + FLVRBF_LOCALIZED = 0; + FLVRBF_DISTRIBUTED = 1; } -enum prp_ngap_val { - PRNGV_1 = 0; - PRNGV_2 = 1; +enum flex_ngap_val { + FLNGV_1 = 0; + FLNGV_2 = 1; } \ No newline at end of file diff --git a/openair2/ENB_APP/MESSAGES/V2/progran.proto b/openair2/ENB_APP/MESSAGES/V2/progran.proto deleted file mode 100644 index 235aba4363d7ca75533c0ba3273c4e7d33c9b924..0000000000000000000000000000000000000000 --- a/openair2/ENB_APP/MESSAGES/V2/progran.proto +++ /dev/null @@ -1,210 +0,0 @@ -//'syntax = "proto2";' -package protocol; - -import "stats_messages.proto"; -import "header.proto"; -import "time_common.proto"; -import "config_messages.proto"; -import "controller_commands.proto"; -import "control_delegation.proto"; - -message progran_message { - optional progran_direction msg_dir = 100; - oneof msg { - prp_hello hello_msg = 1; - prp_echo_request echo_request_msg = 2; - prp_echo_reply echo_reply_msg = 3; - prp_stats_request stats_request_msg = 4; - prp_stats_reply stats_reply_msg = 5; - prp_sf_trigger sf_trigger_msg = 6; - prp_ul_sr_info ul_sr_info_msg = 7; - prp_enb_config_request enb_config_request_msg = 8; - prp_enb_config_reply enb_config_reply_msg = 9; - prp_ue_config_request ue_config_request_msg = 10; - prp_ue_config_reply ue_config_reply_msg = 11; - prp_lc_config_request lc_config_request_msg = 12; - prp_lc_config_reply lc_config_reply_msg = 13; - prp_dl_mac_config dl_mac_config_msg = 14; - prp_ue_state_change ue_state_change_msg = 15; - prp_control_delegation control_delegation_msg = 16; - prp_agent_reconfiguration agent_reconfiguration_msg = 17; - } -} - -enum progran_direction { - //option allow_alias = true; - NOT_SET = 0; - INITIATING_MESSAGE = 1; - SUCCESSFUL_OUTCOME=2; - UNSUCCESSFUL_OUTCOME=3; -} - -enum progran_err { - option allow_alias = true; - // message errors - NO_ERR = 0; - MSG_DEQUEUING = -1; - MSG_ENQUEUING = -2; - MSG_DECODING = -3; - MSG_ENCODING = -4; - MSG_BUILD = -5; - MSG_NOT_SUPPORTED = -6; - MSG_NOT_HANDLED = -7; - MSG_NOT_VALIDATED = -8; - MSG_OUT_DATED = -9; - - - // other erros - UNEXPECTED = -100; -} - -// -// Maintenance and discovery messages -// - -message prp_hello { - optional prp_header header = 1; -} - -message prp_echo_request { - optional prp_header header = 1; - extensions 100 to 199; -} - - -message prp_echo_reply { - optional prp_header header = 1; - extensions 100 to 199; -} - - -// -// Statistics request and reply message -// - -message prp_stats_request { - optional prp_header header = 1; - optional prp_stats_type type = 2; - oneof body { - prp_complete_stats_request complete_stats_request = 3; - prp_cell_stats_request cell_stats_request = 4; - prp_ue_stats_request ue_stats_request = 5; - } -} - -message prp_stats_reply { - optional prp_header header = 1; - repeated prp_ue_stats_report ue_report = 2; - repeated prp_cell_stats_report cell_report = 3; -} - -// -// Time indication messages -// - -message prp_sf_trigger { - optional prp_header header = 1; - optional uint32 sfn_sf = 2; - repeated prp_dl_info dl_info = 3; - repeated prp_ul_info ul_info = 4; -} - -// -// Asynchronous messages -// - -message prp_ul_sr_info { - optional prp_header header = 1; - optional uint32 sfn_sf = 2; - repeated uint32 rnti = 3; -} - -// -// eNB configuration messages -// -message prp_enb_config_request { - optional prp_header header = 1; -} - -message prp_enb_config_reply { - optional prp_header header = 1; - optional uint32 eNB_id = 2; // Unique id to distinguish the eNB - repeated prp_cell_config cell_config = 3; -} - -message prp_ue_config_request { - optional prp_header header = 1; -} - -message prp_ue_config_reply { - optional prp_header header = 1; - repeated prp_ue_config ue_config = 2; -} - -message prp_lc_config_request { - optional prp_header header = 1; -} - -message prp_lc_config_reply { - optional prp_header header = 1; - repeated prp_lc_ue_config lc_ue_config = 2; -} - -// -// Controller command messages -// - -message prp_dl_mac_config { - optional prp_header header = 1; - optional uint32 sfn_sf = 2; - repeated prp_dl_data dl_ue_data = 3; - repeated prp_dl_rar dl_rar = 4; - repeated prp_dl_broadcast dl_broadcast = 5; - repeated prp_pdcch_ofdm_sym_count ofdm_sym = 6; // OFDM symbol count for each CC -} - -// -// UE state change message -// - -message prp_ue_state_change { - optional prp_header header = 1; - optional uint32 type = 2; // One of the PRUESC_* values - optional prp_ue_config config = 3; // Body of the message (based on type) -} - -// -// Control delegation message -// - -message prp_control_delegation { - optional prp_header header = 1; - optional uint32 delegation_type = 2; // Bitmap of PRCDT_* flags - optional bytes payload = 3; // Byte array of shared lib containing the delegated functions - optional string name = 4; // The delegated functions names ordered based on bitmap flags -} - -// -// Agent reconfiguration message -// - -message prp_agent_reconfiguration { - optional prp_header header = 1; - optional string policy = 2; // The policy changes using YAML syntax in string format -} - -// Extensions of the echo request and reply -// messages for carrying a latency value in ms -message prp_echo_request_latency { - extend prp_echo_request { - optional uint32 latency = 100; - } -} - -message prp_echo_reply_latency { - extend prp_echo_reply { - optional uint32 latency = 100; - } -} - - diff --git a/openair2/ENB_APP/MESSAGES/V2/stats_common.proto b/openair2/ENB_APP/MESSAGES/V2/stats_common.proto index 50d66a620c97a41dd0174403c95b8c8b884f94c2..70f99618ac3f4d959fe698c2644da9aecb17ddae 100644 --- a/openair2/ENB_APP/MESSAGES/V2/stats_common.proto +++ b/openair2/ENB_APP/MESSAGES/V2/stats_common.proto @@ -5,7 +5,7 @@ package protocol; // // RLC buffer status for a specific logical channel of a UE -message prp_rlc_bsr { +message flex_rlc_bsr { optional uint32 lc_id = 1; optional uint32 tx_queue_size = 2; optional uint32 tx_queue_hol_delay = 3; @@ -15,39 +15,39 @@ message prp_rlc_bsr { } // Flags for MAC Control Elements -enum prp_ce_type { - PRPCET_TA = 1; - PRPCET_DRX = 2; - PRPCET_CR = 4; - PRPCET_CA = 8; +enum flex_ce_type { + FLPCET_TA = 1; + FLPCET_DRX = 2; + FLPCET_CR = 4; + FLPCET_CA = 8; } // Types of DL CSI reports -enum prp_csi_type { - PRCSIT_P10 = 0; - PRCSIT_P11 = 1; - PRCSIT_P20 = 2; - PRCSIT_P21 = 3; - PRCSIT_A12 = 4; - PRCSIT_A22 = 5; - PRCSIT_A20 = 6; - PRCSIT_A30 = 7; - PRCSIT_A31 = 8; +enum flex_csi_type { + FLCSIT_P10 = 0; + FLCSIT_P11 = 1; + FLCSIT_P20 = 2; + FLCSIT_P21 = 3; + FLCSIT_A12 = 4; + FLCSIT_A22 = 5; + FLCSIT_A20 = 6; + FLCSIT_A30 = 7; + FLCSIT_A31 = 8; } // CSI type P10 -message prp_csi_p10 { +message flex_csi_p10 { optional uint32 wb_cqi = 1; } // CSI type P11 -message prp_csi_p11 { +message flex_csi_p11 { repeated uint32 wb_cqi = 1; optional uint32 wb_pmi = 2; } // CSI type P20 -message prp_csi_p20 { +message flex_csi_p20 { optional uint32 wb_cqi = 1; optional uint32 sb_cqi = 2; optional uint32 bandwidth_part_index = 3; @@ -55,7 +55,7 @@ message prp_csi_p20 { } // CSI type P21 -message prp_csi_p21 { +message flex_csi_p21 { repeated uint32 wb_cqi = 1; optional uint32 wb_pmi = 2; repeated uint32 sb_cqi = 3; @@ -64,13 +64,13 @@ message prp_csi_p21 { } // CSI type A12 -message prp_csi_a12 { +message flex_csi_a12 { repeated uint32 wb_cqi = 1; repeated uint32 sb_pmi = 2; } // CSI type A22 -message prp_csi_a22 { +message flex_csi_a22 { repeated uint32 wb_cqi = 1; repeated uint32 sb_cqi = 2; optional uint32 wb_pmi = 3; @@ -79,56 +79,56 @@ message prp_csi_a22 { } // CSI type A20 -message prp_csi_a20 { +message flex_csi_a20 { optional uint32 wb_cqi = 1; optional uint32 sb_cqi = 2; repeated uint32 sb_list = 3; } // CSI type A30 -message prp_csi_a30 { +message flex_csi_a30 { optional uint32 wb_cqi = 1; repeated uint32 sb_cqi = 2; } // CSI type A31 -message prp_csi_a31 { +message flex_csi_a31 { repeated uint32 wb_cqi = 1; - repeated prp_msb_cqi sb_cqi = 2; + repeated flex_msb_cqi sb_cqi = 2; optional uint32 wb_pmi = 3; } // The CQI for the M-preffered subband -message prp_msb_cqi { +message flex_msb_cqi { repeated uint32 sb_cqi = 1; } // The CSI report of the UE for a specific servCellIndex -message prp_dl_csi { +message flex_dl_csi { optional uint32 serv_cell_index = 1; optional uint32 ri = 2; - optional prp_csi_type type = 3; + optional flex_csi_type type = 3; oneof report { - prp_csi_p10 p10csi = 4; - prp_csi_p11 p11csi = 5; - prp_csi_p20 p20csi = 6; - prp_csi_p21 p21csi = 7; - prp_csi_a12 a12csi = 8; - prp_csi_a22 a22csi = 9; - prp_csi_a20 a20csi = 10; - prp_csi_a30 a30csi = 11; - prp_csi_a31 a31csi = 12; + flex_csi_p10 p10csi = 4; + flex_csi_p11 p11csi = 5; + flex_csi_p20 p20csi = 6; + flex_csi_p21 p21csi = 7; + flex_csi_a12 a12csi = 8; + flex_csi_a22 a22csi = 9; + flex_csi_a20 a20csi = 10; + flex_csi_a30 a30csi = 11; + flex_csi_a31 a31csi = 12; } } // The full DL CQI report for all CC of a UE -message prp_dl_cqi_report { +message flex_dl_cqi_report { optional uint32 sfn_sn = 1; - repeated prp_dl_csi csi_report = 2; + repeated flex_dl_csi csi_report = 2; } // Paging message info -message prp_paging_info { +message flex_paging_info { optional uint32 paging_index = 1; optional uint32 paging_message_size = 2; optional uint32 paging_subframe = 3; @@ -136,34 +136,34 @@ message prp_paging_info { } // Report for the paging buffer status -message prp_paging_buffer_report { - repeated prp_paging_info paging_info = 1; +message flex_paging_buffer_report { + repeated flex_paging_info paging_info = 1; } // The type of UL CQI -enum prp_ul_cqi_type { - PRUCT_SRS = 0; - PRUCT_PUSCH = 1; - PRUCT_PUCCH_1 = 2; - PRUCT_PUCCH_2 = 3; - PRUCT_PRACH = 4; +enum flex_ul_cqi_type { + FLUCT_SRS = 0; + FLUCT_PUSCH = 1; + FLUCT_PUCCH_1 = 2; + FLUCT_PUCCH_2 = 3; + FLUCT_PRACH = 4; } // UL CQI report for a specific UE for a given report type -message prp_ul_cqi { - optional prp_ul_cqi_type type = 1; +message flex_ul_cqi { + optional flex_ul_cqi_type type = 1; repeated uint32 sinr = 2; optional uint32 serv_cell_index = 3; } // Full UL CQI report for a specific UE -message prp_ul_cqi_report { +message flex_ul_cqi_report { optional uint32 sfn_sn = 1; - repeated prp_ul_cqi cqi_meas = 2; - repeated prp_pucch_dbm pucch_dbm = 3; + repeated flex_ul_cqi cqi_meas = 2; + repeated flex_pucch_dbm pucch_dbm = 3; } -message prp_pucch_dbm { +message flex_pucch_dbm { optional int32 p0_pucch_dbm = 1; optional uint32 serv_cell_index = 2; } @@ -173,7 +173,7 @@ message prp_pucch_dbm { // // The UL noise and interference report for a UE -message prp_noise_interference_report { +message flex_noise_interference_report { optional uint32 sfn_sf = 1; optional uint32 rip = 2; optional uint32 tnp = 3; diff --git a/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto b/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto index 5ec7ae690c32e0e54644eed7f60ec34a487b8cd3..1b1567dda1e4b87b9f5b41bcdd05d0d2badf8af7 100644 --- a/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto +++ b/openair2/ENB_APP/MESSAGES/V2/stats_messages.proto @@ -7,19 +7,19 @@ import "stats_common.proto"; // Bodies of statistics report requests // -message prp_complete_stats_request { - optional prp_stats_report_freq report_frequency = 1; +message flex_complete_stats_request { + optional flex_stats_report_freq report_frequency = 1; optional uint32 sf = 2; optional uint32 cell_report_flags = 3; optional uint32 ue_report_flags = 4; } -message prp_cell_stats_request { +message flex_cell_stats_request { repeated uint32 cell = 1; optional uint32 flags = 2; } -message prp_ue_stats_request { +message flex_ue_stats_request { repeated uint32 rnti = 1; optional uint32 flags = 2; } @@ -29,23 +29,23 @@ message prp_ue_stats_request { // // The full statistics report for a specific cell -message prp_cell_stats_report { +message flex_cell_stats_report { optional uint32 carrier_index = 1; optional uint32 flags = 2; - optional prp_noise_interference_report noise_inter_report = 3; + optional flex_noise_interference_report noise_inter_report = 3; } // Statistics report for a specific UE -message prp_ue_stats_report { +message flex_ue_stats_report { optional uint32 rnti = 1; optional uint32 flags = 2; repeated uint32 bsr = 3; optional uint32 phr = 4; - repeated prp_rlc_bsr rlc_report = 5; + repeated flex_rlc_bsr rlc_report = 5; optional uint32 pending_mac_ces = 6; - optional prp_dl_cqi_report dl_cqi_report = 7; - optional prp_paging_buffer_report pbr = 8; - optional prp_ul_cqi_report ul_cqi_report = 9; + optional flex_dl_cqi_report dl_cqi_report = 7; + optional flex_paging_buffer_report pbr = 8; + optional flex_ul_cqi_report ul_cqi_report = 9; } // @@ -54,33 +54,33 @@ message prp_ue_stats_report { //Types of statistics requested by the controller -enum prp_stats_type { - PRST_COMPLETE_STATS = 0; - PRST_CELL_STATS = 1; - PRST_UE_STATS = 2; +enum flex_stats_type { + FLST_COMPLETE_STATS = 0; + FLST_CELL_STATS = 1; + FLST_UE_STATS = 2; } // Report frequency for the requested statistics -enum prp_stats_report_freq { - PRSRF_ONCE = 0; - PRSRF_PERIODICAL = 1; - PRSRF_CONTINUOUS = 2; - PRSRF_OFF = 3; +enum flex_stats_report_freq { + FLSRF_ONCE = 0; + FLSRF_PERIODICAL = 1; + FLSRF_CONTINUOUS = 2; + FLSRF_OFF = 3; } // Flags for cell statistics -enum prp_cell_stats_type { - PRCST_NOISE_INTERFERENCE = 1; +enum flex_cell_stats_type { + FLCST_NOISE_INTERFERENCE = 1; } // Flags for UE-related statistics -enum prp_ue_stats_type { - PRUST_BSR = 1; - PRUST_PRH = 2; - PRUST_RLC_BS = 4; - PRUST_MAC_CE_BS = 8; - PRUST_DL_CQI = 16; - PRUST_PBS = 32; - PRUST_UL_CQI = 64; +enum flex_ue_stats_type { + FLUST_BSR = 1; + FLUST_PRH = 2; + FLUST_RLC_BS = 4; + FLUST_MAC_CE_BS = 8; + FLUST_DL_CQI = 16; + FLUST_PBS = 32; + FLUST_UL_CQI = 64; // To be extended with more types of stats } \ No newline at end of file diff --git a/openair2/ENB_APP/MESSAGES/V2/time_common.proto b/openair2/ENB_APP/MESSAGES/V2/time_common.proto index 4c3ac4911e5b33a6fa81468d7490ec543792f2cb..30a56bb776957d245e673ac44e8e2ca255408c71 100644 --- a/openair2/ENB_APP/MESSAGES/V2/time_common.proto +++ b/openair2/ENB_APP/MESSAGES/V2/time_common.proto @@ -1,25 +1,25 @@ package protocol; -enum prp_harq_status { - PRHS_ACK = 0; - PRHS_NACK = 1; - PRHS_DTX = 2; +enum flex_harq_status { + FLHS_ACK = 0; + FLHS_NACK = 1; + FLHS_DTX = 2; } -enum prp_reception_status { - PRRS_OK = 0; - PRRS_NOT_OK = 1; - PRRS_NOT_VALID = 2; +enum flex_reception_status { + FLRS_OK = 0; + FLRS_NOT_OK = 1; + FLRS_NOT_VALID = 2; } -message prp_dl_info { +message flex_dl_info { optional uint32 rnti = 1; optional uint32 harq_process_id = 2; repeated uint32 harq_status = 3; optional uint32 serv_cell_index = 4; } -message prp_ul_info { +message flex_ul_info { optional uint32 rnti = 1; repeated uint32 ul_reception = 2; optional uint32 reception_status = 3; diff --git a/openair2/ENB_APP/enb_agent.c b/openair2/ENB_APP/enb_agent.c index 6a9bcad878fd9bcf32f1f3829438647eda1a5e1c..828677110434236dcd0c88519ae53f4364df9643 100644 --- a/openair2/ENB_APP/enb_agent.c +++ b/openair2/ENB_APP/enb_agent.c @@ -29,7 +29,7 @@ /*! \file enb_agent.h * \brief top level enb agent receive thread and itti task - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -57,7 +57,7 @@ char local_cache[40]; void *send_thread(void *args); void *receive_thread(void *args); pthread_t new_thread(void *(*f)(void *), void *b); -Protocol__ProgranMessage *enb_agent_timeout(void* args); +Protocol__FlexranMessage *enb_agent_timeout(void* args); int agent_task_created = 0; @@ -68,7 +68,7 @@ int agent_task_created = 0; void *enb_agent_task(void *args){ //enb_agent_instance_t *d = (enb_agent_instance_t *) args; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; void *data; int size; err_code_t err_code; @@ -104,7 +104,7 @@ void *enb_agent_task(void *args){ data=enb_agent_pack_message(msg,&size); elem = get_timer_entry(msg_p->ittiMsg.timer_has_expired.timer_id); if (enb_agent_msg_send(elem->agent_id, ENB_AGENT_DEFAULT, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -135,11 +135,11 @@ void *receive_thread(void *args) { int priority; err_code_t err_code; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; while (1) { //if (enb_agent_msg_recv(d->enb_id, ENB_AGENT_DEFAULT, &data, &size, &priority)) { - // err_code = PROTOCOL__PROGRAN_ERR__MSG_DEQUEUING; + // err_code = PROTOCOL__FLEXRAN_ERR__MSG_DEQUEUING; // goto error; //} @@ -157,7 +157,7 @@ void *receive_thread(void *args) { data=enb_agent_pack_message(msg,&size); if (enb_agent_msg_send(d->enb_id, ENB_AGENT_DEFAULT, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -337,7 +337,7 @@ error: -Protocol__ProgranMessage *enb_agent_timeout(void* args){ +Protocol__FlexranMessage *enb_agent_timeout(void* args){ // enb_agent_timer_args_t *timer_args = calloc(1, sizeof(*timer_args)); //memcpy (timer_args, args, sizeof(*timer_args)); diff --git a/openair2/ENB_APP/enb_agent_common.c b/openair2/ENB_APP/enb_agent_common.c index 0f148d82dd8b9f1ee7a13e07150d503eadc86288..2baecd604168d3a51700d38900dc77fb151781a0 100644 --- a/openair2/ENB_APP/enb_agent_common.c +++ b/openair2/ENB_APP/enb_agent_common.c @@ -29,7 +29,7 @@ /*! \file enb_agent_common.c * \brief common primitives for all agents - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas, Mohamed Kassem and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -55,15 +55,15 @@ void * enb_rrc[NUM_MAX_ENB]; * message primitives */ -int enb_agent_serialize_message(Protocol__ProgranMessage *msg, void **buf, int *size) { +int enb_agent_serialize_message(Protocol__FlexranMessage *msg, void **buf, int *size) { - *size = protocol__progran_message__get_packed_size(msg); + *size = protocol__flexran_message__get_packed_size(msg); *buf = malloc(*size); if (buf == NULL) goto error; - protocol__progran_message__pack(msg, *buf); + protocol__flexran_message__pack(msg, *buf); return 0; @@ -76,8 +76,8 @@ int enb_agent_serialize_message(Protocol__ProgranMessage *msg, void **buf, int * /* We assume that the buffer size is equal to the message size. Should be chekced durint Tx/Rx */ -int enb_agent_deserialize_message(void *data, int size, Protocol__ProgranMessage **msg) { - *msg = protocol__progran_message__unpack(NULL, size, data); +int enb_agent_deserialize_message(void *data, int size, Protocol__FlexranMessage **msg) { + *msg = protocol__flexran_message__unpack(NULL, size, data); if (*msg == NULL) goto error; @@ -90,14 +90,14 @@ int enb_agent_deserialize_message(void *data, int size, Protocol__ProgranMessage -int prp_create_header(xid_t xid, Protocol__PrpType type, Protocol__PrpHeader **header) { +int flex_create_header(xid_t xid, Protocol__FlexType type, Protocol__FlexHeader **header) { - *header = malloc(sizeof(Protocol__PrpHeader)); + *header = malloc(sizeof(Protocol__FlexHeader)); if(*header == NULL) goto error; - protocol__prp_header__init(*header); - (*header)->version = PROGRAN_VERSION; + protocol__flex_header__init(*header); + (*header)->version = FLEXRAN_VERSION; (*header)->has_version = 1; // check if the type is set (*header)->type = type; @@ -112,28 +112,28 @@ int prp_create_header(xid_t xid, Protocol__PrpType type, Protocol__PrpHeader ** } -int enb_agent_hello(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_hello(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { - Protocol__PrpHeader *header; + Protocol__FlexHeader *header; /*TODO: Need to set random xid or xid from received hello message*/ xid_t xid = 1; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_HELLO, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_HELLO, &header) != 0) goto error; - Protocol__PrpHello *hello_msg; - hello_msg = malloc(sizeof(Protocol__PrpHello)); + Protocol__FlexHello *hello_msg; + hello_msg = malloc(sizeof(Protocol__FlexHello)); if(hello_msg == NULL) goto error; - protocol__prp_hello__init(hello_msg); + protocol__flex_hello__init(hello_msg); hello_msg->header = header; - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_HELLO_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_HELLO_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->has_msg_dir = 1; (*msg)->hello_msg = hello_msg; return 0; @@ -150,9 +150,9 @@ int enb_agent_hello(mid_t mod_id, const void *params, Protocol__ProgranMessage * } -int enb_agent_destroy_hello(Protocol__ProgranMessage *msg) { +int enb_agent_destroy_hello(Protocol__FlexranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_HELLO_MSG) + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_HELLO_MSG) goto error; free(msg->hello_msg->header); @@ -166,26 +166,26 @@ int enb_agent_destroy_hello(Protocol__ProgranMessage *msg) { } -int enb_agent_echo_request(mid_t mod_id, const void* params, Protocol__ProgranMessage **msg) { - Protocol__PrpHeader *header; +int enb_agent_echo_request(mid_t mod_id, const void* params, Protocol__FlexranMessage **msg) { + Protocol__FlexHeader *header; /*TODO: Need to set a random xid*/ xid_t xid = 1; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_ECHO_REQUEST, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_ECHO_REQUEST, &header) != 0) goto error; - Protocol__PrpEchoRequest *echo_request_msg; - echo_request_msg = malloc(sizeof(Protocol__PrpEchoRequest)); + Protocol__FlexEchoRequest *echo_request_msg; + echo_request_msg = malloc(sizeof(Protocol__FlexEchoRequest)); if(echo_request_msg == NULL) goto error; - protocol__prp_echo_request__init(echo_request_msg); + protocol__flex_echo_request__init(echo_request_msg); echo_request_msg->header = header; - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REQUEST_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REQUEST_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->echo_request_msg = echo_request_msg; return 0; @@ -201,8 +201,8 @@ int enb_agent_echo_request(mid_t mod_id, const void* params, Protocol__ProgranMe } -int enb_agent_destroy_echo_request(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REQUEST_MSG) +int enb_agent_destroy_echo_request(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REQUEST_MSG) goto error; free(msg->echo_request_msg->header); @@ -217,30 +217,30 @@ int enb_agent_destroy_echo_request(Protocol__ProgranMessage *msg) { -int enb_agent_echo_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_echo_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { xid_t xid; - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpEchoRequest *echo_req = input->echo_request_msg; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexEchoRequest *echo_req = input->echo_request_msg; xid = (echo_req->header)->xid; - Protocol__PrpHeader *header; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_ECHO_REPLY, &header) != 0) + Protocol__FlexHeader *header; + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_ECHO_REPLY, &header) != 0) goto error; - Protocol__PrpEchoReply *echo_reply_msg; - echo_reply_msg = malloc(sizeof(Protocol__PrpEchoReply)); + Protocol__FlexEchoReply *echo_reply_msg; + echo_reply_msg = malloc(sizeof(Protocol__FlexEchoReply)); if(echo_reply_msg == NULL) goto error; - protocol__prp_echo_reply__init(echo_reply_msg); + protocol__flex_echo_reply__init(echo_reply_msg); echo_reply_msg->header = header; - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REPLY_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REPLY_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->has_msg_dir = 1; (*msg)->echo_reply_msg = echo_reply_msg; return 0; @@ -257,8 +257,8 @@ int enb_agent_echo_reply(mid_t mod_id, const void *params, Protocol__ProgranMess } -int enb_agent_destroy_echo_reply(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REPLY_MSG) +int enb_agent_destroy_echo_reply(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REPLY_MSG) goto error; free(msg->echo_reply_msg->header); @@ -272,12 +272,12 @@ int enb_agent_destroy_echo_reply(Protocol__ProgranMessage *msg) { } -int enb_agent_destroy_enb_config_reply(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG) +int enb_agent_destroy_enb_config_reply(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG) goto error; free(msg->enb_config_reply_msg->header); int i, j; - Protocol__PrpEnbConfigReply *reply = msg->enb_config_reply_msg; + Protocol__FlexEnbConfigReply *reply = msg->enb_config_reply_msg; for(i = 0; i < reply->n_cell_config;i++){ free(reply->cell_config[i]->mbsfn_subframe_config_rfoffset); @@ -302,12 +302,12 @@ int enb_agent_destroy_enb_config_reply(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_destroy_ue_config_reply(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG) +int enb_agent_destroy_ue_config_reply(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG) goto error; free(msg->ue_config_reply_msg->header); int i, j; - Protocol__PrpUeConfigReply *reply = msg->ue_config_reply_msg; + Protocol__FlexUeConfigReply *reply = msg->ue_config_reply_msg; for(i = 0; i < reply->n_ue_config;i++){ free(reply->ue_config[i]->capabilities); @@ -323,8 +323,8 @@ int enb_agent_destroy_ue_config_reply(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_destroy_lc_config_reply(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG) +int enb_agent_destroy_lc_config_reply(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG) goto error; int i, j; @@ -345,8 +345,8 @@ int enb_agent_destroy_lc_config_reply(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_destroy_ue_state_change(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG) +int enb_agent_destroy_ue_state_change(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG) goto error; free(msg->ue_state_change_msg->header); //TODO: Free the contents of the UE config structure @@ -359,8 +359,8 @@ int enb_agent_destroy_ue_state_change(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_destroy_enb_config_request(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG) +int enb_agent_destroy_enb_config_request(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG) goto error; free(msg->enb_config_request_msg->header); free(msg->enb_config_request_msg); @@ -372,12 +372,12 @@ int enb_agent_destroy_enb_config_request(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_destroy_ue_config_request(Protocol__ProgranMessage *msg) { +int enb_agent_destroy_ue_config_request(Protocol__FlexranMessage *msg) { /* TODO: Deallocate memory for a dynamically allocated UE config message */ return 0; } -int enb_agent_destroy_lc_config_request(Protocol__ProgranMessage *msg) { +int enb_agent_destroy_lc_config_request(Protocol__FlexranMessage *msg) { /* TODO: Deallocate memory for a dynamically allocated LC config message */ return 0; } @@ -397,10 +397,10 @@ long timer_end(struct timespec start_time){ return diffInNanos; } -int enb_agent_control_delegation(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_control_delegation(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpControlDelegation *control_delegation_msg = input->control_delegation_msg; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexControlDelegation *control_delegation_msg = input->control_delegation_msg; uint32_t delegation_type = control_delegation_msg->delegation_type; @@ -428,13 +428,13 @@ int enb_agent_control_delegation(mid_t mod_id, const void *params, Protocol__Pro return -1; } -int enb_agent_destroy_control_delegation(Protocol__ProgranMessage *msg) { +int enb_agent_destroy_control_delegation(Protocol__FlexranMessage *msg) { /*TODO: Dealocate memory for a dynamically allocated control delegation message*/ } -int enb_agent_reconfiguration(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpAgentReconfiguration *agent_reconfiguration_msg = input->agent_reconfiguration_msg; +int enb_agent_reconfiguration(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexAgentReconfiguration *agent_reconfiguration_msg = input->agent_reconfiguration_msg; apply_reconfiguration_policy(mod_id, agent_reconfiguration_msg->policy, strlen(agent_reconfiguration_msg->policy)); @@ -442,7 +442,7 @@ int enb_agent_reconfiguration(mid_t mod_id, const void *params, Protocol__Progra return 0; } -int enb_agent_destroy_agent_reconfiguration(Protocol__ProgranMessage *msg) { +int enb_agent_destroy_agent_reconfiguration(Protocol__FlexranMessage *msg) { /*TODO: Dealocate memory for a dynamically allocated agent reconfiguration message*/ } @@ -949,11 +949,11 @@ int get_meas_gap_config(mid_t mod_id, mid_t ue_id) { if(ue_context_p->ue_context.measGapConfig != NULL){ if(ue_context_p->ue_context.measGapConfig->present == MeasGapConfig_PR_setup) { if (ue_context_p->ue_context.measGapConfig->choice.setup.gapOffset.present == MeasGapConfig__setup__gapOffset_PR_gp0) { - return PROTOCOL__PRP_MEAS_GAP_CONFIG_PATTERN__PRMGCP_GP1; + return PROTOCOL__FLEX_MEAS_GAP_CONFIG_PATTERN__FLMGCP_GP1; } else if (ue_context_p->ue_context.measGapConfig->choice.setup.gapOffset.present == MeasGapConfig__setup__gapOffset_PR_gp1) { - return PROTOCOL__PRP_MEAS_GAP_CONFIG_PATTERN__PRMGCP_GP2; + return PROTOCOL__FLEX_MEAS_GAP_CONFIG_PATTERN__FLMGCP_GP2; } else { - return PROTOCOL__PRP_MEAS_GAP_CONFIG_PATTERN__PRMGCP_OFF; + return PROTOCOL__FLEX_MEAS_GAP_CONFIG_PATTERN__FLMGCP_OFF; } } } @@ -1258,38 +1258,38 @@ int get_direction(mid_t ue_id, mid_t lc_id) int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) { int size; - Protocol__ProgranMessage *msg; - Protocol__PrpHeader *header; + Protocol__FlexranMessage *msg; + Protocol__FlexHeader *header; void *data; int priority; err_code_t err_code; int xid = 0; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_UE_STATE_CHANGE, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_UE_STATE_CHANGE, &header) != 0) goto error; - Protocol__PrpUeStateChange *ue_state_change_msg; - ue_state_change_msg = malloc(sizeof(Protocol__PrpUeStateChange)); + Protocol__FlexUeStateChange *ue_state_change_msg; + ue_state_change_msg = malloc(sizeof(Protocol__FlexUeStateChange)); if(ue_state_change_msg == NULL) { goto error; } - protocol__prp_ue_state_change__init(ue_state_change_msg); + protocol__flex_ue_state_change__init(ue_state_change_msg); ue_state_change_msg->has_type = 1; ue_state_change_msg->type = state_change; - Protocol__PrpUeConfig *config; - config = malloc(sizeof(Protocol__PrpUeConfig)); + Protocol__FlexUeConfig *config; + config = malloc(sizeof(Protocol__FlexUeConfig)); if (config == NULL) { goto error; } - protocol__prp_ue_config__init(config); - if (state_change == PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_DEACTIVATED) { + protocol__flex_ue_config__init(config); + if (state_change == PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_DEACTIVATED) { // Simply set the rnti of the UE config->has_rnti = 1; config->rnti = rnti; - } else if (state_change == PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_UPDATED - || state_change == PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_ACTIVATED) { + } else if (state_change == PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_UPDATED + || state_change == PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_ACTIVATED) { int i =find_UE_id(mod_id,rnti); config->has_rnti = 1; config->rnti = rnti; @@ -1305,7 +1305,7 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) } //TODO: Set the measurement gap offset if applicable if(config->has_meas_gap_config_pattern == 1 && - config->meas_gap_config_pattern != PROTOCOL__PRP_MEAS_GAP_CONFIG_PATTERN__PRMGCP_OFF) { + config->meas_gap_config_pattern != PROTOCOL__FLEX_MEAS_GAP_CONFIG_PATTERN__FLMGCP_OFF) { config->meas_gap_config_sf_offset = get_meas_gap_config_offset(mod_id,i); config->has_meas_gap_config_sf_offset = 1; } @@ -1333,9 +1333,9 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) config->has_ue_aggregated_max_bitrate_dl = 1; //TODO: Set the UE capabilities - Protocol__PrpUeCapabilities *c_capabilities; - c_capabilities = malloc(sizeof(Protocol__PrpUeCapabilities)); - protocol__prp_ue_capabilities__init(c_capabilities); + Protocol__FlexUeCapabilities *c_capabilities; + c_capabilities = malloc(sizeof(Protocol__FlexUeCapabilities)); + protocol__flex_ue_capabilities__init(c_capabilities); //TODO: Set half duplex (FDD operation) c_capabilities->has_half_duplex = 1; c_capabilities->half_duplex = 1;//get_half_duplex(i); @@ -1353,7 +1353,7 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) c_capabilities->res_alloc_type1 = 1;//get_res_alloc_type1(i); //Set the capabilites to the message config->capabilities = c_capabilities; - //TODO: Set UE transmission antenna. One of the PRUTA_* values + //TODO: Set UE transmission antenna. One of the FLUTA_* values if(get_ue_transmission_antenna(mod_id,i) != -1){ config->has_ue_transmission_antenna = 1; config->ue_transmission_antenna = get_ue_transmission_antenna(mod_id,i); @@ -1398,7 +1398,7 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) config->has_aperiodic_cqi_rep_mode = 1; int mode = get_aperiodic_cqi_rep_mode(mod_id,i); if (mode > 4) { - config->aperiodic_cqi_rep_mode = PROTOCOL__PRP_APERIODIC_CQI_REPORT_MODE__PRACRM_NONE; + config->aperiodic_cqi_rep_mode = PROTOCOL__FLEX_APERIODIC_CQI_REPORT_MODE__FLACRM_NONE; } else { config->aperiodic_cqi_rep_mode = mode; } @@ -1435,24 +1435,24 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) config->has_scell_deactivation_timer = 1; config->scell_deactivation_timer = 1; } - } else if (state_change == PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_MOVED) { + } else if (state_change == PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_MOVED) { // TODO: Not supported for now. Leave blank } ue_state_change_msg->config = config; - msg = malloc(sizeof(Protocol__ProgranMessage)); + msg = malloc(sizeof(Protocol__FlexranMessage)); if (msg == NULL) { goto error; } - protocol__progran_message__init(msg); - msg->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG; - msg->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(msg); + msg->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG; + msg->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; msg->ue_state_change_msg = ue_state_change_msg; data = enb_agent_pack_message(msg, &size); /*Send sr info using the MAC channel of the eNB*/ if (enb_agent_msg_send(mod_id, ENB_AGENT_DEFAULT, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -1466,38 +1466,38 @@ int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change) * timer primitives */ -int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { xid_t xid; - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpLcConfigRequest *lc_config_request_msg = input->lc_config_request_msg; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexLcConfigRequest *lc_config_request_msg = input->lc_config_request_msg; xid = (lc_config_request_msg->header)->xid; int i, j; - Protocol__PrpHeader *header; - if(prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_GET_LC_CONFIG_REPLY, &header) != 0) + Protocol__FlexHeader *header; + if(flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_GET_LC_CONFIG_REPLY, &header) != 0) goto error; - Protocol__PrpLcConfigReply *lc_config_reply_msg; - lc_config_reply_msg = malloc(sizeof(Protocol__PrpLcConfigReply)); + Protocol__FlexLcConfigReply *lc_config_reply_msg; + lc_config_reply_msg = malloc(sizeof(Protocol__FlexLcConfigReply)); if(lc_config_reply_msg == NULL) goto error; - protocol__prp_lc_config_reply__init(lc_config_reply_msg); + protocol__flex_lc_config_reply__init(lc_config_reply_msg); lc_config_reply_msg->header = header; //TODO: Fill in the actual number of UEs that we are going to report LC configs about lc_config_reply_msg->n_lc_ue_config = get_num_ues(mod_id); - Protocol__PrpLcUeConfig **lc_ue_config; + Protocol__FlexLcUeConfig **lc_ue_config; if (lc_config_reply_msg->n_lc_ue_config > 0) { - lc_ue_config = malloc(sizeof(Protocol__PrpLcUeConfig *) * lc_config_reply_msg->n_lc_ue_config); + lc_ue_config = malloc(sizeof(Protocol__FlexLcUeConfig *) * lc_config_reply_msg->n_lc_ue_config); if (lc_ue_config == NULL) { goto error; } // Fill the config for each UE for (i = 0; i < lc_config_reply_msg->n_lc_ue_config; i++) { - lc_ue_config[i] = malloc(sizeof(Protocol__PrpLcUeConfig)); - protocol__prp_lc_ue_config__init(lc_ue_config[i]); + lc_ue_config[i] = malloc(sizeof(Protocol__FlexLcUeConfig)); + protocol__flex_lc_ue_config__init(lc_ue_config[i]); //TODO: Set the RNTI of the UE lc_ue_config[i]->has_rnti = 1; lc_ue_config[i]->rnti = get_ue_crnti(mod_id,i); @@ -1512,15 +1512,15 @@ int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__Progra } else { lc_ue_config[i]->n_lc_config = 3; } - Protocol__PrpLcConfig **lc_config; + Protocol__FlexLcConfig **lc_config; if (lc_ue_config[i]->n_lc_config > 0) { - lc_config = malloc(sizeof(Protocol__PrpLcConfig *) * lc_ue_config[i]->n_lc_config); + lc_config = malloc(sizeof(Protocol__FlexLcConfig *) * lc_ue_config[i]->n_lc_config); if (lc_config == NULL) { goto error; } for (j = 0; j < lc_ue_config[i]->n_lc_config; j++) { - lc_config[j] = malloc(sizeof(Protocol__PrpLcConfig)); - protocol__prp_lc_config__init(lc_config[j]); + lc_config[j] = malloc(sizeof(Protocol__FlexLcConfig)); + protocol__flex_lc_config__init(lc_config[j]); //TODO: Set the LC id lc_config[j]->has_lcid = 1; lc_config[j]->lcid = j+1; @@ -1533,14 +1533,14 @@ int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__Progra //TODO: Set the LC direction lc_config[j]->has_direction = 1; lc_config[j]->direction = get_direction(i,j+1); - //TODO: Bearer type. One of PRQBT_* values + //TODO: Bearer type. One of FLQBT_* values lc_config[j]->has_qos_bearer_type = 1; - lc_config[j]->qos_bearer_type = PROTOCOL__PRP_QOS_BEARER_TYPE__PRQBT_NON_GBR; + lc_config[j]->qos_bearer_type = PROTOCOL__FLEX_QOS_BEARER_TYPE__FLQBT_NON_GBR; //TODO: Set the QCI defined in TS 23.203, coded as defined in TS 36.413 // One less than the actual QCI value lc_config[j]->has_qci = 1; lc_config[j]->qci = 1; - if (lc_config[j]->direction == PROTOCOL__PRP_QOS_BEARER_TYPE__PRQBT_GBR) { + if (lc_config[j]->direction == PROTOCOL__FLEX_QOS_BEARER_TYPE__FLQBT_GBR) { //TODO: Set the max bitrate (UL) lc_config[j]->has_e_rab_max_bitrate_ul = 1; lc_config[j]->e_rab_max_bitrate_ul = 1; @@ -1560,12 +1560,12 @@ int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__Progra } // end for UE lc_config_reply_msg->lc_ue_config = lc_ue_config; } // lc_config_reply_msg->n_lc_ue_config > 0 - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if (*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->lc_config_reply_msg = lc_config_reply_msg; return 0; @@ -1588,38 +1588,38 @@ int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__Progra * ************************************ */ -int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { xid_t xid; - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpUeConfigRequest *ue_config_request_msg = input->ue_config_request_msg; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexUeConfigRequest *ue_config_request_msg = input->ue_config_request_msg; xid = (ue_config_request_msg->header)->xid; int i; - Protocol__PrpHeader *header; - if(prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_GET_UE_CONFIG_REPLY, &header) != 0) + Protocol__FlexHeader *header; + if(flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_GET_UE_CONFIG_REPLY, &header) != 0) goto error; - Protocol__PrpUeConfigReply *ue_config_reply_msg; - ue_config_reply_msg = malloc(sizeof(Protocol__PrpUeConfigReply)); + Protocol__FlexUeConfigReply *ue_config_reply_msg; + ue_config_reply_msg = malloc(sizeof(Protocol__FlexUeConfigReply)); if(ue_config_reply_msg == NULL) goto error; - protocol__prp_ue_config_reply__init(ue_config_reply_msg); + protocol__flex_ue_config_reply__init(ue_config_reply_msg); ue_config_reply_msg->header = header; //TODO: Fill in the actual number of UEs that are currently connected ue_config_reply_msg->n_ue_config = get_num_ues(mod_id); - Protocol__PrpUeConfig **ue_config; + Protocol__FlexUeConfig **ue_config; if (ue_config_reply_msg->n_ue_config > 0) { - ue_config = malloc(sizeof(Protocol__PrpUeConfig *) * ue_config_reply_msg->n_ue_config); + ue_config = malloc(sizeof(Protocol__FlexUeConfig *) * ue_config_reply_msg->n_ue_config); if (ue_config == NULL) { goto error; } for (i = 0; i < ue_config_reply_msg->n_ue_config; i++) { - ue_config[i] = malloc(sizeof(Protocol__PrpUeConfig)); - protocol__prp_ue_config__init(ue_config[i]); + ue_config[i] = malloc(sizeof(Protocol__FlexUeConfig)); + protocol__flex_ue_config__init(ue_config[i]); //TODO: Set the RNTI of the ue with id i ue_config[i]->rnti = get_ue_crnti(mod_id,i); ue_config[i]->has_rnti = 1; @@ -1638,7 +1638,7 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra } //TODO: Set the measurement gap offset if applicable if(ue_config[i]->has_meas_gap_config_pattern == 1 && - ue_config[i]->meas_gap_config_pattern != PROTOCOL__PRP_MEAS_GAP_CONFIG_PATTERN__PRMGCP_OFF) { + ue_config[i]->meas_gap_config_pattern != PROTOCOL__FLEX_MEAS_GAP_CONFIG_PATTERN__FLMGCP_OFF) { ue_config[i]->meas_gap_config_sf_offset = get_meas_gap_config_offset(mod_id,i); ue_config[i]->has_meas_gap_config_sf_offset = 1; } @@ -1666,9 +1666,9 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra ue_config[i]->has_ue_aggregated_max_bitrate_dl = 1; //TODO: Set the UE capabilities - Protocol__PrpUeCapabilities *capabilities; - capabilities = malloc(sizeof(Protocol__PrpUeCapabilities)); - protocol__prp_ue_capabilities__init(capabilities); + Protocol__FlexUeCapabilities *capabilities; + capabilities = malloc(sizeof(Protocol__FlexUeCapabilities)); + protocol__flex_ue_capabilities__init(capabilities); //TODO: Set half duplex (FDD operation) capabilities->has_half_duplex = 1; capabilities->half_duplex = 1;//get_half_duplex(i); @@ -1686,7 +1686,7 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra capabilities->res_alloc_type1 = 1;//get_res_alloc_type1(i); //Set the capabilites to the message ue_config[i]->capabilities = capabilities; - //TODO: Set UE transmission antenna. One of the PRUTA_* values + //TODO: Set UE transmission antenna. One of the FLUTA_* values if(get_ue_transmission_antenna(mod_id,i) != -1){ ue_config[i]->has_ue_transmission_antenna = 1; ue_config[i]->ue_transmission_antenna = get_ue_transmission_antenna(mod_id,i); @@ -1726,12 +1726,12 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra ue_config[i]->has_simultaneous_ack_nack_cqi = 1; ue_config[i]->simultaneous_ack_nack_cqi = get_simultaneous_ack_nack_cqi(mod_id,i); } - //TODO: Set PRACRM_* value regarding aperiodic cqi report mode + //TODO: Set FLACRM_* value regarding aperiodic cqi report mode if(get_aperiodic_cqi_rep_mode(mod_id,i) != -1){ ue_config[i]->has_aperiodic_cqi_rep_mode = 1; int mode = get_aperiodic_cqi_rep_mode(mod_id,i); if (mode > 4) { - ue_config[i]->aperiodic_cqi_rep_mode = PROTOCOL__PRP_APERIODIC_CQI_REPORT_MODE__PRACRM_NONE; + ue_config[i]->aperiodic_cqi_rep_mode = PROTOCOL__FLEX_APERIODIC_CQI_REPORT_MODE__FLACRM_NONE; } else { ue_config[i]->aperiodic_cqi_rep_mode = mode; } @@ -1770,12 +1770,12 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra } ue_config_reply_msg->ue_config = ue_config; } - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if (*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->ue_config_reply_msg = ue_config_reply_msg; return 0; @@ -1798,29 +1798,29 @@ int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__Progra * ************************************ */ -int enb_agent_enb_config_request(mid_t mod_id, const void* params, Protocol__ProgranMessage **msg) { +int enb_agent_enb_config_request(mid_t mod_id, const void* params, Protocol__FlexranMessage **msg) { - Protocol__PrpHeader *header; + Protocol__FlexHeader *header; xid_t xid = 1; - if(prp_create_header(xid,PROTOCOL__PRP_TYPE__PRPT_GET_ENB_CONFIG_REQUEST, &header) != 0) + if(flex_create_header(xid,PROTOCOL__FLEX_TYPE__FLPT_GET_ENB_CONFIG_REQUEST, &header) != 0) goto error; - Protocol__PrpEnbConfigRequest *enb_config_request_msg; - enb_config_request_msg = malloc(sizeof(Protocol__PrpEnbConfigRequest)); + Protocol__FlexEnbConfigRequest *enb_config_request_msg; + enb_config_request_msg = malloc(sizeof(Protocol__FlexEnbConfigRequest)); if(enb_config_request_msg == NULL) goto error; - protocol__prp_enb_config_request__init(enb_config_request_msg); + protocol__flex_enb_config_request__init(enb_config_request_msg); enb_config_request_msg->header = header; - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->enb_config_request_msg = enb_config_request_msg; return 0; @@ -1836,26 +1836,26 @@ int enb_agent_enb_config_request(mid_t mod_id, const void* params, Protocol__Pro return -1; } -int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { xid_t xid; - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; - Protocol__PrpEnbConfigRequest *enb_config_req_msg = input->enb_config_request_msg; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; + Protocol__FlexEnbConfigRequest *enb_config_req_msg = input->enb_config_request_msg; xid = (enb_config_req_msg->header)->xid; int i, j, k; int cc_id = 0; int enb_id = mod_id; - Protocol__PrpHeader *header; - if(prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_GET_ENB_CONFIG_REPLY, &header) != 0) + Protocol__FlexHeader *header; + if(flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_GET_ENB_CONFIG_REPLY, &header) != 0) goto error; - Protocol__PrpEnbConfigReply *enb_config_reply_msg; - enb_config_reply_msg = malloc(sizeof(Protocol__PrpEnbConfigReply)); + Protocol__FlexEnbConfigReply *enb_config_reply_msg; + enb_config_reply_msg = malloc(sizeof(Protocol__FlexEnbConfigReply)); if(enb_config_reply_msg == NULL) goto error; - protocol__prp_enb_config_reply__init(enb_config_reply_msg); + protocol__flex_enb_config_reply__init(enb_config_reply_msg); enb_config_reply_msg->header = header; enb_config_reply_msg->enb_id = mod_id; @@ -1863,14 +1863,14 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr enb_config_reply_msg->n_cell_config = MAX_NUM_CCs; - Protocol__PrpCellConfig **cell_conf; + Protocol__FlexCellConfig **cell_conf; if(enb_config_reply_msg->n_cell_config > 0){ - cell_conf = malloc(sizeof(Protocol__PrpCellConfig *) * enb_config_reply_msg->n_cell_config); + cell_conf = malloc(sizeof(Protocol__FlexCellConfig *) * enb_config_reply_msg->n_cell_config); if(cell_conf == NULL) goto error; for(i = 0; i < enb_config_reply_msg->n_cell_config; i++){ - cell_conf[i] = malloc(sizeof(Protocol__PrpCellConfig)); - protocol__prp_cell_config__init(cell_conf[i]); + cell_conf[i] = malloc(sizeof(Protocol__FlexCellConfig)); + protocol__flex_cell_config__init(cell_conf[i]); //TODO: Fill in with actual value, the PCI of this cell cell_conf[i]->phy_cell_id = 1; cell_conf[i]->has_phy_cell_id = get_cell_id(enb_id,i); @@ -1882,41 +1882,41 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr cell_conf[i]->has_pusch_hopping_offset = 1; //TODO: Fill in with actual value if(get_hopping_mode(enb_id,i) == 0){ - cell_conf[i]->hopping_mode = PROTOCOL__PRP_HOPPING_MODE__PRHM_INTER; + cell_conf[i]->hopping_mode = PROTOCOL__FLEX_HOPPING_MODE__FLHM_INTER; }else if(get_hopping_mode(enb_id,i) == 1){ - cell_conf[i]->hopping_mode = PROTOCOL__PRP_HOPPING_MODE__PRHM_INTERINTRA; + cell_conf[i]->hopping_mode = PROTOCOL__FLEX_HOPPING_MODE__FLHM_INTERINTRA; } cell_conf[i]->has_hopping_mode = 1; //TODO: Fill in with actual value, the number of subbands cell_conf[i]->n_sb = get_n_SB(enb_id,i); cell_conf[i]->has_n_sb = 1; - //TODO: Fill in with actual value, The number of resource element groups used for PHICH. One of PRPR_ + //TODO: Fill in with actual value, The number of resource element groups used for PHICH. One of FLPR_ if(get_phich_resource(enb_id,i) == 0){ - cell_conf[i]->phich_resource = PROTOCOL__PRP_PHICH_RESOURCE__PRPR_ONE_SIXTH; //0 + cell_conf[i]->phich_resource = PROTOCOL__FLEX_PHICH_RESOURCE__FLPR_ONE_SIXTH; //0 }else if (get_phich_resource(enb_id,i) == 1){ - cell_conf[i]->phich_resource = PROTOCOL__PRP_PHICH_RESOURCE__PRPR_HALF; //1 + cell_conf[i]->phich_resource = PROTOCOL__FLEX_PHICH_RESOURCE__FLPR_HALF; //1 }else if (get_phich_resource(enb_id,i) == 2){ - cell_conf[i]->phich_resource = PROTOCOL__PRP_PHICH_RESOURCE__PRPR_ONE; // 2 + cell_conf[i]->phich_resource = PROTOCOL__FLEX_PHICH_RESOURCE__FLPR_ONE; // 2 }else if (get_phich_resource(enb_id,i) == 3){ - cell_conf[i]->phich_resource = PROTOCOL__PRP_PHICH_RESOURCE__PRPR_TWO;//3 + cell_conf[i]->phich_resource = PROTOCOL__FLEX_PHICH_RESOURCE__FLPR_TWO;//3 } cell_conf[i]->has_phich_resource = 1; - //TODO: Fill in with actual value, one of the PRPD_ values + //TODO: Fill in with actual value, one of the FLPD_ values if(get_phich_duration(enb_id,i) == 0){ - cell_conf[i]->phich_duration = PROTOCOL__PRP_PHICH_DURATION__PRPD_NORMAL; + cell_conf[i]->phich_duration = PROTOCOL__FLEX_PHICH_DURATION__FLPD_NORMAL; }else if(get_phich_duration(enb_id,i) == 1){ - cell_conf[i]->phich_duration = PROTOCOL__PRP_PHICH_DURATION__PRPD_EXTENDED; + cell_conf[i]->phich_duration = PROTOCOL__FLEX_PHICH_DURATION__FLPD_EXTENDED; } cell_conf[i]->has_phich_duration = 1; //TODO: Fill in with actual value, See TS 36.211, section 6.9 cell_conf[i]->init_nr_pdcch_ofdm_sym = get_num_pdcch_symb(enb_id,i); cell_conf[i]->has_init_nr_pdcch_ofdm_sym = 1; //TODO: Fill in with actual value - /* Protocol__PrpSiConfig *si_config; */ - /* si_config = malloc(sizeof(Protocol__PrpSiConfig)); */ + /* Protocol__FlexSiConfig *si_config; */ + /* si_config = malloc(sizeof(Protocol__FlexSiConfig)); */ /* if(si_config == NULL) */ /* goto error; */ - /* protocol__prp_si_config__init(si_config); */ + /* protocol__flex_si_config__init(si_config); */ /* //TODO: Fill in with actual value, Frame number to apply the SI configuration */ /* si_config->sfn = 1; */ /* si_config->has_sfn = 1; */ @@ -1928,15 +1928,15 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr /* si_config->has_si_window_length = 1; */ /* //TODO: Fill in with actual value, the number of SI messages */ /* si_config->n_si_message=1; */ - /* Protocol__PrpSiMessage **si_message; */ - /* si_message = malloc(sizeof(Protocol__PrpSiMessage *) * si_config->n_si_message); */ + /* Protocol__FlexSiMessage **si_message; */ + /* si_message = malloc(sizeof(Protocol__FlexSiMessage *) * si_config->n_si_message); */ /* if(si_message == NULL) */ /* goto error; */ /* for(j = 0; j < si_config->n_si_message; j++){ */ - /* si_message[j] = malloc(sizeof(Protocol__PrpSiMessage)); */ + /* si_message[j] = malloc(sizeof(Protocol__FlexSiMessage)); */ /* if(si_message[j] == NULL) */ /* goto error; */ - /* protocol__prp_si_message__init(si_message[j]); */ + /* protocol__flex_si_message__init(si_message[j]); */ /* //TODO: Fill in with actual value, Periodicity of SI msg in radio frames */ /* si_message[j]->periodicity = 1; //SIPeriod */ /* si_message[j]->has_periodicity = 1; */ @@ -1955,29 +1955,29 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr //TODO: Fill in with actual value, the UL transmission bandwidth in RBs cell_conf[i]->ul_bandwidth = get_N_RB_UL(enb_id,i); cell_conf[i]->has_ul_bandwidth = 1; - //TODO: Fill in with actual value, one of PRUCPL values + //TODO: Fill in with actual value, one of FLUCPL values if(get_ul_cyclic_prefix_length(enb_id,i) == 0){ - cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__PRP_UL_CYCLIC_PREFIX_LENGTH__PRUCPL_NORMAL; + cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__FLEX_UL_CYCLIC_PREFIX_LENGTH__FLUCPL_NORMAL; }else if(get_ul_cyclic_prefix_length(enb_id,i) == 1){ - cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__PRP_UL_CYCLIC_PREFIX_LENGTH__PRUCPL_EXTENDED; + cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__FLEX_UL_CYCLIC_PREFIX_LENGTH__FLUCPL_EXTENDED; } cell_conf[i]->has_ul_cyclic_prefix_length = 1; - //TODO: Fill in with actual value, one of PRUCPL values + //TODO: Fill in with actual value, one of FLUCPL values if(get_ul_cyclic_prefix_length(enb_id,i) == 0){ - cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__PRP_DL_CYCLIC_PREFIX_LENGTH__PRDCPL_NORMAL; + cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__FLEX_DL_CYCLIC_PREFIX_LENGTH__FLDCPL_NORMAL; }else if(get_ul_cyclic_prefix_length(enb_id,i) == 1){ - cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__PRP_DL_CYCLIC_PREFIX_LENGTH__PRDCPL_EXTENDED; + cell_conf[i]->ul_cyclic_prefix_length = PROTOCOL__FLEX_DL_CYCLIC_PREFIX_LENGTH__FLDCPL_EXTENDED; } cell_conf[i]->has_dl_cyclic_prefix_length = 1; //TODO: Fill in with actual value, number of cell specific antenna ports cell_conf[i]->antenna_ports_count = 1; cell_conf[i]->has_antenna_ports_count = 1; - //TODO: Fill in with actual value, one of PRDM values + //TODO: Fill in with actual value, one of FLDM values if(get_duplex_mode(enb_id,i) == 1){ - cell_conf[i]->duplex_mode = PROTOCOL__PRP_DUPLEX_MODE__PRDM_FDD; + cell_conf[i]->duplex_mode = PROTOCOL__FLEX_DUPLEX_MODE__FLDM_FDD; }else if(get_duplex_mode(enb_id,i) == 0){ - cell_conf[i]->duplex_mode = PROTOCOL__PRP_DUPLEX_MODE__PRDM_TDD; + cell_conf[i]->duplex_mode = PROTOCOL__FLEX_DUPLEX_MODE__FLDM_TDD; } cell_conf[i]->has_duplex_mode = 1; //TODO: Fill in with actual value, DL/UL subframe assignment. TDD only @@ -2052,11 +2052,11 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr //TODO: Fill in with actual value, Boolean value. See TS 36.211, section 5.5.3.2. TDD only cell_conf[i]->srs_mac_up_pts = get_srs_MaxUpPts(enb_id,i); cell_conf[i]->has_srs_mac_up_pts = 1; - //TODO: Fill in with actual value, One of the PREQ_ values + //TODO: Fill in with actual value, One of the FLEQ_ values if(get_enable64QAM(enb_id,i) == 0){ - cell_conf[i]->enable_64qam = PROTOCOL__PRP_QAM__PREQ_MOD_16QAM; + cell_conf[i]->enable_64qam = PROTOCOL__FLEX_QAM__FLEQ_MOD_16QAM; }else if(get_enable64QAM(enb_id,i) == 1){ - cell_conf[i]->enable_64qam = PROTOCOL__PRP_QAM__PREQ_MOD_64QAM; + cell_conf[i]->enable_64qam = PROTOCOL__FLEX_QAM__FLEQ_MOD_64QAM; } cell_conf[i]->has_enable_64qam = 1; //TODO: Fill in with actual value, Carrier component index @@ -2065,12 +2065,12 @@ int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__Progr } enb_config_reply_msg->cell_config=cell_conf; } - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->enb_config_reply_msg = enb_config_reply_msg; return 0; @@ -2104,7 +2104,7 @@ err_code_t enb_agent_init_timer(void){ memset(&e, 0, sizeof(enb_agent_timer_element_t)); RB_INSERT(enb_agent_map, &agent_map, &e); */ - return PROTOCOL__PROGRAN_ERR__NO_ERR; + return PROTOCOL__FLEXRAN_ERR__NO_ERR; } RB_GENERATE(enb_agent_map,enb_agent_timer_element_s, entry, enb_agent_compare_timer); @@ -2190,7 +2190,7 @@ err_code_t enb_agent_destroy_timer(long timer_id){ if (e != NULL ) { RB_REMOVE(enb_agent_map, &timer_instance.enb_agent_head, e); - enb_agent_destroy_progran_message(e->timer_args->msg); + enb_agent_destroy_flexran_message(e->timer_args->msg); free(e); } @@ -2211,7 +2211,7 @@ err_code_t enb_agent_destroy_timer_by_task_id(xid_t xid) { if (e->xid == xid) { timer_id = e->timer_id; RB_REMOVE(enb_agent_map, &timer_instance.enb_agent_head, e); - enb_agent_destroy_progran_message(e->timer_args->msg); + enb_agent_destroy_flexran_message(e->timer_args->msg); free(e); if (timer_remove(timer_id) < 0 ) { goto error; @@ -2232,7 +2232,7 @@ err_code_t enb_agent_destroy_timers(void){ RB_FOREACH(e, enb_agent_map, &timer_instance.enb_agent_head) { RB_REMOVE(enb_agent_map, &timer_instance.enb_agent_head, e); timer_remove(e->timer_id); - enb_agent_destroy_progran_message(e->timer_args->msg); + enb_agent_destroy_flexran_message(e->timer_args->msg); free(e); } @@ -2310,7 +2310,7 @@ err_code_t enb_agent_restart_timer(uint32_t *timer_id){ } if (ret < 0 ) { - return PROTOCOL__PROGRAN_ERR__TIMER_SETUP_FAILED; + return PROTOCOL__FLEXRAN_ERR__TIMER_SETUP_FAILED; } return 0; diff --git a/openair2/ENB_APP/enb_agent_common.h b/openair2/ENB_APP/enb_agent_common.h index 18c912998941054f76bd5b23f4f6723c2130a74d..b5a35ec33818a5504caddf47683fa535a031de70 100644 --- a/openair2/ENB_APP/enb_agent_common.h +++ b/openair2/ENB_APP/enb_agent_common.h @@ -29,7 +29,7 @@ /*! \file enb_agent_common.h * \brief common message primitves and utilities - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas, Mohamed Kassem and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -42,7 +42,7 @@ #include <time.h> #include "header.pb-c.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "stats_messages.pb-c.h" #include "stats_common.pb-c.h" @@ -56,72 +56,72 @@ # include "intertask_interface.h" # include "timer.h" -#define PROGRAN_VERSION 0 +#define FLEXRAN_VERSION 0 typedef int (*enb_agent_message_decoded_callback)( mid_t mod_id, const void *params, - Protocol__ProgranMessage **msg + Protocol__FlexranMessage **msg ); typedef int (*enb_agent_message_destruction_callback)( - Protocol__ProgranMessage *msg + Protocol__FlexranMessage *msg ); /********************************** - * progRAN protocol messages helper + * FlexRAN protocol messages helper * functions and generic handlers **********************************/ -int enb_agent_serialize_message(Protocol__ProgranMessage *msg, void **buf, int *size); -int enb_agent_deserialize_message(void *data, int size, Protocol__ProgranMessage **msg); +int enb_agent_serialize_message(Protocol__FlexranMessage *msg, void **buf, int *size); +int enb_agent_deserialize_message(void *data, int size, Protocol__FlexranMessage **msg); -void * enb_agent_pack_message(Protocol__ProgranMessage *msg, +void * enb_agent_pack_message(Protocol__FlexranMessage *msg, uint32_t * size); -err_code_t enb_agent_destroy_progran_message(Protocol__ProgranMessage *msg); +err_code_t enb_agent_destroy_flexran_message(Protocol__FlexranMessage *msg); -int prp_create_header(xid_t xid, Protocol__PrpType type, Protocol__PrpHeader **header); +int flex_create_header(xid_t xid, Protocol__FlexType type, Protocol__FlexHeader **header); -int enb_agent_hello(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_hello(Protocol__ProgranMessage *msg); +int enb_agent_hello(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_hello(Protocol__FlexranMessage *msg); -int enb_agent_echo_request(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_echo_request(Protocol__ProgranMessage *msg); +int enb_agent_echo_request(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_echo_request(Protocol__FlexranMessage *msg); -int enb_agent_echo_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_echo_reply(Protocol__ProgranMessage *msg); +int enb_agent_echo_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_echo_reply(Protocol__FlexranMessage *msg); -int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_enb_config_reply(Protocol__ProgranMessage *msg); +int enb_agent_enb_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_enb_config_reply(Protocol__FlexranMessage *msg); -int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_ue_config_reply(Protocol__ProgranMessage *msg); +int enb_agent_ue_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_ue_config_reply(Protocol__FlexranMessage *msg); -int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_lc_config_reply(Protocol__ProgranMessage *msg); +int enb_agent_lc_config_reply(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_lc_config_reply(Protocol__FlexranMessage *msg); -int enb_agent_enb_config_request(mid_t mod_id, const void* params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_enb_config_request(Protocol__ProgranMessage *msg); +int enb_agent_enb_config_request(mid_t mod_id, const void* params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_enb_config_request(Protocol__FlexranMessage *msg); -int enb_agent_destroy_ue_config_request(Protocol__ProgranMessage *msg); +int enb_agent_destroy_ue_config_request(Protocol__FlexranMessage *msg); -int enb_agent_destroy_lc_config_request(Protocol__ProgranMessage *msg); +int enb_agent_destroy_lc_config_request(Protocol__FlexranMessage *msg); int enb_agent_ue_state_change(mid_t mod_id, uint32_t rnti, uint8_t state_change); -int enb_agent_destroy_ue_state_change(Protocol__ProgranMessage *msg); +int enb_agent_destroy_ue_state_change(Protocol__FlexranMessage *msg); -int enb_agent_control_delegation(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_control_delegation(Protocol__ProgranMessage *msg); +int enb_agent_control_delegation(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_control_delegation(Protocol__FlexranMessage *msg); -int enb_agent_reconfiguration(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); -int enb_agent_destroy_agent_reconfiguration(Protocol__ProgranMessage *msg); +int enb_agent_reconfiguration(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); +int enb_agent_destroy_agent_reconfiguration(Protocol__FlexranMessage *msg); -Protocol__ProgranMessage* enb_agent_handle_message (mid_t mod_id, +Protocol__FlexranMessage* enb_agent_handle_message (mid_t mod_id, uint8_t *data, uint32_t size); -Protocol__ProgranMessage *enb_agent_handle_timed_task(void *args); +Protocol__FlexranMessage *enb_agent_handle_timed_task(void *args); @@ -145,7 +145,7 @@ unsigned int get_current_system_frame_num(mid_t mod_id); unsigned int get_current_subframe(mid_t mod_id); /*Return the frame and subframe number in compact 16-bit format. - Bits 0-3 subframe, rest for frame. Required by progRAN protocol*/ + Bits 0-3 subframe, rest for frame. Required by FlexRAN protocol*/ uint16_t get_sfn_sf (mid_t mod_id); uint16_t get_future_sfn_sf(mid_t mod_id, int ahead_of_time); @@ -287,7 +287,7 @@ int get_direction(mid_t ue_id, mid_t lc_id); /* Type of the callback executed when the timer expired */ -typedef Protocol__ProgranMessage *(*enb_agent_timer_callback_t)(void*); +typedef Protocol__FlexranMessage *(*enb_agent_timer_callback_t)(void*); typedef enum { /* oneshot timer: */ @@ -319,7 +319,7 @@ typedef enum { typedef struct enb_agent_timer_args_s{ mid_t mod_id; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; } enb_agent_timer_args_t; @@ -371,7 +371,7 @@ err_code_t enb_agent_restart_timer(long *timer_id); struct enb_agent_timer_element_s * get_timer_entry(long timer_id); -Protocol__ProgranMessage * enb_agent_process_timeout(long timer_id, void* timer_args); +Protocol__FlexranMessage * enb_agent_process_timeout(long timer_id, void* timer_args); int enb_agent_compare_timer(struct enb_agent_timer_element_s *a, struct enb_agent_timer_element_s *b); diff --git a/openair2/ENB_APP/enb_agent_handler.c b/openair2/ENB_APP/enb_agent_handler.c index da533438188ca98a0751c437207b71dbc6c6fbb5..46459f98bc630fd1feef3f0d1c73d6df17d7ab6e 100644 --- a/openair2/ENB_APP/enb_agent_handler.c +++ b/openair2/ENB_APP/enb_agent_handler.c @@ -29,7 +29,7 @@ /*! \file enb_agent_handler.c * \brief enb agent tx and rx message handler - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -42,23 +42,23 @@ #include "assertions.h" enb_agent_message_decoded_callback agent_messages_callback[][3] = { - {enb_agent_hello, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_HELLO_MSG*/ - {enb_agent_echo_reply, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REQUEST_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_ECHO_REPLY_MSG*/ //Must add handler when receiving echo reply - {enb_agent_mac_handle_stats, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REQUEST_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REPLY_MSG*/ - {0, 0, 0}, /*PROTOCOK__PROGRAN_MESSAGE__MSG_SF_TRIGGER_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_UL_SR_INFO_MSG*/ - {enb_agent_enb_config_reply, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG*/ - {enb_agent_ue_config_reply, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_UE_CONFIG_REQUEST_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG*/ - {enb_agent_lc_config_reply, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_LC_CONFIG_REQUEST_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG*/ - {enb_agent_mac_handle_dl_mac_config, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG*/ - {0, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG*/ - {enb_agent_control_delegation, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_CONTROL_DELEGATION_MSG*/ - {enb_agent_reconfiguration, 0, 0}, /*PROTOCOL__PROGRAN_MESSAGE__MSG_AGENT_RECONFIGURATION_MSG*/ + {enb_agent_hello, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_HELLO_MSG*/ + {enb_agent_echo_reply, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REQUEST_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_ECHO_REPLY_MSG*/ //Must add handler when receiving echo reply + {enb_agent_mac_handle_stats, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REQUEST_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REPLY_MSG*/ + {0, 0, 0}, /*PROTOCOK__FLEXRAN_MESSAGE__MSG_SF_TRIGGER_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_UL_SR_INFO_MSG*/ + {enb_agent_enb_config_reply, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REQUEST_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_ENB_CONFIG_REPLY_MSG*/ + {enb_agent_ue_config_reply, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_CONFIG_REQUEST_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_CONFIG_REPLY_MSG*/ + {enb_agent_lc_config_reply, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_LC_CONFIG_REQUEST_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_LC_CONFIG_REPLY_MSG*/ + {enb_agent_mac_handle_dl_mac_config, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG*/ + {0, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_UE_STATE_CHANGE_MSG*/ + {enb_agent_control_delegation, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_CONTROL_DELEGATION_MSG*/ + {enb_agent_reconfiguration, 0, 0}, /*PROTOCOL__FLEXRAN_MESSAGE__MSG_AGENT_RECONFIGURATION_MSG*/ }; enb_agent_message_destruction_callback message_destruction_callback[] = { @@ -89,27 +89,27 @@ static const char *enb_agent_direction2String[] = { }; -Protocol__ProgranMessage* enb_agent_handle_message (mid_t mod_id, +Protocol__FlexranMessage* enb_agent_handle_message (mid_t mod_id, uint8_t *data, uint32_t size){ - Protocol__ProgranMessage *decoded_message, *reply_message; + Protocol__FlexranMessage *decoded_message, *reply_message; err_code_t err_code; DevAssert(data != NULL); if (enb_agent_deserialize_message(data, size, &decoded_message) < 0) { - err_code= PROTOCOL__PROGRAN_ERR__MSG_DECODING; + err_code= PROTOCOL__FLEXRAN_ERR__MSG_DECODING; goto error; } if ((decoded_message->msg_case > sizeof(agent_messages_callback) / (3*sizeof(enb_agent_message_decoded_callback))) || - (decoded_message->msg_dir > PROTOCOL__PROGRAN_DIRECTION__UNSUCCESSFUL_OUTCOME)){ - err_code= PROTOCOL__PROGRAN_ERR__MSG_NOT_HANDLED; + (decoded_message->msg_dir > PROTOCOL__FLEXRAN_DIRECTION__UNSUCCESSFUL_OUTCOME)){ + err_code= PROTOCOL__FLEXRAN_ERR__MSG_NOT_HANDLED; goto error; } if (agent_messages_callback[decoded_message->msg_case-1][decoded_message->msg_dir-1] == NULL) { - err_code= PROTOCOL__PROGRAN_ERR__MSG_NOT_SUPPORTED; + err_code= PROTOCOL__FLEXRAN_ERR__MSG_NOT_SUPPORTED; goto error; } @@ -118,7 +118,7 @@ Protocol__ProgranMessage* enb_agent_handle_message (mid_t mod_id, if ( err_code < 0 ){ goto error; } else if (err_code == 1) { //If err_code > 1, we do not want to dispose the message yet - protocol__progran_message__free_unpacked(decoded_message, NULL); + protocol__flexran_message__free_unpacked(decoded_message, NULL); } return reply_message; @@ -130,14 +130,14 @@ error: -void * enb_agent_pack_message(Protocol__ProgranMessage *msg, +void * enb_agent_pack_message(Protocol__FlexranMessage *msg, uint32_t * size){ void * buffer; - err_code_t err_code = PROTOCOL__PROGRAN_ERR__NO_ERR; + err_code_t err_code = PROTOCOL__FLEXRAN_ERR__NO_ERR; if (enb_agent_serialize_message(msg, &buffer, size) < 0 ) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENCODING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENCODING; goto error; } @@ -157,11 +157,11 @@ void * enb_agent_pack_message(Protocol__ProgranMessage *msg, return NULL; } -Protocol__ProgranMessage *enb_agent_handle_timed_task(void *args) { +Protocol__FlexranMessage *enb_agent_handle_timed_task(void *args) { err_code_t err_code; enb_agent_timer_args_t *timer_args = (enb_agent_timer_args_t *) args; - Protocol__ProgranMessage *timed_task, *reply_message; + Protocol__FlexranMessage *timed_task, *reply_message; timed_task = timer_args->msg; err_code = ((*agent_messages_callback[timed_task->msg_case-1][timed_task->msg_dir-1])(timer_args->mod_id, (void *) timed_task, &reply_message)); if ( err_code < 0 ){ @@ -175,7 +175,7 @@ Protocol__ProgranMessage *enb_agent_handle_timed_task(void *args) { return NULL; } -Protocol__ProgranMessage* enb_agent_process_timeout(long timer_id, void* timer_args){ +Protocol__FlexranMessage* enb_agent_process_timeout(long timer_id, void* timer_args){ struct enb_agent_timer_element_s *found = get_timer_entry(timer_id); @@ -192,6 +192,6 @@ Protocol__ProgranMessage* enb_agent_process_timeout(long timer_id, void* timer_a return TIMER_ELEMENT_NOT_FOUND; } -err_code_t enb_agent_destroy_progran_message(Protocol__ProgranMessage *msg) { +err_code_t enb_agent_destroy_flexran_message(Protocol__FlexranMessage *msg) { return ((*message_destruction_callback[msg->msg_case-1])(msg)); } diff --git a/openair2/ENB_APP/enb_agent_mac.c b/openair2/ENB_APP/enb_agent_mac.c index 744768135e658b3956e914e05ebcd73070f44427..d040622a028986e5dcabf1159da1ad4eaaa63464 100644 --- a/openair2/ENB_APP/enb_agent_mac.c +++ b/openair2/ENB_APP/enb_agent_mac.c @@ -29,7 +29,7 @@ /*! \file enb_agent_mac.c * \brief enb agent message handler for MAC layer - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas, Mohamed Kassem and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -61,7 +61,7 @@ struct lfds700_ringbuffer_element *dl_mac_config_array[NUM_MAX_ENB]; struct lfds700_ringbuffer_state ringbuffer_state[NUM_MAX_ENB]; -int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg){ +int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg){ // TODO: Must deal with sanitization of input // TODO: Must check if RNTIs and cell ids of the request actually exist @@ -86,16 +86,16 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr uint32_t ue_flags = 0; uint32_t c_flags = 0; - Protocol__ProgranMessage *input = (Protocol__ProgranMessage *)params; + Protocol__FlexranMessage *input = (Protocol__FlexranMessage *)params; - Protocol__PrpStatsRequest *stats_req = input->stats_request_msg; + Protocol__FlexStatsRequest *stats_req = input->stats_request_msg; xid = (stats_req->header)->xid; // Check the type of request that is made switch(stats_req->body_case) { - case PROTOCOL__PRP_STATS_REQUEST__BODY_COMPLETE_STATS_REQUEST: ; - Protocol__PrpCompleteStatsRequest *comp_req = stats_req->complete_stats_request; - if (comp_req->report_frequency == PROTOCOL__PRP_STATS_REPORT_FREQ__PRSRF_OFF) { + case PROTOCOL__FLEX_STATS_REQUEST__BODY_COMPLETE_STATS_REQUEST: ; + Protocol__FlexCompleteStatsRequest *comp_req = stats_req->complete_stats_request; + if (comp_req->report_frequency == PROTOCOL__FLEX_STATS_REPORT_FREQ__FLSRF_OFF) { /*Disable both periodic and continuous updates*/ enb_agent_disable_cont_mac_stats_update(mod_id); enb_agent_destroy_timer_by_task_id(xid); @@ -133,12 +133,12 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr report_config.cc_report_type[i].cc_report_flags = c_flags; } /* Check if request was periodical */ - if (comp_req->report_frequency == PROTOCOL__PRP_STATS_REPORT_FREQ__PRSRF_PERIODICAL) { - /* Create a one off progran message as an argument for the periodical task */ - Protocol__ProgranMessage *timer_msg; + if (comp_req->report_frequency == PROTOCOL__FLEX_STATS_REPORT_FREQ__FLSRF_PERIODICAL) { + /* Create a one off flexran message as an argument for the periodical task */ + Protocol__FlexranMessage *timer_msg; stats_request_config_t request_config; - request_config.report_type = PROTOCOL__PRP_STATS_TYPE__PRST_COMPLETE_STATS; - request_config.report_frequency = PROTOCOL__PRP_STATS_REPORT_FREQ__PRSRF_ONCE; + request_config.report_type = PROTOCOL__FLEX_STATS_TYPE__FLST_COMPLETE_STATS; + request_config.report_frequency = PROTOCOL__FLEX_STATS_REPORT_FREQ__FLSRF_ONCE; request_config.period = 0; /* Need to make sure that the ue flags are saved (Bug) */ if (report_config.nr_ue == 0) { @@ -170,13 +170,13 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr usec_interval = usec_interval%(1000*1000); } enb_agent_create_timer(sec_interval, usec_interval, ENB_AGENT_DEFAULT, enb_id, ENB_AGENT_TIMER_TYPE_PERIODIC, xid, enb_agent_handle_timed_task,(void*) timer_args, &timer_id); - } else if (comp_req->report_frequency == PROTOCOL__PRP_STATS_REPORT_FREQ__PRSRF_CONTINUOUS) { + } else if (comp_req->report_frequency == PROTOCOL__FLEX_STATS_REPORT_FREQ__FLSRF_CONTINUOUS) { /*If request was for continuous updates, disable the previous configuration and set up a new one*/ enb_agent_disable_cont_mac_stats_update(mod_id); stats_request_config_t request_config; - request_config.report_type = PROTOCOL__PRP_STATS_TYPE__PRST_COMPLETE_STATS; - request_config.report_frequency = PROTOCOL__PRP_STATS_REPORT_FREQ__PRSRF_ONCE; + request_config.report_type = PROTOCOL__FLEX_STATS_TYPE__FLST_COMPLETE_STATS; + request_config.report_frequency = PROTOCOL__FLEX_STATS_REPORT_FREQ__FLSRF_ONCE; request_config.period = 0; /* Need to make sure that the ue flags are saved (Bug) */ if (report_config.nr_ue == 0) { @@ -195,8 +195,8 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr } } break; - case PROTOCOL__PRP_STATS_REQUEST__BODY_CELL_STATS_REQUEST:; - Protocol__PrpCellStatsRequest *cell_req = stats_req->cell_stats_request; + case PROTOCOL__FLEX_STATS_REQUEST__BODY_CELL_STATS_REQUEST:; + Protocol__FlexCellStatsRequest *cell_req = stats_req->cell_stats_request; // UE report config will be blank report_config.nr_ue = 0; report_config.ue_report_type = NULL; @@ -213,8 +213,8 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr report_config.cc_report_type[i].cc_report_flags = cell_req->flags; } break; - case PROTOCOL__PRP_STATS_REQUEST__BODY_UE_STATS_REQUEST:; - Protocol__PrpUeStatsRequest *ue_req = stats_req->ue_stats_request; + case PROTOCOL__FLEX_STATS_REQUEST__BODY_UE_STATS_REQUEST:; + Protocol__FlexUeStatsRequest *ue_req = stats_req->ue_stats_request; // Cell report config will be blank report_config.nr_cc = 0; report_config.cc_report_type = NULL; @@ -237,7 +237,7 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr } if (enb_agent_mac_stats_reply(enb_id, xid, &report_config, msg) < 0 ){ - err_code = PROTOCOL__PROGRAN_ERR__MSG_BUILD; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_BUILD; goto error; } @@ -254,32 +254,32 @@ int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__Progr int enb_agent_mac_stats_request(mid_t mod_id, xid_t xid, const stats_request_config_t *report_config, - Protocol__ProgranMessage **msg) { - Protocol__PrpHeader *header; + Protocol__FlexranMessage **msg) { + Protocol__FlexHeader *header; int i; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_STATS_REQUEST, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_STATS_REQUEST, &header) != 0) goto error; - Protocol__PrpStatsRequest *stats_request_msg; - stats_request_msg = malloc(sizeof(Protocol__PrpStatsRequest)); + Protocol__FlexStatsRequest *stats_request_msg; + stats_request_msg = malloc(sizeof(Protocol__FlexStatsRequest)); if(stats_request_msg == NULL) goto error; - protocol__prp_stats_request__init(stats_request_msg); + protocol__flex_stats_request__init(stats_request_msg); stats_request_msg->header = header; stats_request_msg->type = report_config->report_type; stats_request_msg->has_type = 1; switch (report_config->report_type) { - case PROTOCOL__PRP_STATS_TYPE__PRST_COMPLETE_STATS: - stats_request_msg->body_case = PROTOCOL__PRP_STATS_REQUEST__BODY_COMPLETE_STATS_REQUEST; - Protocol__PrpCompleteStatsRequest *complete_stats; - complete_stats = malloc(sizeof(Protocol__PrpCompleteStatsRequest)); + case PROTOCOL__FLEX_STATS_TYPE__FLST_COMPLETE_STATS: + stats_request_msg->body_case = PROTOCOL__FLEX_STATS_REQUEST__BODY_COMPLETE_STATS_REQUEST; + Protocol__FlexCompleteStatsRequest *complete_stats; + complete_stats = malloc(sizeof(Protocol__FlexCompleteStatsRequest)); if(complete_stats == NULL) goto error; - protocol__prp_complete_stats_request__init(complete_stats); + protocol__flex_complete_stats_request__init(complete_stats); complete_stats->report_frequency = report_config->report_frequency; complete_stats->has_report_frequency = 1; complete_stats->sf = report_config->period; @@ -294,13 +294,13 @@ int enb_agent_mac_stats_request(mid_t mod_id, } stats_request_msg->complete_stats_request = complete_stats; break; - case PROTOCOL__PRP_STATS_TYPE__PRST_CELL_STATS: - stats_request_msg->body_case = PROTOCOL__PRP_STATS_REQUEST__BODY_CELL_STATS_REQUEST; - Protocol__PrpCellStatsRequest *cell_stats; - cell_stats = malloc(sizeof(Protocol__PrpCellStatsRequest)); + case PROTOCOL__FLEX_STATS_TYPE__FLST_CELL_STATS: + stats_request_msg->body_case = PROTOCOL__FLEX_STATS_REQUEST__BODY_CELL_STATS_REQUEST; + Protocol__FlexCellStatsRequest *cell_stats; + cell_stats = malloc(sizeof(Protocol__FlexCellStatsRequest)); if(cell_stats == NULL) goto error; - protocol__prp_cell_stats_request__init(cell_stats); + protocol__flex_cell_stats_request__init(cell_stats); cell_stats->n_cell = report_config->config->nr_cc; cell_stats->has_flags = 1; if (cell_stats->n_cell > 0) { @@ -314,13 +314,13 @@ int enb_agent_mac_stats_request(mid_t mod_id, } stats_request_msg->cell_stats_request = cell_stats; break; - case PROTOCOL__PRP_STATS_TYPE__PRST_UE_STATS: - stats_request_msg->body_case = PROTOCOL__PRP_STATS_REQUEST__BODY_UE_STATS_REQUEST; - Protocol__PrpUeStatsRequest *ue_stats; - ue_stats = malloc(sizeof(Protocol__PrpUeStatsRequest)); + case PROTOCOL__FLEX_STATS_TYPE__FLST_UE_STATS: + stats_request_msg->body_case = PROTOCOL__FLEX_STATS_REQUEST__BODY_UE_STATS_REQUEST; + Protocol__FlexUeStatsRequest *ue_stats; + ue_stats = malloc(sizeof(Protocol__FlexUeStatsRequest)); if(ue_stats == NULL) goto error; - protocol__prp_ue_stats_request__init(ue_stats); + protocol__flex_ue_stats_request__init(ue_stats); ue_stats->n_rnti = report_config->config->nr_ue; ue_stats->has_flags = 1; if (ue_stats->n_rnti > 0) { @@ -337,12 +337,12 @@ int enb_agent_mac_stats_request(mid_t mod_id, default: goto error; } - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REQUEST_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REQUEST_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->stats_request_msg = stats_request_msg; return 0; @@ -358,14 +358,14 @@ int enb_agent_mac_stats_request(mid_t mod_id, return -1; } -int enb_agent_mac_destroy_stats_request(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REQUEST_MSG) +int enb_agent_mac_destroy_stats_request(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REQUEST_MSG) goto error; free(msg->stats_request_msg->header); - if (msg->stats_request_msg->body_case == PROTOCOL__PRP_STATS_REQUEST__BODY_CELL_STATS_REQUEST) { + if (msg->stats_request_msg->body_case == PROTOCOL__FLEX_STATS_REQUEST__BODY_CELL_STATS_REQUEST) { free(msg->stats_request_msg->cell_stats_request->cell); } - if (msg->stats_request_msg->body_case == PROTOCOL__PRP_STATS_REQUEST__BODY_UE_STATS_REQUEST) { + if (msg->stats_request_msg->body_case == PROTOCOL__FLEX_STATS_REQUEST__BODY_UE_STATS_REQUEST) { free(msg->stats_request_msg->ue_stats_request->rnti); } free(msg->stats_request_msg); @@ -380,8 +380,8 @@ int enb_agent_mac_destroy_stats_request(Protocol__ProgranMessage *msg) { int enb_agent_mac_stats_reply(mid_t mod_id, xid_t xid, const report_config_t *report_config, - Protocol__ProgranMessage **msg) { - Protocol__PrpHeader *header; + Protocol__FlexranMessage **msg) { + Protocol__FlexHeader *header; int i, j, k; int cc_id = 0; int enb_id = mod_id; @@ -389,31 +389,31 @@ int enb_agent_mac_stats_reply(mid_t mod_id, //UE_list_t *eNB_UE_list= &eNB->UE_list; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_STATS_REPLY, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_STATS_REPLY, &header) != 0) goto error; - Protocol__PrpStatsReply *stats_reply_msg; - stats_reply_msg = malloc(sizeof(Protocol__PrpStatsReply)); + Protocol__FlexStatsReply *stats_reply_msg; + stats_reply_msg = malloc(sizeof(Protocol__FlexStatsReply)); if (stats_reply_msg == NULL) goto error; - protocol__prp_stats_reply__init(stats_reply_msg); + protocol__flex_stats_reply__init(stats_reply_msg); stats_reply_msg->header = header; stats_reply_msg->n_ue_report = report_config->nr_ue; stats_reply_msg->n_cell_report = report_config->nr_cc; - Protocol__PrpUeStatsReport **ue_report; - Protocol__PrpCellStatsReport **cell_report; + Protocol__FlexUeStatsReport **ue_report; + Protocol__FlexCellStatsReport **cell_report; /* Allocate memory for list of UE reports */ if (report_config->nr_ue > 0) { - ue_report = malloc(sizeof(Protocol__PrpUeStatsReport *) * report_config->nr_ue); + ue_report = malloc(sizeof(Protocol__FlexUeStatsReport *) * report_config->nr_ue); if (ue_report == NULL) goto error; for (i = 0; i < report_config->nr_ue; i++) { - ue_report[i] = malloc(sizeof(Protocol__PrpUeStatsReport)); - protocol__prp_ue_stats_report__init(ue_report[i]); + ue_report[i] = malloc(sizeof(Protocol__FlexUeStatsReport)); + protocol__flex_ue_stats_report__init(ue_report[i]); ue_report[i]->rnti = report_config->ue_report_type[i].ue_rnti; ue_report[i]->has_rnti = 1; ue_report[i]->flags = report_config->ue_report_type[i].ue_report_flags; @@ -421,9 +421,9 @@ int enb_agent_mac_stats_reply(mid_t mod_id, /* Check the types of reports that need to be constructed based on flag values */ /* Check flag for creation of buffer status report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_BSR) { - //TODO: Create a report for each LCG (4 elements). See prp_ue_stats_report of - // progRAN specifications for more details + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_BSR) { + //TODO: Create a report for each LCG (4 elements). See flex_ue_stats_report of + // FlexRAN specifications for more details ue_report[i]->n_bsr = 4; uint32_t *elem; elem = (uint32_t *) malloc(sizeof(uint32_t)*ue_report[i]->n_bsr); @@ -438,28 +438,28 @@ int enb_agent_mac_stats_reply(mid_t mod_id, } /* Check flag for creation of PRH report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_PRH) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_PRH) { // TODO: Fill in the actual power headroom value for the RNTI ue_report[i]->phr = get_ue_phr (enb_id, i); // eNB_UE_list->UE_template[UE_PCCID(enb_id,i)][i].phr_info; ue_report[i]->has_phr = 1; } /* Check flag for creation of RLC buffer status report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_RLC_BS) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_RLC_BS) { // TODO: Fill in the actual RLC buffer status reports ue_report[i]->n_rlc_report = 3; // Set this to the number of LCs for this UE - Protocol__PrpRlcBsr ** rlc_reports; - rlc_reports = malloc(sizeof(Protocol__PrpRlcBsr *) * ue_report[i]->n_rlc_report); + Protocol__FlexRlcBsr ** rlc_reports; + rlc_reports = malloc(sizeof(Protocol__FlexRlcBsr *) * ue_report[i]->n_rlc_report); if (rlc_reports == NULL) goto error; // Fill the buffer status report for each logical channel of the UE // NN: see LAYER2/openair2_proc.c for rlc status for (j = 0; j < ue_report[i]->n_rlc_report; j++) { - rlc_reports[j] = malloc(sizeof(Protocol__PrpRlcBsr)); + rlc_reports[j] = malloc(sizeof(Protocol__FlexRlcBsr)); if (rlc_reports[j] == NULL) goto error; - protocol__prp_rlc_bsr__init(rlc_reports[j]); + protocol__flex_rlc_bsr__init(rlc_reports[j]); //TODO:Set logical channel id rlc_reports[j]->lc_id = j+1; rlc_reports[j]->has_lc_id = 1; @@ -485,38 +485,38 @@ int enb_agent_mac_stats_reply(mid_t mod_id, } /* Check flag for creation of MAC CE buffer status report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_MAC_CE_BS) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_MAC_CE_BS) { // TODO: Fill in the actual MAC CE buffer status report ue_report[i]->pending_mac_ces = (get_MAC_CE_bitmap_TA(enb_id,i,0) | (0 << 1) | (0 << 2) | (0 << 3)) & 15; /* Use as bitmap. Set one or more of the; /* Use as bitmap. Set one or more of the - PROTOCOL__PRP_CE_TYPE__PRPCET_ values + PROTOCOL__FLEX_CE_TYPE__FLPCET_ values found in stats_common.pb-c.h. See - prp_ce_type in progRAN specification */ + flex_ce_type in FlexRAN specification */ ue_report[i]->has_pending_mac_ces = 1; } /* Check flag for creation of DL CQI report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_DL_CQI) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_DL_CQI) { // TODO: Fill in the actual DL CQI report for the UE based on its configuration - Protocol__PrpDlCqiReport * dl_report; - dl_report = malloc(sizeof(Protocol__PrpDlCqiReport)); + Protocol__FlexDlCqiReport * dl_report; + dl_report = malloc(sizeof(Protocol__FlexDlCqiReport)); if (dl_report == NULL) goto error; - protocol__prp_dl_cqi_report__init(dl_report); + protocol__flex_dl_cqi_report__init(dl_report); //TODO:Set the SFN and SF of the last report held in the agent. dl_report->sfn_sn = get_sfn_sf(enb_id); dl_report->has_sfn_sn = 1; //TODO:Set the number of DL CQI reports for this UE. One for each CC dl_report->n_csi_report = get_active_CC(enb_id,i); //TODO:Create the actual CSI reports. - Protocol__PrpDlCsi **csi_reports; - csi_reports = malloc(sizeof(Protocol__PrpDlCsi *)*dl_report->n_csi_report); + Protocol__FlexDlCsi **csi_reports; + csi_reports = malloc(sizeof(Protocol__FlexDlCsi *)*dl_report->n_csi_report); if (csi_reports == NULL) goto error; for (j = 0; j < dl_report->n_csi_report; j++) { - csi_reports[j] = malloc(sizeof(Protocol__PrpDlCsi)); + csi_reports[j] = malloc(sizeof(Protocol__FlexDlCsi)); if (csi_reports[j] == NULL) goto error; - protocol__prp_dl_csi__init(csi_reports[j]); + protocol__flex_dl_csi__init(csi_reports[j]); //TODO: the servCellIndex for this report csi_reports[j]->serv_cell_index = j; csi_reports[j]->has_serv_cell_index = 1; @@ -526,16 +526,16 @@ int enb_agent_mac_stats_reply(mid_t mod_id, //TODO: the type of CSI report based on the configuration of the UE //For this example we use type P10, which only needs a wideband value //The full set of types can be found in stats_common.pb-c.h and - //in the progRAN specifications - csi_reports[j]->type = PROTOCOL__PRP_CSI_TYPE__PRCSIT_P10; + //in the FlexRAN specifications + csi_reports[j]->type = PROTOCOL__FLEX_CSI_TYPE__FLCSIT_P10; csi_reports[j]->has_type = 1; - csi_reports[j]->report_case = PROTOCOL__PRP_DL_CSI__REPORT_P10CSI; - if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_P10CSI){ - Protocol__PrpCsiP10 *csi10; - csi10 = malloc(sizeof(Protocol__PrpCsiP10)); + csi_reports[j]->report_case = PROTOCOL__FLEX_DL_CSI__REPORT_P10CSI; + if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_P10CSI){ + Protocol__FlexCsiP10 *csi10; + csi10 = malloc(sizeof(Protocol__FlexCsiP10)); if (csi10 == NULL) goto error; - protocol__prp_csi_p10__init(csi10); + protocol__flex_csi_p10__init(csi10); //TODO: set the wideband value // NN: this is also depends on cc_id csi10->wb_cqi = get_ue_wcqi (enb_id, i); //eNB_UE_list->eNB_UE_stats[UE_PCCID(enb_id,i)][i].dl_cqi; @@ -543,28 +543,28 @@ int enb_agent_mac_stats_reply(mid_t mod_id, //Add the type of measurements to the csi report in the proper union type csi_reports[j]->p10csi = csi10; } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_P11CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_P11CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_P20CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_P20CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_P21CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_P21CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_A12CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_A12CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_A22CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_A22CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_A20CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_A20CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_A30CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_A30CSI){ } - else if(csi_reports[j]->report_case == PROTOCOL__PRP_DL_CSI__REPORT_A31CSI){ + else if(csi_reports[j]->report_case == PROTOCOL__FLEX_DL_CSI__REPORT_A31CSI){ } } @@ -575,26 +575,26 @@ int enb_agent_mac_stats_reply(mid_t mod_id, } /* Check flag for creation of paging buffer status report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_PBS) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_PBS) { //TODO: Fill in the actual paging buffer status report. For this field to be valid, the RNTI //set in the report must be a P-RNTI - Protocol__PrpPagingBufferReport *paging_report; - paging_report = malloc(sizeof(Protocol__PrpPagingBufferReport)); + Protocol__FlexPagingBufferReport *paging_report; + paging_report = malloc(sizeof(Protocol__FlexPagingBufferReport)); if (paging_report == NULL) goto error; - protocol__prp_paging_buffer_report__init(paging_report); + protocol__flex_paging_buffer_report__init(paging_report); //Set the number of pending paging messages paging_report->n_paging_info = 1; //Provide a report for each pending paging message - Protocol__PrpPagingInfo **p_info; - p_info = malloc(sizeof(Protocol__PrpPagingInfo *) * paging_report->n_paging_info); + Protocol__FlexPagingInfo **p_info; + p_info = malloc(sizeof(Protocol__FlexPagingInfo *) * paging_report->n_paging_info); if (p_info == NULL) goto error; for (j = 0; j < paging_report->n_paging_info; j++) { - p_info[j] = malloc(sizeof(Protocol__PrpPagingInfo)); + p_info[j] = malloc(sizeof(Protocol__FlexPagingInfo)); if(p_info[j] == NULL) goto error; - protocol__prp_paging_info__init(p_info[j]); + protocol__flex_paging_info__init(p_info[j]); //TODO: Set paging index. This index is the same that will be used for the scheduling of the //paging message by the controller p_info[j]->paging_index = 10; @@ -616,35 +616,35 @@ int enb_agent_mac_stats_reply(mid_t mod_id, } /* Check flag for creation of UL CQI report */ - if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_UL_CQI) { + if (report_config->ue_report_type[i].ue_report_flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_UL_CQI) { //Fill in the full UL CQI report of the UE - Protocol__PrpUlCqiReport *full_ul_report; - full_ul_report = malloc(sizeof(Protocol__PrpUlCqiReport)); + Protocol__FlexUlCqiReport *full_ul_report; + full_ul_report = malloc(sizeof(Protocol__FlexUlCqiReport)); if(full_ul_report == NULL) goto error; - protocol__prp_ul_cqi_report__init(full_ul_report); + protocol__flex_ul_cqi_report__init(full_ul_report); //TODO:Set the SFN and SF of the generated report full_ul_report->sfn_sn = get_sfn_sf(enb_id); full_ul_report->has_sfn_sn = 1; //TODO:Set the number of UL measurement reports based on the types of measurements //configured for this UE and on the servCellIndex full_ul_report->n_cqi_meas = 1; - Protocol__PrpUlCqi **ul_report; - ul_report = malloc(sizeof(Protocol__PrpUlCqi *) * full_ul_report->n_cqi_meas); + Protocol__FlexUlCqi **ul_report; + ul_report = malloc(sizeof(Protocol__FlexUlCqi *) * full_ul_report->n_cqi_meas); if(ul_report == NULL) goto error; //Fill each UL report of the UE for each of the configured report types for(j = 0; j < full_ul_report->n_cqi_meas; j++) { - ul_report[j] = malloc(sizeof(Protocol__PrpUlCqi)); + ul_report[j] = malloc(sizeof(Protocol__FlexUlCqi)); if(ul_report[j] == NULL) goto error; - protocol__prp_ul_cqi__init(ul_report[j]); + protocol__flex_ul_cqi__init(ul_report[j]); //TODO: Set the type of the UL report. As an example set it to SRS UL report - // See enum prp_ul_cqi_type in progRAN specification for more details - ul_report[j]->type = PROTOCOL__PRP_UL_CQI_TYPE__PRUCT_SRS; + // See enum flex_ul_cqi_type in FlexRAN specification for more details + ul_report[j]->type = PROTOCOL__FLEX_UL_CQI_TYPE__FLUCT_SRS; ul_report[j]->has_type = 1; //TODO:Set the number of SINR measurements based on the report type - //See struct prp_ul_cqi in progRAN specification for more details + //See struct flex_ul_cqi in FlexRAN specification for more details ul_report[j]->n_sinr = 100; uint32_t *sinr_meas; sinr_meas = (uint32_t *) malloc(sizeof(uint32_t) * ul_report[j]->n_sinr); @@ -663,11 +663,11 @@ int enb_agent_mac_stats_reply(mid_t mod_id, full_ul_report->cqi_meas = ul_report; full_ul_report->n_pucch_dbm = MAX_NUM_CCs; - full_ul_report->pucch_dbm = malloc(sizeof(Protocol__PrpPucchDbm *) * full_ul_report->n_pucch_dbm); + full_ul_report->pucch_dbm = malloc(sizeof(Protocol__FlexPucchDbm *) * full_ul_report->n_pucch_dbm); for (j = 0; j < MAX_NUM_CCs; j++) { - full_ul_report->pucch_dbm[j] = malloc(sizeof(Protocol__PrpPucchDbm)); - protocol__prp_pucch_dbm__init(full_ul_report->pucch_dbm[j]); + full_ul_report->pucch_dbm[j] = malloc(sizeof(Protocol__FlexPucchDbm)); + protocol__flex_pucch_dbm__init(full_ul_report->pucch_dbm[j]); full_ul_report->pucch_dbm[j]->has_serv_cell_index = 1; full_ul_report->pucch_dbm[j]->serv_cell_index = j; if(get_p0_pucch_dbm(enb_id,i, j) != -1){ @@ -687,28 +687,28 @@ int enb_agent_mac_stats_reply(mid_t mod_id, /* Allocate memory for list of cell reports */ if (report_config->nr_cc > 0) { - cell_report = malloc(sizeof(Protocol__PrpCellStatsReport *) * report_config->nr_cc); + cell_report = malloc(sizeof(Protocol__FlexCellStatsReport *) * report_config->nr_cc); if (cell_report == NULL) goto error; // Fill in the Cell reports for (i = 0; i < report_config->nr_cc; i++) { - cell_report[i] = malloc(sizeof(Protocol__PrpCellStatsReport)); + cell_report[i] = malloc(sizeof(Protocol__FlexCellStatsReport)); if(cell_report[i] == NULL) goto error; - protocol__prp_cell_stats_report__init(cell_report[i]); + protocol__flex_cell_stats_report__init(cell_report[i]); cell_report[i]->carrier_index = report_config->cc_report_type[i].cc_id; cell_report[i]->has_carrier_index = 1; cell_report[i]->flags = report_config->cc_report_type[i].cc_report_flags; cell_report[i]->has_flags = 1; /* Check flag for creation of noise and interference report */ - if(report_config->cc_report_type[i].cc_report_flags & PROTOCOL__PRP_CELL_STATS_TYPE__PRCST_NOISE_INTERFERENCE) { + if(report_config->cc_report_type[i].cc_report_flags & PROTOCOL__FLEX_CELL_STATS_TYPE__FLCST_NOISE_INTERFERENCE) { // TODO: Fill in the actual noise and interference report for this cell - Protocol__PrpNoiseInterferenceReport *ni_report; - ni_report = malloc(sizeof(Protocol__PrpNoiseInterferenceReport)); + Protocol__FlexNoiseInterferenceReport *ni_report; + ni_report = malloc(sizeof(Protocol__FlexNoiseInterferenceReport)); if(ni_report == NULL) goto error; - protocol__prp_noise_interference_report__init(ni_report); + protocol__flex_noise_interference_report__init(ni_report); // Current frame and subframe number ni_report->sfn_sf = get_sfn_sf(enb_id); ni_report->has_sfn_sf = 1; @@ -728,12 +728,12 @@ int enb_agent_mac_stats_reply(mid_t mod_id, stats_reply_msg->cell_report = cell_report; } - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REPLY_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REPLY_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; (*msg)->stats_reply_msg = stats_reply_msg; return 0; @@ -749,17 +749,17 @@ int enb_agent_mac_stats_reply(mid_t mod_id, return -1; } -int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg) { +int enb_agent_mac_destroy_stats_reply(Protocol__FlexranMessage *msg) { //TODO: Need to deallocate memory for the stats reply message - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REPLY_MSG) + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REPLY_MSG) goto error; free(msg->stats_reply_msg->header); int i, j, k; - Protocol__PrpStatsReply *reply = msg->stats_reply_msg; - Protocol__PrpDlCqiReport *dl_report; - Protocol__PrpUlCqiReport *ul_report; - Protocol__PrpPagingBufferReport *paging_report; + Protocol__FlexStatsReply *reply = msg->stats_reply_msg; + Protocol__FlexDlCqiReport *dl_report; + Protocol__FlexUlCqiReport *ul_report; + Protocol__FlexPagingBufferReport *paging_report; // Free the memory for the UE reports for (i = 0; i < reply->n_ue_report; i++) { @@ -769,47 +769,47 @@ int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg) { } free(reply->ue_report[i]->rlc_report); // If DL CQI report flag was set - if (reply->ue_report[i]->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_DL_CQI) { + if (reply->ue_report[i]->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_DL_CQI) { dl_report = reply->ue_report[i]->dl_cqi_report; // Delete all CSI reports for (j = 0; j < dl_report->n_csi_report; j++) { //Must free memory based on the type of report switch(dl_report->csi_report[j]->report_case) { - case PROTOCOL__PRP_DL_CSI__REPORT_P10CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P10CSI: free(dl_report->csi_report[j]->p10csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_P11CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P11CSI: free(dl_report->csi_report[j]->p11csi->wb_cqi); free(dl_report->csi_report[j]->p11csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_P20CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P20CSI: free(dl_report->csi_report[j]->p20csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_P21CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P21CSI: free(dl_report->csi_report[j]->p21csi->wb_cqi); free(dl_report->csi_report[j]->p21csi->sb_cqi); free(dl_report->csi_report[j]->p21csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_A12CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A12CSI: free(dl_report->csi_report[j]->a12csi->wb_cqi); free(dl_report->csi_report[j]->a12csi->sb_pmi); free(dl_report->csi_report[j]->a12csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_A22CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A22CSI: free(dl_report->csi_report[j]->a22csi->wb_cqi); free(dl_report->csi_report[j]->a22csi->sb_cqi); free(dl_report->csi_report[j]->a22csi->sb_list); free(dl_report->csi_report[j]->a22csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_A20CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A20CSI: free(dl_report->csi_report[j]->a20csi->sb_list); free(dl_report->csi_report[j]->a20csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_A30CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A30CSI: free(dl_report->csi_report[j]->a30csi->sb_cqi); free(dl_report->csi_report[j]->a30csi); break; - case PROTOCOL__PRP_DL_CSI__REPORT_A31CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A31CSI: free(dl_report->csi_report[j]->a31csi->wb_cqi); for (k = 0; k < dl_report->csi_report[j]->a31csi->n_sb_cqi; k++) { free(dl_report->csi_report[j]->a31csi->sb_cqi[k]); @@ -824,7 +824,7 @@ int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg) { free(dl_report); } // If Paging buffer report flag was set - if (reply->ue_report[i]->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_PBS) { + if (reply->ue_report[i]->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_PBS) { paging_report = reply->ue_report[i]->pbr; // Delete all paging buffer reports for (j = 0; j < paging_report->n_paging_info; j++) { @@ -834,7 +834,7 @@ int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg) { free(paging_report); } // If UL CQI report flag was set - if (reply->ue_report[i]->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_UL_CQI) { + if (reply->ue_report[i]->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_UL_CQI) { ul_report = reply->ue_report[i]->ul_cqi_report; for (j = 0; j < ul_report->n_cqi_meas; j++) { free(ul_report->cqi_meas[j]->sinr); @@ -866,19 +866,19 @@ int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { - Protocol__PrpHeader *header; +int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { + Protocol__FlexHeader *header; int i; const int xid = *((int *)params); - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_UL_SR_INFO, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_UL_SR_INFO, &header) != 0) goto error; - Protocol__PrpUlSrInfo *ul_sr_info_msg; - ul_sr_info_msg = malloc(sizeof(Protocol__PrpUlSrInfo)); + Protocol__FlexUlSrInfo *ul_sr_info_msg; + ul_sr_info_msg = malloc(sizeof(Protocol__FlexUlSrInfo)); if (ul_sr_info_msg == NULL) { goto error; } - protocol__prp_ul_sr_info__init(ul_sr_info_msg); + protocol__flex_ul_sr_info__init(ul_sr_info_msg); ul_sr_info_msg->header = header; ul_sr_info_msg->has_sfn_sf = 1; @@ -895,12 +895,12 @@ int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__ProgranMes ul_sr_info_msg->rnti[i] = 1; } - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_UL_SR_INFO_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_UL_SR_INFO_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->ul_sr_info_msg = ul_sr_info_msg; return 0; @@ -918,8 +918,8 @@ int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__ProgranMes return -1; } -int enb_agent_mac_destroy_sr_info(Protocol__ProgranMessage *msg) { - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_UL_SR_INFO_MSG) +int enb_agent_mac_destroy_sr_info(Protocol__FlexranMessage *msg) { + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_UL_SR_INFO_MSG) goto error; free(msg->ul_sr_info_msg->header); @@ -933,19 +933,19 @@ int enb_agent_mac_destroy_sr_info(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { - Protocol__PrpHeader *header; +int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { + Protocol__FlexHeader *header; int i,j; const int xid = *((int *)params); - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_SF_TRIGGER, &header) != 0) + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_SF_TRIGGER, &header) != 0) goto error; - Protocol__PrpSfTrigger *sf_trigger_msg; - sf_trigger_msg = malloc(sizeof(Protocol__PrpSfTrigger)); + Protocol__FlexSfTrigger *sf_trigger_msg; + sf_trigger_msg = malloc(sizeof(Protocol__FlexSfTrigger)); if (sf_trigger_msg == NULL) { goto error; } - protocol__prp_sf_trigger__init(sf_trigger_msg); + protocol__flex_sf_trigger__init(sf_trigger_msg); frame_t frame; sub_frame_t subframe; @@ -974,18 +974,18 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran */ sf_trigger_msg->n_dl_info = get_num_ues(mod_id); - Protocol__PrpDlInfo **dl_info = NULL; + Protocol__FlexDlInfo **dl_info = NULL; if (sf_trigger_msg->n_dl_info > 0) { - dl_info = malloc(sizeof(Protocol__PrpDlInfo *) * sf_trigger_msg->n_dl_info); + dl_info = malloc(sizeof(Protocol__FlexDlInfo *) * sf_trigger_msg->n_dl_info); if(dl_info == NULL) goto error; //Fill the status of the current HARQ process for each UE for(i = 0; i < sf_trigger_msg->n_dl_info; i++) { - dl_info[i] = malloc(sizeof(Protocol__PrpDlInfo)); + dl_info[i] = malloc(sizeof(Protocol__FlexDlInfo)); if(dl_info[i] == NULL) goto error; - protocol__prp_dl_info__init(dl_info[i]); + protocol__flex_dl_info__init(dl_info[i]); dl_info[i]->rnti = get_ue_crnti(mod_id, i); dl_info[i]->has_rnti = 1; /*TODO: fill in the right id of this round's HARQ process for this UE*/ @@ -1000,9 +1000,9 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran for (j = 0; j < dl_info[i]->n_harq_status; j++) { // TODO: This should be different per TB if(harq_status == 0) - dl_info[i]->harq_status[j] = PROTOCOL__PRP_HARQ_STATUS__PRHS_ACK; + dl_info[i]->harq_status[j] = PROTOCOL__FLEX_HARQ_STATUS__FLHS_ACK; else if (harq_status == 1) - dl_info[i]->harq_status[j] = PROTOCOL__PRP_HARQ_STATUS__PRHS_NACK; + dl_info[i]->harq_status[j] = PROTOCOL__FLEX_HARQ_STATUS__FLHS_NACK; } /*TODO: fill in the serving cell index for this UE */ dl_info[i]->serv_cell_index = UE_PCCID(mod_id,i); @@ -1017,18 +1017,18 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran */ sf_trigger_msg->n_ul_info = get_num_ues(mod_id); - Protocol__PrpUlInfo **ul_info = NULL; + Protocol__FlexUlInfo **ul_info = NULL; if (sf_trigger_msg->n_ul_info > 0) { - ul_info = malloc(sizeof(Protocol__PrpUlInfo *) * sf_trigger_msg->n_ul_info); + ul_info = malloc(sizeof(Protocol__FlexUlInfo *) * sf_trigger_msg->n_ul_info); if(ul_info == NULL) goto error; //Fill the reception info for each transmitting UE for(i = 0; i < sf_trigger_msg->n_ul_info; i++) { - ul_info[i] = malloc(sizeof(Protocol__PrpUlInfo)); + ul_info[i] = malloc(sizeof(Protocol__FlexUlInfo)); if(ul_info[i] == NULL) goto error; - protocol__prp_ul_info__init(ul_info[i]); + protocol__flex_ul_info__init(ul_info[i]); ul_info[i]->rnti = get_ue_crnti(mod_id, i); ul_info[i]->has_rnti = 1; /*TODO: fill in the Tx power control command for this UE (if available)*/ @@ -1048,7 +1048,7 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran ul_info[i]->ul_reception[j] = 100; } /*TODO: Fill in the reception status for each UEs data*/ - ul_info[i]->reception_status = PROTOCOL__PRP_RECEPTION_STATUS__PRRS_OK; + ul_info[i]->reception_status = PROTOCOL__FLEX_RECEPTION_STATUS__FLRS_OK; ul_info[i]->has_reception_status = 1; /*TODO: fill in the serving cell index for this UE */ ul_info[i]->serv_cell_index = UE_PCCID(mod_id,i); @@ -1058,12 +1058,12 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran sf_trigger_msg->ul_info = ul_info; - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_SF_TRIGGER_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_SF_TRIGGER_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->sf_trigger_msg = sf_trigger_msg; return 0; @@ -1087,9 +1087,9 @@ int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__Progran return -1; } -int enb_agent_mac_destroy_sf_trigger(Protocol__ProgranMessage *msg) { +int enb_agent_mac_destroy_sf_trigger(Protocol__FlexranMessage *msg) { int i; - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_SF_TRIGGER_MSG) + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_SF_TRIGGER_MSG) goto error; free(msg->sf_trigger_msg->header); @@ -1113,30 +1113,30 @@ int enb_agent_mac_destroy_sf_trigger(Protocol__ProgranMessage *msg) { return -1; } -int enb_agent_mac_create_empty_dl_config(mid_t mod_id, Protocol__ProgranMessage **msg) { +int enb_agent_mac_create_empty_dl_config(mid_t mod_id, Protocol__FlexranMessage **msg) { int xid = 0; - Protocol__PrpHeader *header; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_DL_MAC_CONFIG, &header) != 0) + Protocol__FlexHeader *header; + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_DL_MAC_CONFIG, &header) != 0) goto error; - Protocol__PrpDlMacConfig *dl_mac_config_msg; - dl_mac_config_msg = malloc(sizeof(Protocol__PrpDlMacConfig)); + Protocol__FlexDlMacConfig *dl_mac_config_msg; + dl_mac_config_msg = malloc(sizeof(Protocol__FlexDlMacConfig)); if (dl_mac_config_msg == NULL) { goto error; } - protocol__prp_dl_mac_config__init(dl_mac_config_msg); + protocol__flex_dl_mac_config__init(dl_mac_config_msg); dl_mac_config_msg->header = header; dl_mac_config_msg->has_sfn_sf = 1; dl_mac_config_msg->sfn_sf = get_sfn_sf(mod_id); - *msg = malloc(sizeof(Protocol__ProgranMessage)); + *msg = malloc(sizeof(Protocol__FlexranMessage)); if(*msg == NULL) goto error; - protocol__progran_message__init(*msg); - (*msg)->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG; - (*msg)->msg_dir = PROTOCOL__PROGRAN_DIRECTION__INITIATING_MESSAGE; + protocol__flexran_message__init(*msg); + (*msg)->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG; + (*msg)->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__INITIATING_MESSAGE; (*msg)->dl_mac_config_msg = dl_mac_config_msg; return 0; @@ -1145,12 +1145,12 @@ int enb_agent_mac_create_empty_dl_config(mid_t mod_id, Protocol__ProgranMessage return -1; } -int enb_agent_mac_destroy_dl_config(Protocol__ProgranMessage *msg) { +int enb_agent_mac_destroy_dl_config(Protocol__FlexranMessage *msg) { int i,j, k; - if(msg->msg_case != PROTOCOL__PROGRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG) + if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_DL_MAC_CONFIG_MSG) goto error; - Protocol__PrpDlDci *dl_dci; + Protocol__FlexDlDci *dl_dci; free(msg->dl_mac_config_msg->header); for (i = 0; i < msg->dl_mac_config_msg->n_dl_ue_data; i++) { @@ -1208,7 +1208,7 @@ int enb_agent_mac_destroy_dl_config(Protocol__ProgranMessage *msg) { return -1; } -void enb_agent_get_pending_dl_mac_config(mid_t mod_id, Protocol__ProgranMessage **msg) { +void enb_agent_get_pending_dl_mac_config(mid_t mod_id, Protocol__FlexranMessage **msg) { struct lfds700_misc_prng_state ls; @@ -1220,11 +1220,11 @@ void enb_agent_get_pending_dl_mac_config(mid_t mod_id, Protocol__ProgranMessage } } -int enb_agent_mac_handle_dl_mac_config(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg) { +int enb_agent_mac_handle_dl_mac_config(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg) { struct lfds700_misc_prng_state ls; enum lfds700_misc_flag overwrite_occurred_flag; - Protocol__ProgranMessage *overwritten_dl_config; + Protocol__FlexranMessage *overwritten_dl_config; LFDS700_MISC_MAKE_VALID_ON_CURRENT_LOGICAL_CORE_INITS_COMPLETED_BEFORE_NOW_ON_ANY_OTHER_LOGICAL_CORE; lfds700_misc_prng_init(&ls); @@ -1264,7 +1264,7 @@ void enb_agent_init_mac_agent(mid_t mod_id) { void enb_agent_send_sr_info(mid_t mod_id) { int size; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; void *data; int priority; err_code_t err_code; @@ -1281,7 +1281,7 @@ void enb_agent_send_sr_info(mid_t mod_id) { data=enb_agent_pack_message(msg, &size); /*Send sr info using the MAC channel of the eNB*/ if (enb_agent_msg_send(mod_id, ENB_AGENT_MAC, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -1294,7 +1294,7 @@ void enb_agent_send_sr_info(mid_t mod_id) { void enb_agent_send_sf_trigger(mid_t mod_id) { int size; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; void *data; int priority; err_code_t err_code; @@ -1311,7 +1311,7 @@ void enb_agent_send_sf_trigger(mid_t mod_id) { data=enb_agent_pack_message(msg, &size); /*Send sr info using the MAC channel of the eNB*/ if (enb_agent_msg_send(mod_id, ENB_AGENT_MAC, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -1324,7 +1324,7 @@ void enb_agent_send_sf_trigger(mid_t mod_id) { void enb_agent_send_update_mac_stats(mid_t mod_id) { - Protocol__ProgranMessage *current_report = NULL, *msg; + Protocol__FlexranMessage *current_report = NULL, *msg; void *data; int size; err_code_t err_code; @@ -1352,7 +1352,7 @@ void enb_agent_send_update_mac_stats(mid_t mod_id) { /* msg = enb_agent_generate_diff_mac_stats_report(current_report, mac_stats_context[mod_id].prev_stats_reply); */ /* /\*Destroy the old stats*\/ */ - /* enb_agent_destroy_progran_message(mac_stats_context[mod_id].prev_stats_reply); */ + /* enb_agent_destroy_flexran_message(mac_stats_context[mod_id].prev_stats_reply); */ /* } */ /* /\*Use the current report for future comparissons*\/ */ /* mac_stats_context[mod_id].prev_stats_reply = current_report; */ @@ -1366,7 +1366,7 @@ void enb_agent_send_update_mac_stats(mid_t mod_id) { data=enb_agent_pack_message(current_report, &size); /*Send any stats updates using the MAC channel of the eNB*/ if (enb_agent_msg_send(mod_id, ENB_AGENT_MAC, data, size, priority)) { - err_code = PROTOCOL__PROGRAN_ERR__MSG_ENQUEUING; + err_code = PROTOCOL__FLEXRAN_ERR__MSG_ENQUEUING; goto error; } @@ -1447,8 +1447,8 @@ err_code_t enb_agent_destroy_cont_mac_stats_update(mid_t mod_id) { /*Disable the continuous updates for the MAC*/ mac_stats_context[mod_id].cont_update = 0; mac_stats_context[mod_id].is_initialized = 0; - enb_agent_destroy_progran_message(mac_stats_context[mod_id].stats_req); - enb_agent_destroy_progran_message(mac_stats_context[mod_id].prev_stats_reply); + enb_agent_destroy_flexran_message(mac_stats_context[mod_id].stats_req); + enb_agent_destroy_flexran_message(mac_stats_context[mod_id].prev_stats_reply); free(mac_stats_context[mod_id].mutex); mac_agent_registered[mod_id] = NULL; @@ -1463,7 +1463,7 @@ err_code_t enb_agent_enable_cont_mac_stats_update(mid_t mod_id, goto error; } - Protocol__ProgranMessage *req_msg; + Protocol__FlexranMessage *req_msg; enb_agent_mac_stats_request(mod_id, xid, stats_req, &req_msg); mac_stats_context[mod_id].stats_req = req_msg; @@ -1490,10 +1490,10 @@ err_code_t enb_agent_disable_cont_mac_stats_update(mid_t mod_id) { mac_stats_context[mod_id].cont_update = 0; mac_stats_context[mod_id].xid = 0; if (mac_stats_context[mod_id].stats_req != NULL) { - enb_agent_destroy_progran_message(mac_stats_context[mod_id].stats_req); + enb_agent_destroy_flexran_message(mac_stats_context[mod_id].stats_req); } if (mac_stats_context[mod_id].prev_stats_reply != NULL) { - enb_agent_destroy_progran_message(mac_stats_context[mod_id].prev_stats_reply); + enb_agent_destroy_flexran_message(mac_stats_context[mod_id].prev_stats_reply); } if (pthread_mutex_unlock(mac_stats_context[mod_id].mutex)) { goto error; diff --git a/openair2/ENB_APP/enb_agent_mac.h b/openair2/ENB_APP/enb_agent_mac.h index 2a8f4c3a404936c486266950c2dc95d4c9379c7c..a6b9a0fe80660d65da361a57cf904a886f51959e 100644 --- a/openair2/ENB_APP/enb_agent_mac.h +++ b/openair2/ENB_APP/enb_agent_mac.h @@ -29,7 +29,7 @@ /*! \file enb_agent_mac.h * \brief enb agent message handler APIs for MAC layer - * \author Navid Nikaein and Xenofon Foukas + * \author Xenofon Foukas, Mohamed Kassem and Navid Nikaein * \date 2016 * \version 0.1 */ @@ -38,7 +38,7 @@ #define ENB_AGENT_MAC_H_ #include "header.pb-c.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "stats_messages.pb-c.h" #include "stats_common.pb-c.h" @@ -52,14 +52,14 @@ typedef struct { uint16_t ue_rnti; uint32_t ue_report_flags; /* Indicates the report elements required for this UE id. See - ProgRAN specification 1.2.4.2 */ + FlexRAN specification 1.2.4.2 */ } ue_report_type_t; typedef struct { uint16_t cc_id; uint32_t cc_report_flags; /* Indicates the report elements required for this CC index. See - ProgRAN specification 1.2.4.3 */ + FlexRAN specification 1.2.4.3 */ } cc_report_type_t; typedef struct { @@ -79,29 +79,29 @@ typedef struct stats_request_config_s{ /* Initialization function for the agent structures etc */ void enb_agent_init_mac_agent(mid_t mod_id); -int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); +int enb_agent_mac_handle_stats(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); -int enb_agent_mac_stats_request(mid_t mod_id, xid_t xid, const stats_request_config_t *report_config, Protocol__ProgranMessage **msg); +int enb_agent_mac_stats_request(mid_t mod_id, xid_t xid, const stats_request_config_t *report_config, Protocol__FlexranMessage **msg); -int enb_agent_mac_destroy_stats_request(Protocol__ProgranMessage *msg); +int enb_agent_mac_destroy_stats_request(Protocol__FlexranMessage *msg); -int enb_agent_mac_stats_reply(mid_t mod_id, xid_t xid, const report_config_t *report_config, Protocol__ProgranMessage **msg); +int enb_agent_mac_stats_reply(mid_t mod_id, xid_t xid, const report_config_t *report_config, Protocol__FlexranMessage **msg); -int enb_agent_mac_destroy_stats_reply(Protocol__ProgranMessage *msg); +int enb_agent_mac_destroy_stats_reply(Protocol__FlexranMessage *msg); -int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); +int enb_agent_mac_sr_info(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); -int enb_agent_mac_destroy_sr_info(Protocol__ProgranMessage *msg); +int enb_agent_mac_destroy_sr_info(Protocol__FlexranMessage *msg); -int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); +int enb_agent_mac_sf_trigger(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); -int enb_agent_mac_destroy_sf_trigger(Protocol__ProgranMessage *msg); +int enb_agent_mac_destroy_sf_trigger(Protocol__FlexranMessage *msg); -int enb_agent_mac_create_empty_dl_config(mid_t mod_id, Protocol__ProgranMessage **msg); +int enb_agent_mac_create_empty_dl_config(mid_t mod_id, Protocol__FlexranMessage **msg); -int enb_agent_mac_destroy_dl_config(Protocol__ProgranMessage *msg); +int enb_agent_mac_destroy_dl_config(Protocol__FlexranMessage *msg); -int enb_agent_mac_handle_dl_mac_config(mid_t mod_id, const void *params, Protocol__ProgranMessage **msg); +int enb_agent_mac_handle_dl_mac_config(mid_t mod_id, const void *params, Protocol__FlexranMessage **msg); /********************************** @@ -119,7 +119,7 @@ void enb_agent_send_sf_trigger(mid_t mod_id); void enb_agent_send_update_mac_stats(mid_t mod_id); /// Provide to the scheduler a pending dl_mac_config message -void enb_agent_get_pending_dl_mac_config(mid_t mod_id, Protocol__ProgranMessage **msg); +void enb_agent_get_pending_dl_mac_config(mid_t mod_id, Protocol__FlexranMessage **msg); /*Register technology specific interface callbacks*/ int enb_agent_register_mac_xface(mid_t mod_id, AGENT_MAC_xface *xface); diff --git a/openair2/ENB_APP/enb_agent_mac_defs.h b/openair2/ENB_APP/enb_agent_mac_defs.h index 1511ee7262823d18cd176e0093ae5d98edb6971e..cf473cae7d3899ee01c38ac5b5ff3e28a8e8cb32 100644 --- a/openair2/ENB_APP/enb_agent_mac_defs.h +++ b/openair2/ENB_APP/enb_agent_mac_defs.h @@ -39,7 +39,7 @@ #define __ENB_AGENT_MAC_PRIMITIVES_H__ #include "enb_agent_defs.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "header.pb-c.h" #define RINGBUFFER_SIZE 100 @@ -60,13 +60,13 @@ typedef struct { /// Provide to the scheduler a pending dl_mac_config message void (*enb_agent_get_pending_dl_mac_config)(mid_t mod_id, - Protocol__ProgranMessage **msg); + Protocol__FlexranMessage **msg); - /// Run the UE DL scheduler and fill the Protocol__ProgranMessage. Assumes that - /// dl_info is already initialized as prp_dl_mac_config and fills the - /// prp_dl_data part of it + /// Run the UE DL scheduler and fill the Protocol__FlexranMessage. Assumes that + /// dl_info is already initialized as flex_dl_mac_config and fills the + /// flex_dl_data part of it void (*enb_agent_schedule_ue_spec)(mid_t mod_id, uint32_t frame, uint32_t subframe, - int *mbsfn_flag, Protocol__ProgranMessage **dl_info); + int *mbsfn_flag, Protocol__FlexranMessage **dl_info); /// Notify the controller for a state change of a particular UE, by sending the proper diff --git a/openair2/ENB_APP/enb_agent_mac_internal.c b/openair2/ENB_APP/enb_agent_mac_internal.c index 4d5ba34610fe32796912a425b8d780932a923b5a..b42b3ac79b2b61ca0fe8475f14a2a7887d2d8df9 100644 --- a/openair2/ENB_APP/enb_agent_mac_internal.c +++ b/openair2/ENB_APP/enb_agent_mac_internal.c @@ -39,20 +39,20 @@ #include "enb_agent_mac_internal.h" -Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__ProgranMessage *new_message, - Protocol__ProgranMessage *old_message) { +Protocol__FlexranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__FlexranMessage *new_message, + Protocol__FlexranMessage *old_message) { int i, j; - Protocol__PrpStatsReply *old_report, *new_report; + Protocol__FlexStatsReply *old_report, *new_report; - Protocol__PrpStatsReply *stats_reply_msg = NULL; - Protocol__ProgranMessage *msg = NULL; + Protocol__FlexStatsReply *stats_reply_msg = NULL; + Protocol__FlexranMessage *msg = NULL; - Protocol__PrpUeStatsReport **ue_report; - Protocol__PrpUeStatsReport *tmp_ue_report[NUM_MAX_UE]; - Protocol__PrpCellStatsReport **cell_report; - Protocol__PrpCellStatsReport *tmp_cell_report[NUM_MAX_UE]; + Protocol__FlexUeStatsReport **ue_report; + Protocol__FlexUeStatsReport *tmp_ue_report[NUM_MAX_UE]; + Protocol__FlexCellStatsReport **cell_report; + Protocol__FlexCellStatsReport *tmp_cell_report[NUM_MAX_UE]; old_report = old_message->stats_reply_msg; new_report = new_message->stats_reply_msg; @@ -113,7 +113,7 @@ Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__Pr /*TODO: create the reply message based on the findings*/ /*Create ue report list*/ if (n_ue_report > 0) { - ue_report = malloc(sizeof(Protocol__PrpUeStatsReport *)); + ue_report = malloc(sizeof(Protocol__FlexUeStatsReport *)); for (i = 0; i<n_ue_report; i++) { ue_report[i] = tmp_ue_report[i]; } @@ -121,7 +121,7 @@ Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__Pr /*Create cell report list*/ if (n_cell_report > 0) { - cell_report = malloc(sizeof(Protocol__PrpCellStatsReport *)); + cell_report = malloc(sizeof(Protocol__FlexCellStatsReport *)); for (i = 0; i<n_cell_report; i++) { cell_report[i] = tmp_cell_report[i]; } @@ -130,23 +130,23 @@ Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__Pr if (n_cell_report > 0 || n_ue_report > 0) { /*Create header*/ int xid = old_report->header->xid; - Protocol__PrpHeader *header; - if (prp_create_header(xid, PROTOCOL__PRP_TYPE__PRPT_STATS_REPLY, &header) != 0) { + Protocol__FlexHeader *header; + if (flex_create_header(xid, PROTOCOL__FLEX_TYPE__FLPT_STATS_REPLY, &header) != 0) { goto error; } - stats_reply_msg = malloc(sizeof(Protocol__PrpStatsReply)); - protocol__prp_stats_reply__init(stats_reply_msg); + stats_reply_msg = malloc(sizeof(Protocol__FlexStatsReply)); + protocol__flex_stats_reply__init(stats_reply_msg); stats_reply_msg->header = header; stats_reply_msg->n_ue_report = n_ue_report; stats_reply_msg->ue_report = ue_report; stats_reply_msg->n_cell_report = n_cell_report; stats_reply_msg->cell_report = cell_report; - msg = malloc(sizeof(Protocol__ProgranMessage)); + msg = malloc(sizeof(Protocol__FlexranMessage)); if(msg == NULL) goto error; - protocol__progran_message__init(msg); - msg->msg_case = PROTOCOL__PROGRAN_MESSAGE__MSG_STATS_REPLY_MSG; - msg->msg_dir = PROTOCOL__PROGRAN_DIRECTION__SUCCESSFUL_OUTCOME; + protocol__flexran_message__init(msg); + msg->msg_case = PROTOCOL__FLEXRAN_MESSAGE__MSG_STATS_REPLY_MSG; + msg->msg_dir = PROTOCOL__FLEXRAN_DIRECTION__SUCCESSFUL_OUTCOME; msg->stats_reply_msg = stats_reply_msg; } return msg; @@ -155,28 +155,28 @@ Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__Pr return NULL; } -int compare_ue_stats_reports(Protocol__PrpUeStatsReport *rep1, - Protocol__PrpUeStatsReport *rep2) { +int compare_ue_stats_reports(Protocol__FlexUeStatsReport *rep1, + Protocol__FlexUeStatsReport *rep2) { return 1; } -int compare_cell_stats_reports(Protocol__PrpCellStatsReport *rep1, - Protocol__PrpCellStatsReport *rep2) { +int compare_cell_stats_reports(Protocol__FlexCellStatsReport *rep1, + Protocol__FlexCellStatsReport *rep2) { return 1; } -Protocol__PrpUeStatsReport * copy_ue_stats_report(Protocol__PrpUeStatsReport * original) { +Protocol__FlexUeStatsReport * copy_ue_stats_report(Protocol__FlexUeStatsReport * original) { int i; - Protocol__PrpUeStatsReport *copy = malloc(sizeof(Protocol__PrpUeStatsReport)); + Protocol__FlexUeStatsReport *copy = malloc(sizeof(Protocol__FlexUeStatsReport)); if (copy == NULL) goto error; - protocol__prp_ue_stats_report__init(copy); + protocol__flex_ue_stats_report__init(copy); copy->rnti = original->rnti; copy->has_rnti = original->has_rnti; copy->flags = original->flags; copy->has_flags = original->has_flags; - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_BSR) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_BSR) { copy->n_bsr = original->n_bsr; if (copy->n_bsr > 0) { uint32_t *elem; @@ -190,16 +190,16 @@ Protocol__PrpUeStatsReport * copy_ue_stats_report(Protocol__PrpUeStatsReport * o } } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_PRH) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_PRH) { copy->has_phr = original->has_phr; copy->phr = original->phr; } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_RLC_BS) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_RLC_BS) { copy->n_rlc_report = original->n_rlc_report; if (copy->n_rlc_report > 0) { - Protocol__PrpRlcBsr ** rlc_reports; - rlc_reports = malloc(sizeof(Protocol__PrpRlcBsr) * copy->n_rlc_report); + Protocol__FlexRlcBsr ** rlc_reports; + rlc_reports = malloc(sizeof(Protocol__FlexRlcBsr) * copy->n_rlc_report); if (rlc_reports == NULL) goto error; for (i = 0; i < copy->n_rlc_report; i++) { @@ -209,22 +209,22 @@ Protocol__PrpUeStatsReport * copy_ue_stats_report(Protocol__PrpUeStatsReport * o } } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_MAC_CE_BS) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_MAC_CE_BS) { copy->has_pending_mac_ces = original->has_pending_mac_ces; copy->pending_mac_ces = original->pending_mac_ces; } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_DL_CQI) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_DL_CQI) { copy->dl_cqi_report = copy_dl_cqi_report(original->dl_cqi_report); } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_PBS) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_PBS) { /*Copy the Paging Buffer report*/ copy->pbr = copy_paging_buffer_report(original->pbr); } - if (copy->flags & PROTOCOL__PRP_UE_STATS_TYPE__PRUST_UL_CQI) { + if (copy->flags & PROTOCOL__FLEX_UE_STATS_TYPE__FLUST_UL_CQI) { /*TODO: Copy the UL report*/ copy->ul_cqi_report = copy_ul_cqi_report(original->ul_cqi_report); } @@ -235,11 +235,11 @@ Protocol__PrpUeStatsReport * copy_ue_stats_report(Protocol__PrpUeStatsReport * o return NULL; } -Protocol__PrpRlcBsr * copy_rlc_report(Protocol__PrpRlcBsr * original) { - Protocol__PrpRlcBsr * copy = malloc(sizeof(Protocol__PrpRlcBsr)); +Protocol__FlexRlcBsr * copy_rlc_report(Protocol__FlexRlcBsr * original) { + Protocol__FlexRlcBsr * copy = malloc(sizeof(Protocol__FlexRlcBsr)); if (copy == NULL) goto error; - protocol__prp_rlc_bsr__init(copy); + protocol__flex_rlc_bsr__init(copy); copy->lc_id = original->lc_id; copy->has_lc_id = original->has_lc_id; copy->tx_queue_size = original->tx_queue_size; @@ -259,30 +259,30 @@ Protocol__PrpRlcBsr * copy_rlc_report(Protocol__PrpRlcBsr * original) { return NULL; } -Protocol__PrpUlCqiReport * copy_ul_cqi_report(Protocol__PrpUlCqiReport * original) { +Protocol__FlexUlCqiReport * copy_ul_cqi_report(Protocol__FlexUlCqiReport * original) { int i, j; //Fill in the full UL CQI report of the UE - Protocol__PrpUlCqiReport *full_ul_report; - full_ul_report = malloc(sizeof(Protocol__PrpUlCqiReport)); + Protocol__FlexUlCqiReport *full_ul_report; + full_ul_report = malloc(sizeof(Protocol__FlexUlCqiReport)); if(full_ul_report == NULL) { goto error; } - protocol__prp_ul_cqi_report__init(full_ul_report); + protocol__flex_ul_cqi_report__init(full_ul_report); //TODO:Set the SFN and SF of the generated report full_ul_report->sfn_sn = original->sfn_sn; full_ul_report->has_sfn_sn = original->has_sfn_sn; full_ul_report->n_cqi_meas = original->n_cqi_meas; - Protocol__PrpUlCqi **ul_report; - ul_report = malloc(sizeof(Protocol__PrpUlCqi *) * full_ul_report->n_cqi_meas); + Protocol__FlexUlCqi **ul_report; + ul_report = malloc(sizeof(Protocol__FlexUlCqi *) * full_ul_report->n_cqi_meas); if(ul_report == NULL) goto error; for(i = 0; i++; i < full_ul_report->n_cqi_meas) { - ul_report[i] = malloc(sizeof(Protocol__PrpUlCqi)); + ul_report[i] = malloc(sizeof(Protocol__FlexUlCqi)); if(ul_report[i] == NULL) goto error; - protocol__prp_ul_cqi__init(ul_report[i]); + protocol__flex_ul_cqi__init(ul_report[i]); ul_report[i]->type = original->cqi_meas[i]->type; ul_report[i]->has_type = original->cqi_meas[i]->has_type; ul_report[i]->n_sinr = original->cqi_meas[i]->n_sinr; @@ -305,21 +305,21 @@ Protocol__PrpUlCqiReport * copy_ul_cqi_report(Protocol__PrpUlCqiReport * origina return NULL; } -Protocol__PrpDlCqiReport * copy_dl_cqi_report(Protocol__PrpDlCqiReport * original) { +Protocol__FlexDlCqiReport * copy_dl_cqi_report(Protocol__FlexDlCqiReport * original) { int i; /*Copy the DL report*/ - Protocol__PrpDlCqiReport * dl_report; - dl_report = malloc(sizeof(Protocol__PrpDlCqiReport)); + Protocol__FlexDlCqiReport * dl_report; + dl_report = malloc(sizeof(Protocol__FlexDlCqiReport)); if (dl_report == NULL) goto error; - protocol__prp_dl_cqi_report__init(dl_report); + protocol__flex_dl_cqi_report__init(dl_report); dl_report->sfn_sn = original->sfn_sn; dl_report->has_sfn_sn = original->has_sfn_sn; dl_report->n_csi_report = original->n_csi_report; - Protocol__PrpDlCsi **csi_reports; - csi_reports = malloc(sizeof(Protocol__PrpDlCsi *) * dl_report->n_csi_report); + Protocol__FlexDlCsi **csi_reports; + csi_reports = malloc(sizeof(Protocol__FlexDlCsi *) * dl_report->n_csi_report); if (csi_reports == NULL) goto error; @@ -334,26 +334,26 @@ Protocol__PrpDlCqiReport * copy_dl_cqi_report(Protocol__PrpDlCqiReport * origina return NULL; } -Protocol__PrpPagingBufferReport * copy_paging_buffer_report(Protocol__PrpPagingBufferReport *original) { +Protocol__FlexPagingBufferReport * copy_paging_buffer_report(Protocol__FlexPagingBufferReport *original) { int i; - Protocol__PrpPagingBufferReport *copy; - copy = malloc(sizeof(Protocol__PrpPagingBufferReport)); + Protocol__FlexPagingBufferReport *copy; + copy = malloc(sizeof(Protocol__FlexPagingBufferReport)); if (copy == NULL) goto error; - protocol__prp_paging_buffer_report__init(copy); + protocol__flex_paging_buffer_report__init(copy); copy->n_paging_info = original->n_paging_info; - Protocol__PrpPagingInfo **p_info; - p_info = malloc(sizeof(Protocol__PrpPagingInfo *) * copy->n_paging_info); + Protocol__FlexPagingInfo **p_info; + p_info = malloc(sizeof(Protocol__FlexPagingInfo *) * copy->n_paging_info); if (p_info == NULL) goto error; for (i = 0; i < copy->n_paging_info; i++) { - p_info[i] = malloc(sizeof(Protocol__PrpPagingInfo)); + p_info[i] = malloc(sizeof(Protocol__FlexPagingInfo)); if(p_info[i] == NULL) goto error; - protocol__prp_paging_info__init(p_info[i]); + protocol__flex_paging_info__init(p_info[i]); p_info[i]->paging_index = original->paging_info[i]->paging_index; p_info[i]->has_paging_index = original->paging_info[i]->has_paging_index;; p_info[i]->paging_message_size = original->paging_info[i]->paging_message_size; @@ -371,12 +371,12 @@ Protocol__PrpPagingBufferReport * copy_paging_buffer_report(Protocol__PrpPagingB return NULL; } -Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { +Protocol__FlexDlCsi * copy_csi_report(Protocol__FlexDlCsi * original) { int i, j; - Protocol__PrpDlCsi *copy = malloc(sizeof(Protocol__PrpDlCsi)); + Protocol__FlexDlCsi *copy = malloc(sizeof(Protocol__FlexDlCsi)); if (copy == NULL) goto error; - protocol__prp_dl_csi__init(copy); + protocol__flex_dl_csi__init(copy); copy->serv_cell_index = original->serv_cell_index; copy->has_serv_cell_index = original->has_serv_cell_index; copy->ri = original->ri; @@ -387,11 +387,11 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->report_case = original->report_case; switch (copy->report_case) { - case PROTOCOL__PRP_DL_CSI__REPORT_P10CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P10CSI: copy->p10csi->wb_cqi = original->p10csi->wb_cqi; copy->p10csi->has_wb_cqi = original->p10csi->has_wb_cqi; break; - case PROTOCOL__PRP_DL_CSI__REPORT_P11CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P11CSI: copy->p11csi->n_wb_cqi = original->p11csi->n_wb_cqi; copy->p11csi->wb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->p11csi->n_wb_cqi); for (i = 0; i < copy->p11csi->n_wb_cqi; i++) { @@ -400,7 +400,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->p11csi->has_wb_pmi = original->p11csi->has_wb_pmi; copy->p11csi->wb_pmi = original->p11csi->wb_pmi; break; - case PROTOCOL__PRP_DL_CSI__REPORT_P20CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P20CSI: copy->p20csi->has_wb_cqi = original->p20csi->has_wb_cqi; copy->p20csi->wb_cqi = original->p20csi->wb_cqi; copy->p20csi->has_sb_cqi = original->p20csi->has_sb_cqi; @@ -410,7 +410,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->p20csi->has_sb_index = original->p20csi->has_sb_index; copy->p20csi->sb_index = original->p20csi->sb_index; break; - case PROTOCOL__PRP_DL_CSI__REPORT_P21CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_P21CSI: copy->p21csi->n_wb_cqi = original->p21csi->n_wb_cqi; copy->p21csi->wb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->p21csi->n_wb_cqi); for (i = 0; i < copy->p21csi->n_wb_cqi; i++) { @@ -428,7 +428,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->p21csi->has_sb_index = original->p21csi->has_sb_index; copy->p21csi->sb_index = original->p21csi->sb_index; break; - case PROTOCOL__PRP_DL_CSI__REPORT_A12CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A12CSI: copy->a12csi->n_wb_cqi = original->a12csi->n_wb_cqi; copy->a12csi->wb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->a12csi->n_wb_cqi); for (i = 0; i < copy->a12csi->n_wb_cqi; i++) { @@ -440,7 +440,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->a12csi->sb_pmi[i] = original->a12csi->sb_pmi[i]; } break; - case PROTOCOL__PRP_DL_CSI__REPORT_A22CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A22CSI: copy->a22csi->n_wb_cqi = original->a22csi->n_wb_cqi; copy->a22csi->wb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->a22csi->n_wb_cqi); for (i = 0; i < copy->a22csi->n_wb_cqi; i++) { @@ -461,7 +461,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->a22csi->sb_list[i] = original->a22csi->sb_list[i]; } break; - case PROTOCOL__PRP_DL_CSI__REPORT_A20CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A20CSI: copy->a20csi->has_wb_cqi = original->a20csi->has_wb_cqi; copy->a20csi->wb_cqi = original->a20csi->wb_cqi; copy->a20csi->has_sb_cqi = original->a20csi->has_sb_cqi; @@ -472,7 +472,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->a20csi->sb_list[i] = original->a20csi->sb_list[i]; } break; - case PROTOCOL__PRP_DL_CSI__REPORT_A30CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A30CSI: copy->a30csi->has_wb_cqi = original->a30csi->has_wb_cqi; copy->a30csi->wb_cqi = original->a30csi->wb_cqi; copy->a30csi->n_sb_cqi = original->a30csi->n_sb_cqi; @@ -481,7 +481,7 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->a30csi->sb_cqi[i] = original->a30csi->sb_cqi[i]; } break; - case PROTOCOL__PRP_DL_CSI__REPORT_A31CSI: + case PROTOCOL__FLEX_DL_CSI__REPORT_A31CSI: copy->a31csi->n_wb_cqi = original->a31csi->n_wb_cqi; copy->a31csi->wb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->a31csi->n_wb_cqi); for (i = 0; i < copy->a31csi->n_wb_cqi; i++) { @@ -490,16 +490,16 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { copy->a31csi->has_wb_pmi = original->a31csi->has_wb_pmi; copy->a31csi->wb_pmi = original->a31csi->wb_pmi; copy->a31csi->n_sb_cqi = original->a31csi->n_sb_cqi; - copy->a31csi->sb_cqi = malloc(sizeof(Protocol__PrpMsbCqi *) * copy->a31csi->n_sb_cqi); + copy->a31csi->sb_cqi = malloc(sizeof(Protocol__FlexMsbCqi *) * copy->a31csi->n_sb_cqi); if (copy->a31csi == NULL) { goto error; } for (i = 0; i < copy->a31csi->n_sb_cqi; i++) { - copy->a31csi->sb_cqi[i] = malloc(sizeof(Protocol__PrpMsbCqi)); + copy->a31csi->sb_cqi[i] = malloc(sizeof(Protocol__FlexMsbCqi)); if (copy->a31csi->sb_cqi[i] == NULL) { goto error; } - protocol__prp_msb_cqi__init(copy->a31csi->sb_cqi[i]); + protocol__flex_msb_cqi__init(copy->a31csi->sb_cqi[i]); copy->a31csi->sb_cqi[i]->n_sb_cqi = original->a31csi->sb_cqi[i]->n_sb_cqi; copy->a31csi->sb_cqi[i]->sb_cqi = (uint32_t *) malloc(sizeof(uint32_t) * copy->a31csi->sb_cqi[i]->n_sb_cqi); for (j = 0; j < copy->a31csi->sb_cqi[i]->n_sb_cqi; j++) { @@ -516,20 +516,20 @@ Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original) { return NULL; } -Protocol__PrpCellStatsReport * copy_cell_stats_report(Protocol__PrpCellStatsReport *original) { +Protocol__FlexCellStatsReport * copy_cell_stats_report(Protocol__FlexCellStatsReport *original) { - Protocol__PrpCellStatsReport * copy = malloc(sizeof(Protocol__PrpCellStatsReport)); + Protocol__FlexCellStatsReport * copy = malloc(sizeof(Protocol__FlexCellStatsReport)); if(copy == NULL) { goto error; } - protocol__prp_cell_stats_report__init(copy); + protocol__flex_cell_stats_report__init(copy); copy->carrier_index = original->carrier_index; copy->has_carrier_index = original->has_carrier_index; copy->flags = original->flags; copy->has_flags = original->has_flags; - if(copy->flags & PROTOCOL__PRP_CELL_STATS_TYPE__PRCST_NOISE_INTERFERENCE) { + if(copy->flags & PROTOCOL__FLEX_CELL_STATS_TYPE__FLCST_NOISE_INTERFERENCE) { copy->noise_inter_report = copy_noise_inter_report(original->noise_inter_report); } @@ -539,13 +539,13 @@ Protocol__PrpCellStatsReport * copy_cell_stats_report(Protocol__PrpCellStatsRepo return NULL; } -Protocol__PrpNoiseInterferenceReport * copy_noise_inter_report(Protocol__PrpNoiseInterferenceReport *original) { - Protocol__PrpNoiseInterferenceReport *ni_report; - ni_report = malloc(sizeof(Protocol__PrpNoiseInterferenceReport)); +Protocol__FlexNoiseInterferenceReport * copy_noise_inter_report(Protocol__FlexNoiseInterferenceReport *original) { + Protocol__FlexNoiseInterferenceReport *ni_report; + ni_report = malloc(sizeof(Protocol__FlexNoiseInterferenceReport)); if(ni_report == NULL) { goto error; } - protocol__prp_noise_interference_report__init(ni_report); + protocol__flex_noise_interference_report__init(ni_report); // Current frame and subframe number ni_report->sfn_sf = original->sfn_sf; ni_report->has_sfn_sf = original->sfn_sf; diff --git a/openair2/ENB_APP/enb_agent_mac_internal.h b/openair2/ENB_APP/enb_agent_mac_internal.h index 4a76f0ed38948f89e629922e4ffd7d9c949a2bbe..86a021f946f113214d474904a5e39cdc951db78a 100644 --- a/openair2/ENB_APP/enb_agent_mac_internal.h +++ b/openair2/ENB_APP/enb_agent_mac_internal.h @@ -53,8 +53,8 @@ typedef struct { uint8_t is_initialized; volatile uint8_t cont_update; xid_t xid; - Protocol__ProgranMessage *stats_req; - Protocol__ProgranMessage *prev_stats_reply; + Protocol__FlexranMessage *stats_req; + Protocol__FlexranMessage *prev_stats_reply; pthread_mutex_t *mutex; } mac_stats_updates_context_t; @@ -75,30 +75,30 @@ err_code_t enb_agent_enable_cont_mac_stats_update(mid_t mod_id, xid_t xid, err_code_t enb_agent_disable_cont_mac_stats_update(mid_t mod_id); -Protocol__ProgranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__ProgranMessage *new_report, - Protocol__ProgranMessage *old_report); +Protocol__FlexranMessage * enb_agent_generate_diff_mac_stats_report(Protocol__FlexranMessage *new_report, + Protocol__FlexranMessage *old_report); -Protocol__PrpUeStatsReport * copy_ue_stats_report(Protocol__PrpUeStatsReport * original); +Protocol__FlexUeStatsReport * copy_ue_stats_report(Protocol__FlexUeStatsReport * original); -Protocol__PrpCellStatsReport * copy_cell_stats_report(Protocol__PrpCellStatsReport *original); +Protocol__FlexCellStatsReport * copy_cell_stats_report(Protocol__FlexCellStatsReport *original); -Protocol__PrpRlcBsr * copy_rlc_report(Protocol__PrpRlcBsr * original); +Protocol__FlexRlcBsr * copy_rlc_report(Protocol__FlexRlcBsr * original); -Protocol__PrpUlCqiReport * copy_ul_cqi_report(Protocol__PrpUlCqiReport * original); +Protocol__FlexUlCqiReport * copy_ul_cqi_report(Protocol__FlexUlCqiReport * original); -Protocol__PrpDlCqiReport * copy_dl_cqi_report(Protocol__PrpDlCqiReport * original); +Protocol__FlexDlCqiReport * copy_dl_cqi_report(Protocol__FlexDlCqiReport * original); -Protocol__PrpPagingBufferReport * copy_paging_buffer_report(Protocol__PrpPagingBufferReport *original); +Protocol__FlexPagingBufferReport * copy_paging_buffer_report(Protocol__FlexPagingBufferReport *original); -Protocol__PrpDlCsi * copy_csi_report(Protocol__PrpDlCsi * original); +Protocol__FlexDlCsi * copy_csi_report(Protocol__FlexDlCsi * original); -Protocol__PrpNoiseInterferenceReport * copy_noise_inter_report(Protocol__PrpNoiseInterferenceReport *original); +Protocol__FlexNoiseInterferenceReport * copy_noise_inter_report(Protocol__FlexNoiseInterferenceReport *original); -int compare_ue_stats_reports(Protocol__PrpUeStatsReport *rep1, - Protocol__PrpUeStatsReport *rep2); +int compare_ue_stats_reports(Protocol__FlexUeStatsReport *rep1, + Protocol__FlexUeStatsReport *rep2); -int compare_cell_stats_reports(Protocol__PrpCellStatsReport *rep1, - Protocol__PrpCellStatsReport *rep2); +int compare_cell_stats_reports(Protocol__FlexCellStatsReport *rep1, + Protocol__FlexCellStatsReport *rep2); /* Functions for parsing the MAC agent policy reconfiguration command */ diff --git a/openair2/ENB_APP/enb_agent_task_manager.c b/openair2/ENB_APP/enb_agent_task_manager.c index e2c31319e4f8318516318250ec5f37d0cd3789dd..9b4be2ff6ac75f030291ccfdf425bbc7f6d14e0f 100644 --- a/openair2/ENB_APP/enb_agent_task_manager.c +++ b/openair2/ENB_APP/enb_agent_task_manager.c @@ -48,7 +48,7 @@ #define RIGHT(x) (2 * (x) + 2) #define PARENT(x) ((x - 1) / 2) -enb_agent_task_t *enb_agent_task_create(Protocol__ProgranMessage *msg, +enb_agent_task_t *enb_agent_task_create(Protocol__FlexranMessage *msg, uint16_t frame_num, uint8_t subframe_num) { enb_agent_task_t *task = NULL; task = malloc(sizeof(enb_agent_task_t)); diff --git a/openair2/ENB_APP/enb_agent_task_manager.h b/openair2/ENB_APP/enb_agent_task_manager.h index ef60152b27257a9fd776ccc6f26f84cea9c44ec6..0c458061cf83e387ab43504b908ed6ef6b515bed 100644 --- a/openair2/ENB_APP/enb_agent_task_manager.h +++ b/openair2/ENB_APP/enb_agent_task_manager.h @@ -41,7 +41,7 @@ #include <stdint.h> #include <pthread.h> -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "enb_agent_common.h" @@ -59,8 +59,8 @@ typedef struct enb_agent_task_s { uint16_t frame_num; /* The subframe in which the task needs to be executed */ uint8_t subframe_num; - /* The task to be executed in the form of a Protocol__ProgranMessage */ - Protocol__ProgranMessage *task; + /* The task to be executed in the form of a Protocol__FlexranMessage */ + Protocol__FlexranMessage *task; } enb_agent_task_t; /** @@ -95,7 +95,7 @@ typedef enum { /** * Allocate memory for a task in the queue */ -enb_agent_task_t *enb_agent_task_create(Protocol__ProgranMessage *msg, +enb_agent_task_t *enb_agent_task_create(Protocol__FlexranMessage *msg, uint16_t frame_num, uint8_t subframe_num); /** diff --git a/openair2/LAYER2/MAC/eNB_agent_scheduler_dataplane.c b/openair2/LAYER2/MAC/eNB_agent_scheduler_dataplane.c index b2a66bfe2d20a4416da0c1da8d8168f54dc85ef0..b75b0467b1eb3c1367bf459fe02b2a4633f293b1 100644 --- a/openair2/LAYER2/MAC/eNB_agent_scheduler_dataplane.c +++ b/openair2/LAYER2/MAC/eNB_agent_scheduler_dataplane.c @@ -48,7 +48,7 @@ #include "LAYER2/MAC/defs.h" #include "LAYER2/MAC/proto.h" #include "LAYER2/MAC/extern.h" -#include "LAYER2/MAC/progran_dci_conversions.h" +#include "LAYER2/MAC/flexran_dci_conversions.h" #include "UTIL/LOG/log.h" #include "UTIL/LOG/vcd_signal_dumper.h" @@ -60,7 +60,7 @@ #include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h" #include "header.pb-c.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "SIMULATION/TOOLS/defs.h" // for taus @@ -69,9 +69,9 @@ void apply_dl_scheduling_decisions(mid_t mod_id, uint32_t frame, uint32_t subframe, int *mbsfn_flag, - const Protocol__ProgranMessage *dl_scheduling_info) { + const Protocol__FlexranMessage *dl_scheduling_info) { - Protocol__PrpDlMacConfig *mac_config = dl_scheduling_info->dl_mac_config_msg; + Protocol__FlexDlMacConfig *mac_config = dl_scheduling_info->dl_mac_config_msg; // Check if there is anything to schedule for random access if (mac_config->n_dl_rar > 0) { @@ -97,7 +97,7 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id, uint32_t subframe, int *mbsfn_flag, uint32_t n_dl_ue_data, - const Protocol__PrpDlData **dl_ue_data) { + const Protocol__FlexDlData **dl_ue_data) { uint8_t CC_id; int UE_id; @@ -128,8 +128,8 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id, int i; - Protocol__PrpDlData *dl_data; - Protocol__PrpDlDci *dl_dci; + Protocol__FlexDlData *dl_data; + Protocol__FlexDlDci *dl_dci; uint32_t rlc_size, n_lc, lcid; @@ -161,7 +161,7 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id, if (dl_data->n_ce_bitmap > 0) { //Check if there is TA command and set the length appropriately - ta_len = (dl_data->ce_bitmap[0] & PROTOCOL__PRP_CE_TYPE__PRPCET_TA) ? 2 : 0; + ta_len = (dl_data->ce_bitmap[0] & PROTOCOL__FLEX_CE_TYPE__FLPCET_TA) ? 2 : 0; } if (ta_len > 0) { @@ -359,7 +359,7 @@ void apply_ue_spec_scheduling_decisions(mid_t mod_id, } void fill_oai_dci(mid_t mod_id, uint32_t CC_id, uint32_t rnti, - const Protocol__PrpDlDci *dl_dci) { + const Protocol__FlexDlDci *dl_dci) { void *DLSCH_dci = NULL; DCI_PDU *DCI_pdu; @@ -397,92 +397,92 @@ void fill_oai_dci(mid_t mod_id, uint32_t CC_id, uint32_t rnti, switch (frame_parms[CC_id]->N_RB_DL) { case 6: if (frame_parms[CC_id]->frame_type == TDD) { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_TDD_1(DCI1_1_5MHz_TDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_1_5MHz_TDD_t); size_bits = sizeof_DCI1_1_5MHz_TDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } else { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_FDD_1(DCI1_1_5MHz_FDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_1_5MHz_FDD_t); size_bits = sizeof_DCI1_1_5MHz_FDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } break; case 25: if (frame_parms[CC_id]->frame_type == TDD) { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_TDD_1(DCI1_5MHz_TDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_5MHz_TDD_t); size_bits = sizeof_DCI1_5MHz_TDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } else { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_FDD_1(DCI1_5MHz_FDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_5MHz_FDD_t); size_bits = sizeof_DCI1_5MHz_FDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } break; case 50: if (frame_parms[CC_id]->frame_type == TDD) { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_TDD_1(DCI1_10MHz_TDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_10MHz_TDD_t); size_bits = sizeof_DCI1_10MHz_TDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } else { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_FDD_1(DCI1_10MHz_FDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_10MHz_FDD_t); size_bits = sizeof_DCI1_10MHz_FDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } break; case 100: if (frame_parms[CC_id]->frame_type == TDD) { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_TDD_1(DCI1_20MHz_TDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_20MHz_TDD_t); size_bits = sizeof_DCI1_20MHz_TDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } else { - if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1) { + if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1) { FILL_DCI_FDD_1(DCI1_20MHz_FDD_t, DLSCH_dci, dl_dci); size_bytes = sizeof(DCI1_20MHz_FDD_t); size_bits = sizeof_DCI1_20MHz_FDD_t; - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A) { //TODO - } else if (dl_dci->format == PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D) { + } else if (dl_dci->format == PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D) { //TODO } } @@ -491,31 +491,31 @@ void fill_oai_dci(mid_t mod_id, uint32_t CC_id, uint32_t rnti, //Set format to the proper type switch(dl_dci->format) { - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1: format = format1; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1A: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1A: format = format1A; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1B: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1B: format = format1B; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1C: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1C: format = format1C; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D: format = format1E_2A_M10PRB; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2: format = format2; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A: format = format2A; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2B: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2B: format = format2B; break; - case PROTOCOL__PRP_DCI_FORMAT__PRDCIF_3: + case PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_3: format = 3; break; default: diff --git a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue.c b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue.c index e1e22de5498e7755ffe282edd80dd91099f2db3b..90d5ad5f1b3e75d25606dfefd4a71b510b14b218 100644 --- a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue.c +++ b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue.c @@ -63,7 +63,7 @@ #include "pdcp.h" #include "header.pb-c.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "enb_agent_mac.h" #include "SIMULATION/TOOLS/defs.h" // for taus @@ -81,7 +81,7 @@ schedule_ue_spec_default( uint32_t frame, uint32_t subframe, int *mbsfn_flag, - Protocol__ProgranMessage **dl_info + Protocol__FlexranMessage **dl_info ) //------------------------------------------------------------------------------ { @@ -109,14 +109,14 @@ schedule_ue_spec_default( static int32_t tpc_accumulated=0; UE_sched_ctrl *ue_sched_ctl; - Protocol__PrpDlData *dl_data[NUM_MAX_UE]; + Protocol__FlexDlData *dl_data[NUM_MAX_UE]; int num_ues_added = 0; int channels_added = 0; - Protocol__PrpDlDci *dl_dci; - Protocol__PrpRlcPdu *rlc_pdus[11]; + Protocol__FlexDlDci *dl_dci; + Protocol__FlexRlcPdu *rlc_pdus[11]; uint32_t *ce_bitmap; - Protocol__PrpRlcPdu **rlc_pdu; + Protocol__FlexRlcPdu **rlc_pdu; int num_tb; uint32_t ce_flags = 0; @@ -216,8 +216,8 @@ schedule_ue_spec_default( channels_added = 0; // After this point all the UEs will be scheduled - dl_data[num_ues_added] = (Protocol__PrpDlData *) malloc(sizeof(Protocol__PrpDlData)); - protocol__prp_dl_data__init(dl_data[num_ues_added]); + dl_data[num_ues_added] = (Protocol__FlexDlData *) malloc(sizeof(Protocol__FlexDlData)); + protocol__flex_dl_data__init(dl_data[num_ues_added]); dl_data[num_ues_added]->has_rnti = 1; dl_data[num_ues_added]->rnti = rnti; dl_data[num_ues_added]->n_rlc_pdu = 0; @@ -258,8 +258,8 @@ schedule_ue_spec_default( eNB_UE_stats->DL_cqi[0], mcs, UE_list->eNB_UE_stats[CC_id][UE_id].rrc_status); - dl_dci = (Protocol__PrpDlDci*) malloc(sizeof(Protocol__PrpDlDci)); - protocol__prp_dl_dci__init(dl_dci); + dl_dci = (Protocol__FlexDlDci*) malloc(sizeof(Protocol__FlexDlDci)); + protocol__flex_dl_dci__init(dl_dci); dl_data[num_ues_added]->dl_dci = dl_dci; @@ -353,12 +353,12 @@ schedule_ue_spec_default( dl_data[num_ues_added]->ce_bitmap = (uint32_t *) malloc(sizeof(uint32_t) * 2); if (ta_len > 0) { - ce_flags |= PROTOCOL__PRP_CE_TYPE__PRPCET_TA; + ce_flags |= PROTOCOL__FLEX_CE_TYPE__FLPCET_TA; } /*TODO: Add other flags if DRX and other CE are required*/ - // Add the control element flags to the progran message + // Add the control element flags to the flexran message dl_data[num_ues_added]->ce_bitmap[0] = ce_flags; dl_data[num_ues_added]->ce_bitmap[1] = ce_flags; @@ -394,18 +394,18 @@ schedule_ue_spec_default( data_to_request++; //It is not correct but fixes some RLC bug for DCCH } LOG_D(MAC, "[TEST]Will request %d from DCCH\n", data_to_request); - rlc_pdus[channels_added] = (Protocol__PrpRlcPdu *) malloc(sizeof(Protocol__PrpRlcPdu)); - protocol__prp_rlc_pdu__init(rlc_pdus[channels_added]); + rlc_pdus[channels_added] = (Protocol__FlexRlcPdu *) malloc(sizeof(Protocol__FlexRlcPdu)); + protocol__flex_rlc_pdu__init(rlc_pdus[channels_added]); rlc_pdus[channels_added]->n_rlc_pdu_tb = 2; - rlc_pdus[channels_added]->rlc_pdu_tb = (Protocol__PrpRlcPduTb **) malloc(sizeof(Protocol__PrpRlcPduTb *) * 2); - rlc_pdus[channels_added]->rlc_pdu_tb[0] = (Protocol__PrpRlcPduTb *) malloc(sizeof(Protocol__PrpRlcPduTb)); - protocol__prp_rlc_pdu_tb__init(rlc_pdus[channels_added]->rlc_pdu_tb[0]); + rlc_pdus[channels_added]->rlc_pdu_tb = (Protocol__FlexRlcPduTb **) malloc(sizeof(Protocol__FlexRlcPduTb *) * 2); + rlc_pdus[channels_added]->rlc_pdu_tb[0] = (Protocol__FlexRlcPduTb *) malloc(sizeof(Protocol__FlexRlcPduTb)); + protocol__flex_rlc_pdu_tb__init(rlc_pdus[channels_added]->rlc_pdu_tb[0]); rlc_pdus[channels_added]->rlc_pdu_tb[0]->has_logical_channel_id = 1; rlc_pdus[channels_added]->rlc_pdu_tb[0]->logical_channel_id = j; rlc_pdus[channels_added]->rlc_pdu_tb[0]->has_size = 1; rlc_pdus[channels_added]->rlc_pdu_tb[0]->size = data_to_request; - rlc_pdus[channels_added]->rlc_pdu_tb[1] = (Protocol__PrpRlcPduTb *) malloc(sizeof(Protocol__PrpRlcPduTb)); - protocol__prp_rlc_pdu_tb__init(rlc_pdus[channels_added]->rlc_pdu_tb[1]); + rlc_pdus[channels_added]->rlc_pdu_tb[1] = (Protocol__FlexRlcPduTb *) malloc(sizeof(Protocol__FlexRlcPduTb)); + protocol__flex_rlc_pdu_tb__init(rlc_pdus[channels_added]->rlc_pdu_tb[1]); rlc_pdus[channels_added]->rlc_pdu_tb[1]->has_logical_channel_id = 1; rlc_pdus[channels_added]->rlc_pdu_tb[1]->logical_channel_id = j; rlc_pdus[channels_added]->rlc_pdu_tb[1]->has_size = 1; @@ -422,7 +422,7 @@ schedule_ue_spec_default( } // End of iterating the logical channels // Add rlc_pdus to the dl_data message - dl_data[num_ues_added]->rlc_pdu = (Protocol__PrpRlcPdu **) malloc(sizeof(Protocol__PrpRlcPdu *) * + dl_data[num_ues_added]->rlc_pdu = (Protocol__FlexRlcPdu **) malloc(sizeof(Protocol__FlexRlcPdu *) * dl_data[num_ues_added]->n_rlc_pdu); for (i = 0; i < dl_data[num_ues_added]->n_rlc_pdu; i++) { dl_data[num_ues_added]->rlc_pdu[i] = rlc_pdus[i]; @@ -595,9 +595,9 @@ schedule_ue_spec_default( dl_dci->has_res_alloc = 1; dl_dci->res_alloc = 0; dl_dci->has_vrb_format = 1; - dl_dci->vrb_format = PROTOCOL__PRP_VRB_FORMAT__PRVRBF_LOCALIZED; + dl_dci->vrb_format = PROTOCOL__FLEX_VRB_FORMAT__FLVRBF_LOCALIZED; dl_dci->has_format = 1; - dl_dci->format = PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1; + dl_dci->format = PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1; dl_dci->has_rb_bitmap = 1; dl_dci->rb_bitmap = allocate_prbs_sub(nb_rb, rballoc_sub); dl_dci->has_rb_shift = 1; @@ -625,9 +625,9 @@ schedule_ue_spec_default( dl_dci->has_res_alloc = 1; dl_dci->res_alloc = 0; dl_dci->has_vrb_format = 1; - dl_dci->vrb_format = PROTOCOL__PRP_VRB_FORMAT__PRVRBF_LOCALIZED; + dl_dci->vrb_format = PROTOCOL__FLEX_VRB_FORMAT__FLVRBF_LOCALIZED; dl_dci->has_format = 1; - dl_dci->format = PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A; + dl_dci->format = PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A; dl_dci->has_rb_bitmap = 1; dl_dci->rb_bitmap = allocate_prbs_sub(nb_rb, rballoc_sub); dl_dci->has_rb_shift = 1; @@ -659,9 +659,9 @@ schedule_ue_spec_default( dl_dci->has_res_alloc = 1; dl_dci->res_alloc = 0; dl_dci->has_vrb_format = 1; - dl_dci->vrb_format = PROTOCOL__PRP_VRB_FORMAT__PRVRBF_LOCALIZED; + dl_dci->vrb_format = PROTOCOL__FLEX_VRB_FORMAT__FLVRBF_LOCALIZED; dl_dci->has_format = 1; - dl_dci->format = PROTOCOL__PRP_DCI_FORMAT__PRDCIF_2A; + dl_dci->format = PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_2A; dl_dci->has_rb_bitmap = 1; dl_dci->rb_bitmap = allocate_prbs_sub(nb_rb, rballoc_sub); dl_dci->has_rb_shift = 1; @@ -693,9 +693,9 @@ schedule_ue_spec_default( dl_dci->has_res_alloc = 1; dl_dci->res_alloc = 0; dl_dci->has_vrb_format = 1; - dl_dci->vrb_format = PROTOCOL__PRP_VRB_FORMAT__PRVRBF_LOCALIZED; + dl_dci->vrb_format = PROTOCOL__FLEX_VRB_FORMAT__FLVRBF_LOCALIZED; dl_dci->has_format = 1; - dl_dci->format = PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D; + dl_dci->format = PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D; dl_dci->has_rb_bitmap = 1; dl_dci->rb_bitmap = allocate_prbs_sub(nb_rb, rballoc_sub); dl_dci->has_rb_shift = 1; @@ -733,9 +733,9 @@ schedule_ue_spec_default( dl_dci->has_res_alloc = 1; dl_dci->res_alloc = 0; dl_dci->has_vrb_format = 1; - dl_dci->vrb_format = PROTOCOL__PRP_VRB_FORMAT__PRVRBF_LOCALIZED; + dl_dci->vrb_format = PROTOCOL__FLEX_VRB_FORMAT__FLVRBF_LOCALIZED; dl_dci->has_format = 1; - dl_dci->format = PROTOCOL__PRP_DCI_FORMAT__PRDCIF_1D; + dl_dci->format = PROTOCOL__FLEX_DCI_FORMAT__FLDCIF_1D; dl_dci->has_rb_bitmap = 1; dl_dci->rb_bitmap = allocate_prbs_sub(nb_rb, rballoc_sub); dl_dci->has_rb_shift = 1; @@ -770,9 +770,9 @@ schedule_ue_spec_default( } // UE_id loop } // CC_id loop - // Add all the dl_data elements to the progran message + // Add all the dl_data elements to the flexran message (*dl_info)->dl_mac_config_msg->n_dl_ue_data = num_ues_added; - (*dl_info)->dl_mac_config_msg->dl_ue_data = (Protocol__PrpDlData **) malloc(sizeof(Protocol__PrpDlData *) * num_ues_added); + (*dl_info)->dl_mac_config_msg->dl_ue_data = (Protocol__FlexDlData **) malloc(sizeof(Protocol__FlexDlData *) * num_ues_added); for (i = 0; i < num_ues_added; i++) { (*dl_info)->dl_mac_config_msg->dl_ue_data[i] = dl_data[i]; } diff --git a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.c b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.c index d8d23733326f7eed9a01d85491d929088d54b37f..b5882c84e36efa9658d5bed82795d7c8729b767f 100644 --- a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.c +++ b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.c @@ -53,7 +53,7 @@ int queue_initialized = 0; //uint32_t sched [] = {1, 2, 3}; void schedule_ue_spec_remote(mid_t mod_id, uint32_t frame, uint32_t subframe, - int *mbsfn_flag, Protocol__ProgranMessage **dl_info) { + int *mbsfn_flag, Protocol__FlexranMessage **dl_info) { //if ((subframe == skip_subframe) && (frame % period == 0)) { diff --git a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.h b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.h index 7d2c2cbc6ff192236b1f219112396b149010c29d..9ff750969be2b57eb889855840b8e1103371e44d 100644 --- a/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.h +++ b/openair2/LAYER2/MAC/eNB_agent_scheduler_dlsch_ue_remote.h @@ -40,7 +40,7 @@ #ifndef __LAYER2_MAC_ENB_AGENT_SCHEDULER_DLSCH_UE_REMOTE_H__ #define __LAYER2_MAC_ENB_AGENT_SCHEDULER_DLSCH_UE_REMOTE_H___ -#include "progran.pb-c.h" +#include "flexran.pb-c.h" #include "header.pb-c.h" #include "ENB_APP/enb_agent_defs.h" @@ -54,7 +54,7 @@ #define SCHED_AHEAD_SUBFRAMES 20 typedef struct dl_mac_config_element_s { - Protocol__ProgranMessage *dl_info; + Protocol__FlexranMessage *dl_info; TAILQ_ENTRY(dl_mac_config_element_s) configs; } dl_mac_config_element_t; @@ -64,7 +64,7 @@ TAILQ_HEAD(DlMacConfigHead, dl_mac_config_element_s); * Default scheduler used by the eNB agent */ void schedule_ue_spec_remote(mid_t mod_id, uint32_t frame, uint32_t subframe, - int *mbsfn_flag, Protocol__ProgranMessage **dl_info); + int *mbsfn_flag, Protocol__FlexranMessage **dl_info); // Find the difference in subframes from the given subframe diff --git a/openair2/LAYER2/MAC/eNB_scheduler.c b/openair2/LAYER2/MAC/eNB_scheduler.c index f83606eddfb78df7995e94dd480a2780f1485710..b57f5e965b8d0aa83aff289f3b31bfcf87aaa095 100644 --- a/openair2/LAYER2/MAC/eNB_scheduler.c +++ b/openair2/LAYER2/MAC/eNB_scheduler.c @@ -103,7 +103,7 @@ void eNB_dlsch_ulsch_scheduler(module_id_t module_idP,uint8_t cooperation_flag, void *DLSCH_dci=NULL; int size_bits=0,size_bytes=0; - Protocol__ProgranMessage *msg; + Protocol__FlexranMessage *msg; LOG_D(MAC,"[eNB %d] Frame %d, Subframe %d, entering MAC scheduler (UE_list->head %d)\n",module_idP, frameP, subframeP,UE_list->head); @@ -143,7 +143,7 @@ void eNB_dlsch_ulsch_scheduler(module_id_t module_idP,uint8_t cooperation_flag, if (mac_agent_registered[module_idP]) { agent_mac_xface[module_idP]->enb_agent_notify_ue_state_change(module_idP, rnti, - PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_DEACTIVATED); + PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_DEACTIVATED); } } else { diff --git a/openair2/LAYER2/MAC/enb_agent_mac_proto.h b/openair2/LAYER2/MAC/enb_agent_mac_proto.h index f453fa2fa309ce62f448119164ef05b92e2d2d81..3c2d36e678e74b913e9c71421710c8e60157fb5c 100644 --- a/openair2/LAYER2/MAC/enb_agent_mac_proto.h +++ b/openair2/LAYER2/MAC/enb_agent_mac_proto.h @@ -42,29 +42,29 @@ #include "enb_agent_defs.h" #include "header.pb-c.h" -#include "progran.pb-c.h" +#include "flexran.pb-c.h" /* * Default scheduler used by the eNB agent */ void schedule_ue_spec_default(mid_t mod_id, uint32_t frame, uint32_t subframe, - int *mbsfn_flag, Protocol__ProgranMessage **dl_info); + int *mbsfn_flag, Protocol__FlexranMessage **dl_info); /* * Data plane function for applying the DL decisions of the scheduler */ void apply_dl_scheduling_decisions(mid_t mod_id, uint32_t frame, uint32_t subframe, int *mbsfn_flag, - const Protocol__ProgranMessage *dl_scheduling_info); + const Protocol__FlexranMessage *dl_scheduling_info); /* * Data plane function for applying the UE specific DL decisions of the scheduler */ void apply_ue_spec_scheduling_decisions(mid_t mod_id, uint32_t frame, uint32_t subframe, int *mbsfn_flag, - uint32_t n_dl_ue_data, const Protocol__PrpDlData **dl_ue_data); + uint32_t n_dl_ue_data, const Protocol__FlexDlData **dl_ue_data); /* * Data plane function for filling the DCI structure */ -void fill_oai_dci(mid_t mod_id, uint32_t CC_id, uint32_t rnti, const Protocol__PrpDlDci *dl_dci); +void fill_oai_dci(mid_t mod_id, uint32_t CC_id, uint32_t rnti, const Protocol__FlexDlDci *dl_dci); #endif diff --git a/openair2/LAYER2/MAC/progran_dci_conversions.h b/openair2/LAYER2/MAC/flexran_dci_conversions.h similarity index 58% rename from openair2/LAYER2/MAC/progran_dci_conversions.h rename to openair2/LAYER2/MAC/flexran_dci_conversions.h index 90324fdb30041fb12092283a5f6edb2df8956375..e9d9494a1a5d922eb78f8b6f3f0f217471a68308 100644 --- a/openair2/LAYER2/MAC/progran_dci_conversions.h +++ b/openair2/LAYER2/MAC/flexran_dci_conversions.h @@ -28,32 +28,32 @@ *******************************************************************************/ /*! \file dci_conversions.h - * \brief Conversion helpers from progran messages to OAI formats DCI + * \brief Conversion helpers from flexran messages to OAI formats DCI * \author Xenofon Foukas * \date 2016 * \version 0.1 */ -#ifndef LAYER2_MAC_PROGRAN_DCI_CONVERISIONS_H__ -#define LAYER2_MAC_DCI_PROGRAN_CONVERISIONS_H__ - -#define FILL_DCI_FDD_1(TYPE, DCI, PROGRAN_DCI) \ - ((TYPE*)DCI)->harq_pid = PROGRAN_DCI->harq_process; \ - ((TYPE*)DCI)->rv = PROGRAN_DCI->rv[0]; \ - ((TYPE*)DCI)->rballoc = PROGRAN_DCI->rb_bitmap; \ - ((TYPE*)DCI)->rah = PROGRAN_DCI->res_alloc; \ - ((TYPE*)DCI)->mcs = PROGRAN_DCI->mcs[0]; \ - ((TYPE*)DCI)->TPC = PROGRAN_DCI->tpc; \ - ((TYPE*)DCI)->ndi = PROGRAN_DCI->ndi[0]; - -#define FILL_DCI_TDD_1(TYPE, DCI, PROGRAN_DCI) \ - ((TYPE*)DCI)->harq_pid = PROGRAN_DCI->harq_process; \ - ((TYPE*)DCI)->rv = PROGRAN_DCI->rv[0]; \ - ((TYPE*)DCI)->dai = PROGRAN_DCI->dai; \ - ((TYPE*)DCI)->rballoc = PROGRAN_DCI->rb_bitmap; \ - ((TYPE*)DCI)->rah = PROGRAN_DCI->res_alloc; \ - ((TYPE*)DCI)->mcs = PROGRAN_DCI->mcs[0]; \ - ((TYPE*)DCI)->TPC = PROGRAN_DCI->tpc; \ - ((TYPE*)DCI)->ndi = PROGRAN_DCI->ndi[0]; +#ifndef LAYER2_MAC_FLEXRAN_DCI_CONVERISIONS_H__ +#define LAYER2_MAC_DCI_FLEXRAN_CONVERISIONS_H__ + +#define FILL_DCI_FDD_1(TYPE, DCI, FLEXRAN_DCI) \ + ((TYPE*)DCI)->harq_pid = FLEXRAN_DCI->harq_process; \ + ((TYPE*)DCI)->rv = FLEXRAN_DCI->rv[0]; \ + ((TYPE*)DCI)->rballoc = FLEXRAN_DCI->rb_bitmap; \ + ((TYPE*)DCI)->rah = FLEXRAN_DCI->res_alloc; \ + ((TYPE*)DCI)->mcs = FLEXRAN_DCI->mcs[0]; \ + ((TYPE*)DCI)->TPC = FLEXRAN_DCI->tpc; \ + ((TYPE*)DCI)->ndi = FLEXRAN_DCI->ndi[0]; + +#define FILL_DCI_TDD_1(TYPE, DCI, FLEXRAN_DCI) \ + ((TYPE*)DCI)->harq_pid = FLEXRAN_DCI->harq_process; \ + ((TYPE*)DCI)->rv = FLEXRAN_DCI->rv[0]; \ + ((TYPE*)DCI)->dai = FLEXRAN_DCI->dai; \ + ((TYPE*)DCI)->rballoc = FLEXRAN_DCI->rb_bitmap; \ + ((TYPE*)DCI)->rah = FLEXRAN_DCI->res_alloc; \ + ((TYPE*)DCI)->mcs = FLEXRAN_DCI->mcs[0]; \ + ((TYPE*)DCI)->TPC = FLEXRAN_DCI->tpc; \ + ((TYPE*)DCI)->ndi = FLEXRAN_DCI->ndi[0]; #endif diff --git a/openair2/RRC/LITE/rrc_eNB.c b/openair2/RRC/LITE/rrc_eNB.c index 655c8d4c02601539a619c7d1419bacac13ca221b..2b075a7ed39485efa9adadfcd6aaa747522ae45c 100644 --- a/openair2/RRC/LITE/rrc_eNB.c +++ b/openair2/RRC/LITE/rrc_eNB.c @@ -4545,7 +4545,7 @@ rrc_eNB_decode_dcch( if (mac_agent_registered[ctxt_pP->module_id]) { agent_mac_xface[ctxt_pP->eNB_index]->enb_agent_notify_ue_state_change(ctxt_pP->module_id, ue_context_p->ue_id_rnti, - PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_UPDATED); + PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_UPDATED); } } #if defined(ENABLE_ITTI) @@ -4646,7 +4646,7 @@ rrc_eNB_decode_dcch( if (mac_agent_registered[ctxt_pP->module_id]) { agent_mac_xface[ctxt_pP->eNB_index]->enb_agent_notify_ue_state_change(ctxt_pP->module_id, ue_context_p->ue_id_rnti, - PROTOCOL__PRP_UE_STATE_CHANGE_TYPE__PRUESC_ACTIVATED); + PROTOCOL__FLEX_UE_STATE_CHANGE_TYPE__FLUESC_ACTIVATED); } } }