lte,enb,rrc: avoid creating scells for UEs whose release < 10

master
Francisco 3 years ago committed by Andre Puschmann
parent d7e8d6bf65
commit b14e75218d

@ -112,8 +112,12 @@ void sched_ue_cell::set_ue_cfg(const sched_interface::ue_cfg_t& ue_cfg_)
case cc_st::active: case cc_st::active:
if (ue_cc_idx < 0 or not ue_cfg->supported_cc_list[ue_cc_idx].active) { if (ue_cc_idx < 0 or not ue_cfg->supported_cc_list[ue_cc_idx].active) {
cc_state_ = cc_st::deactivating; cc_state_ = cc_st::deactivating;
if (ue_cc_idx > 0) {
logger.info( logger.info(
"SCHED: Deactivating SCell, rnti=0x%x, cc=%d, SCellIndex=%d...", rnti, cell_cfg->enb_cc_idx, ue_cc_idx); "SCHED: Deactivating SCell, rnti=0x%x, cc=%d, SCellIndex=%d...", rnti, cell_cfg->enb_cc_idx, ue_cc_idx);
} else {
logger.info("SCHED: Deactivating previous PCell, rnti=0x%x, cc=%d...", rnti, cell_cfg->enb_cc_idx);
}
} }
break; break;
case cc_st::deactivating: case cc_st::deactivating:

@ -1246,12 +1246,11 @@ void rrc::ue::update_scells()
const ue_cell_ded* pcell = ue_cell_list.get_ue_cc_idx(UE_PCELL_CC_IDX); const ue_cell_ded* pcell = ue_cell_list.get_ue_cc_idx(UE_PCELL_CC_IDX);
const enb_cell_common* pcell_cfg = pcell->cell_common; const enb_cell_common* pcell_cfg = pcell->cell_common;
if (ue_cell_list.nof_cells() == pcell_cfg->scells.size() + 1) { // Check whether UE supports CA
// SCells already added if (eutra_capabilities.access_stratum_release.to_number() < 10) {
parent->logger.info("UE doesn't support CA. Skipping SCell activation");
return; return;
} }
// Check whether UE supports CA
if (not eutra_capabilities.non_crit_ext_present or not eutra_capabilities.non_crit_ext.non_crit_ext_present or if (not eutra_capabilities.non_crit_ext_present or not eutra_capabilities.non_crit_ext.non_crit_ext_present or
not eutra_capabilities.non_crit_ext.non_crit_ext.non_crit_ext_present or not eutra_capabilities.non_crit_ext.non_crit_ext.non_crit_ext_present or
not eutra_capabilities.non_crit_ext.non_crit_ext.non_crit_ext.rf_params_v1020_present or not eutra_capabilities.non_crit_ext.non_crit_ext.non_crit_ext.rf_params_v1020_present or
@ -1261,6 +1260,11 @@ void rrc::ue::update_scells()
return; return;
} }
if (ue_cell_list.nof_cells() == pcell_cfg->scells.size() + 1) {
// SCells already added
return;
}
for (const enb_cell_common* scell : pcell_cfg->scells) { for (const enb_cell_common* scell : pcell_cfg->scells) {
ue_cell_list.add_cell(scell->enb_cc_idx); ue_cell_list.add_cell(scell->enb_cc_idx);
} }

Loading…
Cancel
Save