Msg3 transmitted, flush Msg3 buffer when RA is not active
This commit is contained in:
@@ -4520,6 +4520,12 @@ void nr_ue_prach_procedures(PHY_VARS_NR_UE *ue, UE_nr_rxtx_proc_t *proc, uint8_t
|
|||||||
// ask L2 for RACH transport
|
// ask L2 for RACH transport
|
||||||
if ((runmode != rx_calib_ue) && (runmode != rx_calib_ue_med) && (runmode != rx_calib_ue_byp) && (runmode != no_L2_connect) ) {
|
if ((runmode != rx_calib_ue) && (runmode != rx_calib_ue_med) && (runmode != rx_calib_ue_byp) && (runmode != no_L2_connect) ) {
|
||||||
LOG_D(PHY, "Getting PRACH resources. Frame %d Slot %d \n", frame_tx, nr_tti_tx);
|
LOG_D(PHY, "Getting PRACH resources. Frame %d Slot %d \n", frame_tx, nr_tti_tx);
|
||||||
|
// flush Msg3 Buffer
|
||||||
|
if (ue->prach_resources[gNB_id]->Msg3 == NULL){
|
||||||
|
for(int i = 0; i<NUMBER_OF_CONNECTED_gNB_MAX; i++) {
|
||||||
|
ue->ulsch_Msg3_active[i] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
nr_ue_get_rach(ue->prach_resources[gNB_id], mod_id, ue->CC_id, UE_mode, frame_tx, gNB_id, nr_tti_tx);
|
nr_ue_get_rach(ue->prach_resources[gNB_id], mod_id, ue->CC_id, UE_mode, frame_tx, gNB_id, nr_tti_tx);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -302,16 +302,12 @@ void nr_Msg1_transmitted(module_id_t mod_id, uint8_t CC_id, frame_t frameP, uint
|
|||||||
}
|
}
|
||||||
|
|
||||||
void nr_Msg3_transmitted(module_id_t mod_id, uint8_t CC_id, frame_t frameP, uint8_t gNB_id){
|
void nr_Msg3_transmitted(module_id_t mod_id, uint8_t CC_id, frame_t frameP, uint8_t gNB_id){
|
||||||
#if 0 // TBR
|
|
||||||
AssertFatal(CC_id == 0, "Transmission on secondary CCs is not supported yet\n");
|
AssertFatal(CC_id == 0, "Transmission on secondary CCs is not supported yet\n");
|
||||||
|
LOG_D(MAC,"[UE %d][RAPROC] Frame %d : Msg3_tx: Starting contention resolution timer\n", mod_id, frameP);
|
||||||
LOG_D(MAC,"[UE %d][RAPROC] Frame %d : Msg3_tx: Setting contention resolution timer\n", mod_id, frameP);
|
NR_UE_MAC_INST_t *mac = get_mac_inst(mod_id);
|
||||||
|
// start contention resolution timer
|
||||||
// start contention resolution timer
|
|
||||||
mac->RA_contention_resolution_cnt = 0;
|
mac->RA_contention_resolution_cnt = 0;
|
||||||
mac->RA_contention_resolution_timer_active = 1;
|
mac->RA_contention_resolution_timer_active = 1;
|
||||||
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
@@ -358,15 +354,6 @@ void nr_ue_get_rach(NR_PRACH_RESOURCES_t *prach_resources,
|
|||||||
|
|
||||||
LOG_I(MAC, "RA not active. Starting RA preamble initialization.\n");
|
LOG_I(MAC, "RA not active. Starting RA preamble initialization.\n");
|
||||||
|
|
||||||
/* TBR flush Msg3 Buffer
|
|
||||||
this was done like this but at PHY level
|
|
||||||
for(i=0; i<NUMBER_OF_CONNECTED_eNB_MAX; i++) {
|
|
||||||
// flush Msg3 buffer
|
|
||||||
PHY_VARS_NR_UE *ue = PHY_vars_UE_g[Mod_id][CC_id];
|
|
||||||
ue->ulsch_Msg3_active[i] = 0;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
mac->RA_RAPID_found = 0;
|
mac->RA_RAPID_found = 0;
|
||||||
|
|
||||||
/* Set RA_PREAMBLE_POWER_RAMPING_STEP */
|
/* Set RA_PREAMBLE_POWER_RAMPING_STEP */
|
||||||
|
|||||||
Reference in New Issue
Block a user