Commit ea60b63e authored by Robert Schmidt's avatar Robert Schmidt

Only transfer BCH PDU if SI/SIB not decoded

parent 41c4f3ca
......@@ -1769,6 +1769,7 @@ typedef struct {
/// after the reception of NFAPI_UL_CONFIG_ULSCH_PDU_TYPE.
uint8_t first_ULSCH_Tx;
uint8_t SI_Decoded;
uint8_t SIB_Decoded;
int ra_frame; // This variable keeps the frame in which the RA started for the specific UE. It is used in order
// to make sure that different UEs RA starts within a number of frames difference.
......
......@@ -161,6 +161,7 @@ void ue_init_mac(module_id_t module_idP) {
UE_mac_inst[module_idP].UE_mode[0] = NOT_SYNCHED; //PRACH;
UE_mac_inst[module_idP].first_ULSCH_Tx =0;
UE_mac_inst[module_idP].SI_Decoded = 0;
UE_mac_inst[module_idP].SIB_Decoded = 0;
next_ra_frame = 0;
next_Mod_id = 0;
tx_request_pdu_list = NULL;
......
......@@ -116,7 +116,7 @@ mac_rrc_data_req_ue(
return(0);
}
extern UE_MAC_INST *UE_mac_inst;
//------------------------------------------------------------------------------
int8_t
mac_rrc_data_ind_ue(
......@@ -168,7 +168,9 @@ mac_rrc_data_ind_ue(
}
}
if(srb_idP == BCCH) {
if(srb_idP == BCCH
&& (!UE_mac_inst[ctxt.instance].SI_Decoded
|| !UE_mac_inst[ctxt.instance].SIB_Decoded)) {
LOG_D(RRC,"[UE %d] Received SDU for BCCH on SRB %ld from eNB %d\n",module_idP,srb_idP,eNB_indexP);
{
MessageDef *message_p;
......
......@@ -2618,6 +2618,7 @@ int decode_BCCH_DLSCH_Message(
sizeof(LTE_SystemInformationBlockType1_t) );
LOG_D( RRC, "[UE %"PRIu8"] Decoding First SIB1\n", ctxt_pP->module_id );
decode_SIB1( ctxt_pP, eNB_index, rsrq, rsrp );
UE_mac_inst[ctxt_pP->module_id].SIB_Decoded = 1;
}
}
......
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