uplink mac parser
This commit is contained in:
@@ -607,7 +607,10 @@ int parse_mac_config(mid_t mod_id, yaml_parser_t *parser) {
|
||||
} else if (strcmp((char *) event.data.scalar.value, "ul_scheduler") == 0) {
|
||||
// Call the proper handler
|
||||
LOG_D(ENB_APP, "This is for the ul_scheduler subsystem\n");
|
||||
goto error;
|
||||
if (parse_dl_scheduler_config(mod_id, parser) == -1) {
|
||||
LOG_D(ENB_APP, "An error occured\n");
|
||||
goto error;
|
||||
}
|
||||
// TODO
|
||||
} else if (strcmp((char *) event.data.scalar.value, "ra_scheduler") == 0) {
|
||||
// Call the proper handler
|
||||
|
||||
@@ -88,8 +88,8 @@ typedef enum {
|
||||
|
||||
|
||||
// number of active slices for past and current time
|
||||
static int n_active_slices = 1;
|
||||
static int n_active_slices_current = 1;
|
||||
int n_active_slices = 1;
|
||||
int n_active_slices_current = 1;
|
||||
|
||||
// ue to slice mapping
|
||||
int slicing_strategy = UEID_TO_SLICEID;
|
||||
|
||||
@@ -58,8 +58,8 @@
|
||||
#include "T.h"
|
||||
|
||||
/* number of active slices for past and current time*/
|
||||
static int n_active_slices = 1;
|
||||
static int n_active_slices_current = 1;
|
||||
int n_active_slices_uplink = 1;
|
||||
int n_active_slices_uplink_current = 1;
|
||||
|
||||
/* RB share for each slice for past and current time*/
|
||||
float slice_percentage_uplink[MAX_NUM_SLICES] = {1.0, 0.0, 0.0, 0.0};
|
||||
@@ -406,7 +406,7 @@ flexran_schedule_ue_ul_spec_default(mid_t mod_id,
|
||||
|
||||
flexran_agent_mac_create_empty_ul_config(mod_id, ul_info);
|
||||
|
||||
for (i = 0; i < n_active_slices; i++) {
|
||||
for (i = 0; i < n_active_slices_uplink; i++) {
|
||||
|
||||
// Load any updated functions
|
||||
if (update_ul_scheduler[i] > 0 ) {
|
||||
@@ -419,16 +419,16 @@ flexran_schedule_ue_ul_spec_default(mid_t mod_id,
|
||||
}
|
||||
|
||||
// check if the number of slices has changed, and log
|
||||
if (n_active_slices_current != n_active_slices ){
|
||||
if ((n_active_slices > 0) && (n_active_slices <= MAX_NUM_SLICES)) {
|
||||
if (n_active_slices_uplink_current != n_active_slices_uplink ){
|
||||
if ((n_active_slices_uplink > 0) && (n_active_slices_uplink <= MAX_NUM_SLICES)) {
|
||||
LOG_N(MAC,"[eNB %d]frame %d subframe %d: number of active slices has changed: %d-->%d\n",
|
||||
mod_id, frame, subframe, n_active_slices_current, n_active_slices);
|
||||
mod_id, frame, subframe, n_active_slices_uplink_current, n_active_slices_uplink);
|
||||
|
||||
n_active_slices_current = n_active_slices;
|
||||
n_active_slices_uplink_current = n_active_slices_uplink;
|
||||
|
||||
} else {
|
||||
LOG_W(MAC,"invalid number of slices %d, revert to the previous value %d\n",n_active_slices, n_active_slices_current);
|
||||
n_active_slices = n_active_slices_current;
|
||||
LOG_W(MAC,"invalid number of slices %d, revert to the previous value %d\n",n_active_slices_uplink, n_active_slices_uplink_current);
|
||||
n_active_slices_uplink = n_active_slices_uplink_current;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -93,8 +93,8 @@ extern uint16_t N310[8];
|
||||
extern uint16_t N311[8];
|
||||
extern uint32_t T304[8];
|
||||
extern uint32_t timeToTrigger_ms[16];
|
||||
extern float RSRP_meas_mapping[100];
|
||||
extern float RSRQ_meas_mapping[33];
|
||||
extern float RSRP_meas_mapping[98];
|
||||
extern float RSRQ_meas_mapping[35];
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user