|
|
@ -30,6 +30,7 @@
|
|
|
|
#include <sstream>
|
|
|
|
#include <sstream>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <time.h>
|
|
|
|
#include <time.h>
|
|
|
|
|
|
|
|
#include <inttypes.h> // for printing uint64_t
|
|
|
|
#include <srslte/asn1/liblte_rrc.h>
|
|
|
|
#include <srslte/asn1/liblte_rrc.h>
|
|
|
|
#include "upper/rrc.h"
|
|
|
|
#include "upper/rrc.h"
|
|
|
|
#include "srslte/asn1/liblte_rrc.h"
|
|
|
|
#include "srslte/asn1/liblte_rrc.h"
|
|
|
@ -528,7 +529,7 @@ void rrc::set_serving_cell(uint32_t cell_idx) {
|
|
|
|
// Set new serving cell
|
|
|
|
// Set new serving cell
|
|
|
|
serving_cell = new_serving_cell;
|
|
|
|
serving_cell = new_serving_cell;
|
|
|
|
|
|
|
|
|
|
|
|
rrc_log->info("Setting serving cell idx=%d, earfcn=%d, PCI=%d, nof_neighbours=%d\n",
|
|
|
|
rrc_log->info("Setting serving cell idx=%d, earfcn=%d, PCI=%d, nof_neighbours=%zd\n",
|
|
|
|
cell_idx, serving_cell->get_earfcn(), serving_cell->phy_cell.id, neighbour_cells.size());
|
|
|
|
cell_idx, serving_cell->get_earfcn(), serving_cell->phy_cell.id, neighbour_cells.size());
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
@ -751,7 +752,7 @@ bool rrc::add_neighbour_cell(cell_t *new_cell) {
|
|
|
|
if (ret) {
|
|
|
|
if (ret) {
|
|
|
|
neighbour_cells.push_back(new_cell);
|
|
|
|
neighbour_cells.push_back(new_cell);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
rrc_log->info("Added neighbour cell EARFCN=%d, PCI=%d, nof_neighbours=%d\n",
|
|
|
|
rrc_log->info("Added neighbour cell EARFCN=%d, PCI=%d, nof_neighbours=%zd\n",
|
|
|
|
new_cell->get_earfcn(), new_cell->get_pci(), neighbour_cells.size());
|
|
|
|
new_cell->get_earfcn(), new_cell->get_pci(), neighbour_cells.size());
|
|
|
|
sort_neighbour_cells();
|
|
|
|
sort_neighbour_cells();
|
|
|
|
return ret;
|
|
|
|
return ret;
|
|
|
@ -1634,7 +1635,7 @@ void rrc::send_ul_ccch_msg()
|
|
|
|
ue_cri_ptr[nbytes - i - 1] = pdu->msg[i];
|
|
|
|
ue_cri_ptr[nbytes - i - 1] = pdu->msg[i];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
rrc_log->debug("Setting UE contention resolution ID: %d\n", uecri);
|
|
|
|
rrc_log->debug("Setting UE contention resolution ID: %" PRIu64 "\n", uecri);
|
|
|
|
mac->set_contention_id(uecri);
|
|
|
|
mac->set_contention_id(uecri);
|
|
|
|
|
|
|
|
|
|
|
|
rrc_log->info("Sending %s\n", liblte_rrc_ul_ccch_msg_type_text[ul_ccch_msg.msg_type]);
|
|
|
|
rrc_log->info("Sending %s\n", liblte_rrc_ul_ccch_msg_type_text[ul_ccch_msg.msg_type]);
|
|
|
@ -2973,7 +2974,7 @@ void rrc::rrc_meas::parse_meas_config(LIBLTE_RRC_MEAS_CONFIG_STRUCT *cfg)
|
|
|
|
remove_meas_id(cfg->meas_id_to_remove_list[i]);
|
|
|
|
remove_meas_id(cfg->meas_id_to_remove_list[i]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
log_h->info("nof active measId=%d\n", active.size());
|
|
|
|
log_h->info("nof active measId=%zd\n", active.size());
|
|
|
|
|
|
|
|
|
|
|
|
// Measurement identity addition/modification 5.5.2.3
|
|
|
|
// Measurement identity addition/modification 5.5.2.3
|
|
|
|
if (cfg->meas_id_to_add_mod_list_present) {
|
|
|
|
if (cfg->meas_id_to_add_mod_list_present) {
|
|
|
@ -2992,7 +2993,7 @@ void rrc::rrc_meas::parse_meas_config(LIBLTE_RRC_MEAS_CONFIG_STRUCT *cfg)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
active[measId->meas_id].object_id = measId->meas_obj_id;
|
|
|
|
active[measId->meas_id].object_id = measId->meas_obj_id;
|
|
|
|
active[measId->meas_id].report_id = measId->rep_cnfg_id;
|
|
|
|
active[measId->meas_id].report_id = measId->rep_cnfg_id;
|
|
|
|
log_h->info("MEAS: %s measId=%d, measObjectId=%d, reportConfigId=%d, timer_id=%d, nof_values=%d\n",
|
|
|
|
log_h->info("MEAS: %s measId=%d, measObjectId=%d, reportConfigId=%d, timer_id=%d, nof_values=%zd\n",
|
|
|
|
is_new?"Added":"Updated", measId->meas_id, measId->meas_obj_id, measId->rep_cnfg_id,
|
|
|
|
is_new?"Added":"Updated", measId->meas_id, measId->meas_obj_id, measId->rep_cnfg_id,
|
|
|
|
active[measId->meas_id].periodic_timer, active[measId->meas_id].cell_values.size());
|
|
|
|
active[measId->meas_id].periodic_timer, active[measId->meas_id].cell_values.size());
|
|
|
|
}
|
|
|
|
}
|
|
|
|