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) {
|
} else if (strcmp((char *) event.data.scalar.value, "ul_scheduler") == 0) {
|
||||||
// Call the proper handler
|
// Call the proper handler
|
||||||
LOG_D(ENB_APP, "This is for the ul_scheduler subsystem\n");
|
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
|
// TODO
|
||||||
} else if (strcmp((char *) event.data.scalar.value, "ra_scheduler") == 0) {
|
} else if (strcmp((char *) event.data.scalar.value, "ra_scheduler") == 0) {
|
||||||
// Call the proper handler
|
// Call the proper handler
|
||||||
|
|||||||
@@ -88,8 +88,8 @@ typedef enum {
|
|||||||
|
|
||||||
|
|
||||||
// number of active slices for past and current time
|
// number of active slices for past and current time
|
||||||
static int n_active_slices = 1;
|
int n_active_slices = 1;
|
||||||
static int n_active_slices_current = 1;
|
int n_active_slices_current = 1;
|
||||||
|
|
||||||
// ue to slice mapping
|
// ue to slice mapping
|
||||||
int slicing_strategy = UEID_TO_SLICEID;
|
int slicing_strategy = UEID_TO_SLICEID;
|
||||||
|
|||||||
@@ -58,8 +58,8 @@
|
|||||||
#include "T.h"
|
#include "T.h"
|
||||||
|
|
||||||
/* number of active slices for past and current time*/
|
/* number of active slices for past and current time*/
|
||||||
static int n_active_slices = 1;
|
int n_active_slices_uplink = 1;
|
||||||
static int n_active_slices_current = 1;
|
int n_active_slices_uplink_current = 1;
|
||||||
|
|
||||||
/* RB share for each slice for past and current time*/
|
/* 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};
|
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);
|
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
|
// Load any updated functions
|
||||||
if (update_ul_scheduler[i] > 0 ) {
|
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
|
// check if the number of slices has changed, and log
|
||||||
if (n_active_slices_current != n_active_slices ){
|
if (n_active_slices_uplink_current != n_active_slices_uplink ){
|
||||||
if ((n_active_slices > 0) && (n_active_slices <= MAX_NUM_SLICES)) {
|
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",
|
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 {
|
} else {
|
||||||
LOG_W(MAC,"invalid number of slices %d, revert to the previous value %d\n",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 = n_active_slices_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 uint16_t N311[8];
|
||||||
extern uint32_t T304[8];
|
extern uint32_t T304[8];
|
||||||
extern uint32_t timeToTrigger_ms[16];
|
extern uint32_t timeToTrigger_ms[16];
|
||||||
extern float RSRP_meas_mapping[100];
|
extern float RSRP_meas_mapping[98];
|
||||||
extern float RSRQ_meas_mapping[33];
|
extern float RSRQ_meas_mapping[35];
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user