bugfix
This commit is contained in:
@@ -361,7 +361,7 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP,
|
|||||||
int UE_id;
|
int UE_id;
|
||||||
uint64_t *dlsch_in_slot_bitmap=NULL;
|
uint64_t *dlsch_in_slot_bitmap=NULL;
|
||||||
uint64_t *ulsch_in_slot_bitmap=NULL;
|
uint64_t *ulsch_in_slot_bitmap=NULL;
|
||||||
NR_sched_pucch *pucch_sched = (NR_sched_pucch*) malloc(sizeof(NR_sched_pucch));
|
int pucch_sched;
|
||||||
|
|
||||||
UE_id=0;
|
UE_id=0;
|
||||||
int bwp_id = 1;
|
int bwp_id = 1;
|
||||||
@@ -467,16 +467,16 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP,
|
|||||||
|
|
||||||
// Phytest scheduling
|
// Phytest scheduling
|
||||||
if (get_softmodem_params()->phy_test && (is_xlsch_in_slot(*dlsch_in_slot_bitmap,slot_txP%num_slots_per_tdd))) {
|
if (get_softmodem_params()->phy_test && (is_xlsch_in_slot(*dlsch_in_slot_bitmap,slot_txP%num_slots_per_tdd))) {
|
||||||
nr_update_pucch_scheduling(module_idP, UE_id, frame_txP, slot_txP, num_slots_per_tdd,pucch_sched);
|
nr_update_pucch_scheduling(module_idP, UE_id, frame_txP, slot_txP, num_slots_per_tdd,&pucch_sched);
|
||||||
nr_schedule_uss_dlsch_phytest(module_idP, frame_txP, slot_txP, pucch_sched, NULL);
|
nr_schedule_uss_dlsch_phytest(module_idP, frame_txP, slot_txP, &UE_list->UE_sched_ctrl[UE_id].sched_pucch[pucch_sched], NULL);
|
||||||
// resetting ta flag
|
// resetting ta flag
|
||||||
gNB->ta_len = 0;
|
gNB->ta_len = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test DL scheduling
|
// Test DL scheduling
|
||||||
if (get_softmodem_params()->phy_test == 0 && slot_txP == 1 && UE_list->fiveG_connected[UE_id]) {
|
if (get_softmodem_params()->phy_test == 0 && slot_txP == 1 && UE_list->fiveG_connected[UE_id]) {
|
||||||
nr_update_pucch_scheduling(module_idP, UE_id, frame_txP, slot_txP, num_slots_per_tdd,pucch_sched);
|
nr_update_pucch_scheduling(module_idP, UE_id, frame_txP, slot_txP, num_slots_per_tdd,&pucch_sched);
|
||||||
nr_schedule_uss_dlsch_phytest(module_idP, frame_txP, slot_txP, pucch_sched, NULL);
|
nr_schedule_uss_dlsch_phytest(module_idP, frame_txP, slot_txP, &UE_list->UE_sched_ctrl[UE_id].sched_pucch[pucch_sched], NULL);
|
||||||
// resetting ta flag
|
// resetting ta flag
|
||||||
gNB->ta_len = 0;
|
gNB->ta_len = 0;
|
||||||
UE_list->fiveG_connected[UE_id] = false;
|
UE_list->fiveG_connected[UE_id] = false;
|
||||||
|
|||||||
@@ -1426,10 +1426,11 @@ void nr_update_pucch_scheduling(int Mod_idP,
|
|||||||
frame_t frameP,
|
frame_t frameP,
|
||||||
sub_frame_t slotP,
|
sub_frame_t slotP,
|
||||||
int slots_per_tdd,
|
int slots_per_tdd,
|
||||||
NR_sched_pucch *curr_pucch) {
|
int *pucch_id) {
|
||||||
|
|
||||||
NR_ServingCellConfigCommon_t *scc = RC.nrmac[Mod_idP]->common_channels->ServingCellConfigCommon;
|
NR_ServingCellConfigCommon_t *scc = RC.nrmac[Mod_idP]->common_channels->ServingCellConfigCommon;
|
||||||
NR_UE_list_t *UE_list = &RC.nrmac[Mod_idP]->UE_list;
|
NR_UE_list_t *UE_list = &RC.nrmac[Mod_idP]->UE_list;
|
||||||
|
NR_sched_pucch *curr_pucch;
|
||||||
int first_ul_slot_tdd,k,i;
|
int first_ul_slot_tdd,k,i;
|
||||||
uint8_t pdsch_to_harq_feedback[8];
|
uint8_t pdsch_to_harq_feedback[8];
|
||||||
int found = 0;
|
int found = 0;
|
||||||
@@ -1461,6 +1462,7 @@ void nr_update_pucch_scheduling(int Mod_idP,
|
|||||||
// computing slot in which pucch is scheduled
|
// computing slot in which pucch is scheduled
|
||||||
curr_pucch->ul_slot = first_ul_slot_tdd + k + (slotP - (slotP % slots_per_tdd));
|
curr_pucch->ul_slot = first_ul_slot_tdd + k + (slotP - (slotP % slots_per_tdd));
|
||||||
curr_pucch->timing_indicator = i; // index in the list of timing indicators
|
curr_pucch->timing_indicator = i; // index in the list of timing indicators
|
||||||
|
*pucch_id = k;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ void nr_update_pucch_scheduling(int Mod_idP,
|
|||||||
frame_t frameP,
|
frame_t frameP,
|
||||||
sub_frame_t slotP,
|
sub_frame_t slotP,
|
||||||
int slots_per_tdd,
|
int slots_per_tdd,
|
||||||
NR_sched_pucch *curr_pucch);
|
int *pucch_id);
|
||||||
|
|
||||||
void get_pdsch_to_harq_feedback(int Mod_idP,
|
void get_pdsch_to_harq_feedback(int Mod_idP,
|
||||||
int UE_id,
|
int UE_id,
|
||||||
|
|||||||
Reference in New Issue
Block a user