NR RRC - Added GBR argument to function, so it can be considered for selecting next available drb
This commit is contained in:
@@ -826,7 +826,7 @@ rrc_gNB_generate_dedicatedRRCReconfiguration(
|
||||
for(long drb_id_add = 1; drb_id_add <= nb_drb_to_setup; drb_id_add++){
|
||||
if(drb_id_add > MAX_DRBS_PER_PDUSESSION)
|
||||
break;
|
||||
uint8_t drb_id = next_available_drb(ue_p, ue_context_pP->ue_context.pduSession[i].param.pdusession_id);
|
||||
uint8_t drb_id = next_available_drb(ue_p, ue_context_pP->ue_context.pduSession[i].param.pdusession_id, NONGBR_FLOW);
|
||||
|
||||
// Reference TS23501 Table 5.7.4-1: Standardized 5QI to QoS characteristics mapping
|
||||
for (qos_flow_index = 0; qos_flow_index < ue_context_pP->ue_context.pduSession[i].param.nb_qos; qos_flow_index++) {
|
||||
|
||||
@@ -105,7 +105,7 @@ NR_DRB_ToAddMod_t *generateDRB(gNB_RRC_UE_t *ue,
|
||||
return DRB_config;
|
||||
}
|
||||
|
||||
uint8_t next_available_drb(gNB_RRC_UE_t *ue, uint8_t pdusession_id) {
|
||||
uint8_t next_available_drb(gNB_RRC_UE_t *ue, uint8_t pdusession_id, bool is_gbr) {
|
||||
uint8_t drb_id;
|
||||
for (drb_id = 0; drb_id < NGAP_MAX_DRBS_PER_UE; drb_id++) {
|
||||
if(ue->DRB_active[drb_id] == DRB_INACTIVE)
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
#define MAX_PDUS_PER_UE (8) /* Maximum number of PDU Sessions per UE */
|
||||
#define DRB_ACTIVE (1)
|
||||
#define DRB_INACTIVE (0)
|
||||
#define GBR_FLOW (1)
|
||||
#define NONGBR_FLOW (0)
|
||||
|
||||
NR_DRB_ToAddMod_t *generateDRB(gNB_RRC_UE_t *rrc_ue,
|
||||
uint8_t drb_id,
|
||||
@@ -38,7 +40,7 @@ NR_DRB_ToAddMod_t *generateDRB(gNB_RRC_UE_t *rrc_ue,
|
||||
int do_drb_integrity,
|
||||
int do_drb_ciphering);
|
||||
|
||||
uint8_t next_available_drb(gNB_RRC_UE_t *ue, uint8_t pdusession_id);
|
||||
uint8_t next_available_drb(gNB_RRC_UE_t *ue, uint8_t pdusession_id, bool is_gbr);
|
||||
bool drb_is_active(gNB_RRC_UE_t *ue, uint8_t drb_id);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user