warning reducing

parent 0b3e6170
...@@ -1078,11 +1078,11 @@ int flexran_agent_mac_create_empty_ul_config(mid_t mod_id, Protocol__FlexranMess ...@@ -1078,11 +1078,11 @@ int flexran_agent_mac_create_empty_ul_config(mid_t mod_id, Protocol__FlexranMess
int flexran_agent_mac_destroy_ul_config(Protocol__FlexranMessage *msg) { int flexran_agent_mac_destroy_ul_config(Protocol__FlexranMessage *msg) {
int i,j, k; int i; //,j, k;
if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_UL_MAC_CONFIG_MSG) if(msg->msg_case != PROTOCOL__FLEXRAN_MESSAGE__MSG_UL_MAC_CONFIG_MSG)
goto error; goto error;
Protocol__FlexUlDci *ul_dci; // Protocol__FlexUlDci *ul_dci;
free(msg->ul_mac_config_msg->header); free(msg->ul_mac_config_msg->header);
for (i = 0; i < msg->ul_mac_config_msg->n_ul_ue_data; i++) { for (i = 0; i < msg->ul_mac_config_msg->n_ul_ue_data; i++) {
...@@ -1096,13 +1096,13 @@ int flexran_agent_mac_destroy_ul_config(Protocol__FlexranMessage *msg) { ...@@ -1096,13 +1096,13 @@ int flexran_agent_mac_destroy_ul_config(Protocol__FlexranMessage *msg) {
// free(msg->ul_mac_config_msg->ul_ue_data[i]->rlc_pdu[j]); // free(msg->ul_mac_config_msg->ul_ue_data[i]->rlc_pdu[j]);
// } // }
// free(msg->ul_mac_config_msg->ul_ue_data[i]->rlc_pdu); // free(msg->ul_mac_config_msg->ul_ue_data[i]->rlc_pdu);
ul_dci = msg->ul_mac_config_msg->ul_ue_data[i]->ul_dci; // ul_dci = msg->ul_mac_config_msg->ul_ue_data[i]->ul_dci;
// free(dl_dci->tbs_size); // free(dl_dci->tbs_size);
// free(ul_dci->mcs); // free(ul_dci->mcs);
// free(ul_dci->ndi); // free(ul_dci->ndi);
// free(ul_dci->rv); // free(ul_dci->rv);
// free(ul_dci); // free(ul_dci);
free(msg->ul_mac_config_msg->ul_ue_data[i]); // free(msg->ul_mac_config_msg->ul_ue_data[i]);
} }
free(msg->ul_mac_config_msg->ul_ue_data); free(msg->ul_mac_config_msg->ul_ue_data);
...@@ -1269,7 +1269,7 @@ int flexran_agent_unregister_mac_xface(mid_t mod_id, AGENT_MAC_xface *xface) { ...@@ -1269,7 +1269,7 @@ int flexran_agent_unregister_mac_xface(mid_t mod_id, AGENT_MAC_xface *xface) {
//xface->flexran_agent_send_update_mac_stats = NULL; //xface->flexran_agent_send_update_mac_stats = NULL;
xface->flexran_agent_schedule_ue_spec = NULL; xface->flexran_agent_schedule_ue_spec = NULL;
xface->flexran_agent_get_pending_dl_mac_config = NULL; xface->flexran_agent_get_pending_dl_mac_config = NULL;
xface->flexran_agent_schedule_ul_spec = NULL;
xface->dl_scheduler_loaded_lib = NULL; xface->dl_scheduler_loaded_lib = NULL;
xface->ul_scheduler_loaded_lib = NULL; xface->ul_scheduler_loaded_lib = NULL;
......
...@@ -60,9 +60,10 @@ typedef struct { ...@@ -60,9 +60,10 @@ typedef struct {
void (*flexran_agent_schedule_ue_spec)(mid_t mod_id, uint32_t frame, uint32_t subframe, void (*flexran_agent_schedule_ue_spec)(mid_t mod_id, uint32_t frame, uint32_t subframe,
int *mbsfn_flag, Protocol__FlexranMessage **dl_info); int *mbsfn_flag, Protocol__FlexranMessage **dl_info);
/// Run the UE UL scheduler and fill the Protocol__FlexranMessage. Assumes that
void (*flexran_agent_schedule_ul_spec)(mid_t module_idP, uint32_t frameP, unsigned char cooperation_flag,
uint32_t subframeP, unsigned char sched_subframe, Protocol__FlexranMessage **ul_info); void (*flexran_agent_schedule_ul_spec)(mid_t module_idP, uint32_t frameP, uint32_t cooperation_flag,
int subframeP, unsigned char sched_subframe, Protocol__FlexranMessage **ul_info);
/// Notify the controller for a state change of a particular UE, by sending the proper /// Notify the controller for a state change of a particular UE, by sending the proper
/// UE state change message (ACTIVATION, DEACTIVATION, HANDOVER) /// UE state change message (ACTIVATION, DEACTIVATION, HANDOVER)
......
...@@ -397,6 +397,11 @@ int flexran_agent_control_delegation(mid_t mod_id, const void *params, Protocol_ ...@@ -397,6 +397,11 @@ int flexran_agent_control_delegation(mid_t mod_id, const void *params, Protocol_
status = mkdir(local_cache, S_IRWXU | S_IRWXG | S_IRWXO); status = mkdir(local_cache, S_IRWXU | S_IRWXG | S_IRWXO);
if (status < 0){
LOG_W(ENB_APP, "Couldn't create local cache!");
}
FILE *f; FILE *f;
f = fopen(target, "wb"); f = fopen(target, "wb");
fwrite(control_delegation_msg->payload.data, control_delegation_msg->payload.len, 1, f); fwrite(control_delegation_msg->payload.data, control_delegation_msg->payload.len, 1, f);
......
...@@ -317,7 +317,7 @@ int flexran_get_harq(const mid_t mod_id, ...@@ -317,7 +317,7 @@ int flexran_get_harq(const mid_t mod_id,
} else if (harq_flag == openair_harq_UL){ } else if (harq_flag == openair_harq_UL){
mac_xface->get_ue_active_harq_pid(mod_id,CC_id,rnti,frame,subframe,&harq_pid,&round,openair_harq_UL); mac_xface->get_ue_active_harq_pid(mod_id,CC_id,rnti,frame,subframe,&harq_pid,round,openair_harq_UL);
} }
else { else {
......
...@@ -314,3 +314,6 @@ int flexran_agent_get_operating_pdsch_refpower (mid_t mod_id, int cc_id); ...@@ -314,3 +314,6 @@ int flexran_agent_get_operating_pdsch_refpower (mid_t mod_id, int cc_id);
/*Get uplink power*/ /*Get uplink power*/
int flexran_agent_get_operating_pusch_p0 (mid_t mod_id, int cc_id); int flexran_agent_get_operating_pusch_p0 (mid_t mod_id, int cc_id);
/*RRC status flexRAN*/
int flexran_get_rrc_status(const mid_t mod_id, const rnti_t rntiP);
\ No newline at end of file
...@@ -163,6 +163,15 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP, ...@@ -163,6 +163,15 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP,
uint16_t *first_rb); uint16_t *first_rb);
void flexran_agent_schedule_ulsch_rnti(module_id_t module_idP,
unsigned char cooperation_flag,
frame_t frameP,
sub_frame_t subframeP,
unsigned char sched_subframe,
uint16_t *first_rb);
/* Downlink Primitives */
void _dlsch_scheduler_pre_processor (module_id_t Mod_id, void _dlsch_scheduler_pre_processor (module_id_t Mod_id,
int slice_id, int slice_id,
frame_t frameP, frame_t frameP,
......
...@@ -788,7 +788,7 @@ flexran_schedule_ue_dl_spec_default(mid_t mod_id, ...@@ -788,7 +788,7 @@ flexran_schedule_ue_dl_spec_default(mid_t mod_id,
slice_maxmcs_current[i] = slice_maxmcs[i]; slice_maxmcs_current[i] = slice_maxmcs[i];
} else { } else {
LOG_W(MAC,"[eNB %d][SLICE %d] invalid slice max mcs %d, revert the previous value %d\n",mod_id, i, slice_percentage[i],slice_percentage[i]); // LOG_W(MAC,"[eNB %d][SLICE %d] invalid slice max mcs %d, revert the previous value %d\n",mod_id, i, slice_maxmcs[i],slice_percentage[i]);
slice_maxmcs[i]= slice_maxmcs_current[i]; slice_maxmcs[i]= slice_maxmcs_current[i];
...@@ -1253,7 +1253,7 @@ flexran_schedule_ue_dl_spec_common(mid_t mod_id, ...@@ -1253,7 +1253,7 @@ flexran_schedule_ue_dl_spec_common(mid_t mod_id,
header_len += 3; header_len += 3;
// Need to see if we have space for data from this channel // Need to see if we have space for data from this channel
if (dci_tbs - ta_len - header_len - sdu_length_total > 0) { if (dci_tbs - ta_len - header_len - sdu_length_total > 0) {
LOG_D(MAC, "[TEST]Requested %d bytes from RLC buffer on channel %d during first call\n", dci_tbs-ta_len-header_len); LOG_D(MAC, "[TEST]Requested %d bytes from RLC buffer on channel %d during first call\n", dci_tbs-ta_len-header_len, j);
//If we have space, we need to see how much data we can request at most (if any available) //If we have space, we need to see how much data we can request at most (if any available)
rlc_status = mac_rlc_status_ind(mod_id, rlc_status = mac_rlc_status_ind(mod_id,
rnti, rnti,
......
...@@ -49,14 +49,22 @@ ...@@ -49,14 +49,22 @@
#include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h" #include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h"
//#include "LAYER2/MAC/pre_processor.c" //#include "LAYER2/MAC/pre_processor.c"
#include "ENB_APP/flexran_agent_defs.h"
#include "flexran_agent_ran_api.h"
#include "pdcp.h" #include "pdcp.h"
#include "header.pb-c.h"
#include "flexran.pb-c.h"
#include "flexran_agent_mac.h"
#if defined(ENABLE_ITTI) #if defined(ENABLE_ITTI)
# include "intertask_interface.h" # include "intertask_interface.h"
#endif #endif
#include "T.h" #include "T.h"
#include <dlfcn.h>
/* number of active slices for past and current time*/ /* number of active slices for past and current time*/
int n_active_slices_uplink = 1; int n_active_slices_uplink = 1;
int n_active_slices_uplink_current = 1; int n_active_slices_uplink_current = 1;
...@@ -222,7 +230,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP, ...@@ -222,7 +230,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP,
rnti_t rnti= -1; rnti_t rnti= -1;
UE_list_t *UE_list = &eNB_mac_inst[module_idP].UE_list; UE_list_t *UE_list = &eNB_mac_inst[module_idP].UE_list;
UE_TEMPLATE *UE_template = 0; UE_TEMPLATE *UE_template = 0;
LTE_DL_FRAME_PARMS *frame_parms = 0; // LTE_DL_FRAME_PARMS *frame_parms; //Not used yet
UE_sched_ctrl *ue_sched_ctl; UE_sched_ctrl *ue_sched_ctl;
...@@ -272,7 +280,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP, ...@@ -272,7 +280,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP,
CC_id = UE_list->ordered_ULCCids[n][UE_id]; CC_id = UE_list->ordered_ULCCids[n][UE_id];
UE_template = &UE_list->UE_template[CC_id][UE_id]; UE_template = &UE_list->UE_template[CC_id][UE_id];
average_rbs_per_user[CC_id]=0; average_rbs_per_user[CC_id]=0;
frame_parms = mac_xface->get_lte_frame_parms(module_idP,CC_id); // frame_parms = mac_xface->get_lte_frame_parms(module_idP,CC_id);
if (UE_template->pre_allocated_nb_rb_ul > 0) { if (UE_template->pre_allocated_nb_rb_ul > 0) {
total_ue_count+=1; total_ue_count+=1;
...@@ -359,7 +367,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP, ...@@ -359,7 +367,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP,
// This is the actual CC_id in the list // This is the actual CC_id in the list
CC_id = UE_list->ordered_ULCCids[n][UE_id]; CC_id = UE_list->ordered_ULCCids[n][UE_id];
UE_template = &UE_list->UE_template[CC_id][UE_id]; UE_template = &UE_list->UE_template[CC_id][UE_id];
frame_parms = mac_xface->get_lte_frame_parms(module_idP,CC_id); // frame_parms = mac_xface->get_lte_frame_parms(module_idP,CC_id);
total_remaining_rbs[CC_id]=nb_rbs_allowed_slice_uplink[CC_id][UE_id] - first_rb[CC_id] - total_allocated_rbs[CC_id]; total_remaining_rbs[CC_id]=nb_rbs_allowed_slice_uplink[CC_id][UE_id] - first_rb[CC_id] - total_allocated_rbs[CC_id];
if (total_ue_count == 1 ) { if (total_ue_count == 1 ) {
...@@ -384,7 +392,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP, ...@@ -384,7 +392,7 @@ void _ulsch_scheduler_pre_processor(module_id_t module_idP,
} }
for (CC_id=0; CC_id<MAX_NUM_CCs; CC_id++) { for (CC_id=0; CC_id<MAX_NUM_CCs; CC_id++) {
frame_parms= mac_xface->get_lte_frame_parms(module_idP,CC_id); // frame_parms= mac_xface->get_lte_frame_parms(module_idP,CC_id);
if (total_allocated_rbs[CC_id]>0) { if (total_allocated_rbs[CC_id]>0) {
LOG_D(MAC,"[eNB %d] total RB allocated for all UEs = %d/%d\n", module_idP, total_allocated_rbs[CC_id], nb_rbs_allowed_slice_uplink[CC_id][slice_id] - first_rb[CC_id]); LOG_D(MAC,"[eNB %d] total RB allocated for all UEs = %d/%d\n", module_idP, total_allocated_rbs[CC_id], nb_rbs_allowed_slice_uplink[CC_id][slice_id] - first_rb[CC_id]);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment