remove requirement for rrc to be idle and nas attached to run reselection

master
Francisco Paisana 4 years ago
parent d12b037e0d
commit 08f9801c76

@ -1103,7 +1103,7 @@ proc_outcome_t rrc::go_idle_proc::step()
void rrc::go_idle_proc::then(const srslte::proc_state_t& result) void rrc::go_idle_proc::then(const srslte::proc_state_t& result)
{ {
if (not rrc_ptr->cell_reselector.launch()) { if (rrc_ptr->nas->is_attached() and not rrc_ptr->cell_reselector.launch()) {
rrc_ptr->rrc_log->error("Failed to initiate a Cell Reselection procedure...\n"); rrc_ptr->rrc_log->error("Failed to initiate a Cell Reselection procedure...\n");
return; return;
} }
@ -1129,11 +1129,6 @@ rrc::cell_reselection_proc::cell_reselection_proc(srsue::rrc* rrc_) : rrc_ptr(rr
proc_outcome_t rrc::cell_reselection_proc::init() proc_outcome_t rrc::cell_reselection_proc::init()
{ {
if (not rrc_ptr->nas->is_attached() or rrc_ptr->is_connected()) {
// check if rrc is still idle
return proc_outcome_t::success;
}
if (rrc_ptr->neighbour_cells.empty() and rrc_ptr->phy_sync_state == phy_in_sync and rrc_ptr->phy->cell_is_camping()) { if (rrc_ptr->neighbour_cells.empty() and rrc_ptr->phy_sync_state == phy_in_sync and rrc_ptr->phy->cell_is_camping()) {
// don't bother with cell selection if there are no neighbours and we are already camping // don't bother with cell selection if there are no neighbours and we are already camping
return proc_outcome_t::success; return proc_outcome_t::success;

Loading…
Cancel
Save