Fix CU as E2 node
- when CU is used, UE ID data is filled as GNB_UE_ID_E2SM with CU UE ID value included
This commit is contained in:
@@ -158,6 +158,21 @@ gnb_e2sm_t fill_gnb_data(rrc_gNB_ue_context_t * ue_context_p)
|
||||
gnb.guami.amf_set_id = ue_context_p->ue_context.ue_guami.amf_set_id;
|
||||
gnb.guami.amf_ptr = ue_context_p->ue_context.ue_guami.amf_pointer;
|
||||
|
||||
// gNB-CU UE F1AP ID List
|
||||
// C-ifCUDUseparated
|
||||
if (NODE_IS_CU(RC.nrrrc[0]->node_type))
|
||||
{
|
||||
gnb.gnb_cu_ue_f1ap_lst_len = 1;
|
||||
gnb.gnb_cu_ue_f1ap_lst = calloc(gnb.gnb_cu_ue_f1ap_lst_len, sizeof(uint32_t));
|
||||
assert(gnb.gnb_cu_ue_f1ap_lst != NULL);
|
||||
|
||||
for (size_t i = 0; i < gnb.gnb_cu_ue_f1ap_lst_len; i++)
|
||||
{
|
||||
gnb.gnb_cu_ue_f1ap_lst[i] = ue_context_p->ue_context.rrc_ue_id;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return gnb;
|
||||
}
|
||||
|
||||
@@ -180,25 +195,6 @@ gnb_du_e2sm_t fill_gnb_du_data(const f1_ue_data_t * rrc_ue_id)
|
||||
return gnb_du;
|
||||
}
|
||||
|
||||
static
|
||||
gnb_cu_up_e2sm_t fill_gnb_cu_up_data(const uint32_t rrc_ue_id)
|
||||
{
|
||||
gnb_cu_up_e2sm_t gnb_cu_up = {0};
|
||||
|
||||
// 6.2.3.20
|
||||
// gNB CU CP UE E1AP
|
||||
// Mandatory
|
||||
gnb_cu_up.gnb_cu_cp_ue_e1ap = rrc_ue_id;
|
||||
|
||||
// 6.2.3.25
|
||||
// RAN UE ID
|
||||
// Optional
|
||||
gnb_cu_up.ran_ue_id = NULL;
|
||||
|
||||
|
||||
return gnb_cu_up;
|
||||
}
|
||||
|
||||
|
||||
uint32_t last_dl_rlc_pdu_total_bytes[MAX_MOBILES_PER_GNB] = {0};
|
||||
uint32_t last_ul_rlc_pdu_total_bytes[MAX_MOBILES_PER_GNB] = {0};
|
||||
@@ -501,8 +497,9 @@ kpm_ind_msg_format_3_t fill_kpm_ind_msg_frm_3_in_cu(const matched_ues_rrc_t matc
|
||||
for (size_t i = 0; i<msg_frm_3.ue_meas_report_lst_len; i++)
|
||||
{
|
||||
// Fill UE ID data
|
||||
msg_frm_3.meas_report_per_ue[i].ue_meas_report_lst.type = GNB_CU_UP_UE_ID_E2SM;
|
||||
msg_frm_3.meas_report_per_ue[i].ue_meas_report_lst.gnb_cu_up = fill_gnb_cu_up_data(matched_ues.rrc_ue_id_list[i].secondary_ue);
|
||||
rrc_gNB_ue_context_t *rrc_ue_context_list = rrc_gNB_get_ue_context(RC.nrrrc[0], matched_ues.rrc_ue_id_list[i].secondary_ue);
|
||||
msg_frm_3.meas_report_per_ue[i].ue_meas_report_lst.type = GNB_UE_ID_E2SM;
|
||||
msg_frm_3.meas_report_per_ue[i].ue_meas_report_lst.gnb = fill_gnb_data(rrc_ue_context_list);
|
||||
|
||||
// Fill UE related info
|
||||
msg_frm_3.meas_report_per_ue[i].ind_msg_format_1 = fill_kpm_ind_msg_frm_1_in_cu(matched_ues.rrc_ue_id_list[i].secondary_ue, i, act_def_fr_1);
|
||||
|
||||
@@ -82,7 +82,7 @@ git submodule update
|
||||
```bash
|
||||
git clone https://gitlab.eurecom.fr/mosaic5g/flexric flexric
|
||||
cd flexric/
|
||||
git checkout 793daf62b6f7d5b56062ec9f3cf70e874b6538e3
|
||||
git checkout 8ee3aca107a9da8ccf425e623bed18cd40a31fa1
|
||||
```
|
||||
|
||||
### 2.2.2 Build FlexRIC
|
||||
|
||||
+1
-1
Submodule openair2/E2AP/flexric updated: 793daf62b6...8ee3aca107
Reference in New Issue
Block a user