Commit ea63a9ee authored by David Kim's avatar David Kim

Merge remote-tracking branch 'origin/episys/mel/merge_develop_cfra_working'...

Merge remote-tracking branch 'origin/episys/mel/merge_develop_cfra_working' into episys/mel/merge_develop_cfra_working_for_multiUE

Resolved merge conflict.
parents 86d605ee bfa8c835
...@@ -397,17 +397,17 @@ void init_pdcp(int ue_id) { ...@@ -397,17 +397,17 @@ void init_pdcp(int ue_id) {
pdcp_initmask = pdcp_initmask | UE_NAS_USE_TUN_BIT; pdcp_initmask = pdcp_initmask | UE_NAS_USE_TUN_BIT;
}*/ }*/
if (IS_SOFTMODEM_NOKRNMOD) if (IS_SOFTMODEM_NOKRNMOD) {
pdcp_initmask = pdcp_initmask | UE_NAS_USE_TUN_BIT; pdcp_initmask = pdcp_initmask | UE_NAS_USE_TUN_BIT;
if(!IS_SOFTMODEM_NOS1) { }
if (rlc_module_init(0) != 0) { if (rlc_module_init(0) != 0) {
LOG_I(RLC, "Problem at RLC initiation \n"); LOG_I(RLC, "Problem at RLC initiation \n");
} }
} if(!IS_SOFTMODEM_NOS1) {
pdcp_layer_init(); pdcp_layer_init();
nr_pdcp_module_init(pdcp_initmask, ue_id); nr_pdcp_module_init(pdcp_initmask, ue_id);
//nr_DRB_preconfiguration(); }
//pdcp_module_init(pdcp_initmask, 0);
pdcp_set_rlc_data_req_func((send_rlc_data_req_func_t) rlc_data_req); pdcp_set_rlc_data_req_func((send_rlc_data_req_func_t) rlc_data_req);
pdcp_set_pdcp_data_ind_func((pdcp_data_ind_func_t) pdcp_data_ind); pdcp_set_pdcp_data_ind_func((pdcp_data_ind_func_t) pdcp_data_ind);
} }
......
...@@ -1041,7 +1041,7 @@ NR_UE_L2_STATE_t nr_ue_scheduler(nr_downlink_indication_t *dl_info, nr_uplink_in ...@@ -1041,7 +1041,7 @@ NR_UE_L2_STATE_t nr_ue_scheduler(nr_downlink_indication_t *dl_info, nr_uplink_in
mac->UL_ndi[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] = ulcfg_pdu->pusch_config_pdu.pusch_data.new_data_indicator; mac->UL_ndi[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] = ulcfg_pdu->pusch_config_pdu.pusch_data.new_data_indicator;
mac->first_ul_tx[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] = 0; mac->first_ul_tx[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] = 0;
} else { } else {
if (!SOFTMODEM_NOS1_BIT && (mac->UL_ndi[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] != if (!IS_SOFTMODEM_NOS1 && (mac->UL_ndi[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id] !=
ulcfg_pdu->pusch_config_pdu.pusch_data.new_data_indicator || ulcfg_pdu->pusch_config_pdu.pusch_data.new_data_indicator ||
mac->first_ul_tx[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id]==1)){ mac->first_ul_tx[ulcfg_pdu->pusch_config_pdu.pusch_data.harq_process_id]==1)){
......
...@@ -450,14 +450,21 @@ static void deliver_sdu_drb(void *_ue, nr_pdcp_entity_t *entity, ...@@ -450,14 +450,21 @@ static void deliver_sdu_drb(void *_ue, nr_pdcp_entity_t *entity,
uint8_t *gtpu_buffer_p; uint8_t *gtpu_buffer_p;
int rb_id; int rb_id;
int i; int i;
LOG_I(PDCP, "Melissa Elkadi we got here %s\n", __FUNCTION__);
if(IS_SOFTMODEM_NOS1 || UE_NAS_USE_TUN){ if (IS_SOFTMODEM_NOS1 || UE_NAS_USE_TUN) {
LOG_D(PDCP, "IP packet received, to be sent to TUN interface"); LOG_D(PDCP, "IP packet received, to be sent to TUN interface");
len = write(nas_sock_fd[0], buf, size);
LOG_D(PDCP, "Writing %d bytes to tunnel interface\n", len); /* We are removing the instance ID from the buffer. TUN interfaces
if (len != size) { care about the actual data we are sending. If we do not remove
LOG_E(PDCP, "%s:%d:%s: fatal\n", __FILE__, __LINE__, __FUNCTION__); the instance ID from the buffer, it will start with 00, and the
write will fail with errno = 22 (EINVAL) */
char *data_buffer = buf + 1;
int size_to_write = size - 1;
len = write(nas_sock_fd[0], data_buffer, size_to_write);
LOG_D(PDCP, "len = %d bytes to tunnel interface %d\n", len, nas_sock_fd[0]);
if (len != size_to_write) {
LOG_E(PDCP, "%s:%d:%s: fatal error %d: %s\n", __FILE__, __LINE__, __FUNCTION__, errno, strerror(errno));
} }
} }
else{ else{
......
...@@ -4627,8 +4627,6 @@ void ue_measurement_report_triggering(protocol_ctxt_t *const ctxt_pP, const uint ...@@ -4627,8 +4627,6 @@ void ue_measurement_report_triggering(protocol_ctxt_t *const ctxt_pP, const uint
if (is_state_connected && is_t304_inactive && have_meas_flag) { if (is_state_connected && is_t304_inactive && have_meas_flag) {
LOG_I(RRC,"[UE %d] Frame %d: Triggering generation of Meas Report for NR_r15. count = %d\n", LOG_I(RRC,"[UE %d] Frame %d: Triggering generation of Meas Report for NR_r15. count = %d\n",
ctxt_pP->module_id, ctxt_pP->frame, ue->subframeCount); ctxt_pP->module_id, ctxt_pP->frame, ue->subframeCount);
if (!SOFTMODEM_NOS1_BIT)
usleep(200000); //Melissa Elkadi come back for EPC
if (ue->measReportList[i][j] == NULL) { if (ue->measReportList[i][j] == NULL) {
ue->measReportList[i][j] = malloc(sizeof(MEAS_REPORT_LIST)); ue->measReportList[i][j] = malloc(sizeof(MEAS_REPORT_LIST));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment