Fix allocate_ul_retransmission after merge
This commit is contained in:
@@ -98,9 +98,9 @@ void dump_mac_stats(gNB_MAC_INST *gNB)
|
|||||||
stats->ulsch_total_bytes_scheduled, stats->ulsch_total_bytes_rx);
|
stats->ulsch_total_bytes_scheduled, stats->ulsch_total_bytes_rx);
|
||||||
for (int lc_id = 0; lc_id < 63; lc_id++) {
|
for (int lc_id = 0; lc_id < 63; lc_id++) {
|
||||||
if (stats->lc_bytes_tx[lc_id] > 0)
|
if (stats->lc_bytes_tx[lc_id] > 0)
|
||||||
LOG_I(MAC, "UE %d: LCID %d: %d bytes TX\n", UE_id, lc_id, stats->lc_bytes_tx[lc_id]);
|
LOG_D(MAC, "UE %d: LCID %d: %d bytes TX\n", UE_id, lc_id, stats->lc_bytes_tx[lc_id]);
|
||||||
if (stats->lc_bytes_rx[lc_id] > 0)
|
if (stats->lc_bytes_rx[lc_id] > 0)
|
||||||
LOG_I(MAC, "UE %d: LCID %d: %d bytes RX\n", UE_id, lc_id, stats->lc_bytes_rx[lc_id]);
|
LOG_D(MAC, "UE %d: LCID %d: %d bytes RX\n", UE_id, lc_id, stats->lc_bytes_rx[lc_id]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
print_meas(&gNB->eNB_scheduler, "DL & UL scheduling timing stats", NULL, NULL);
|
print_meas(&gNB->eNB_scheduler, "DL & UL scheduling timing stats", NULL, NULL);
|
||||||
|
|||||||
@@ -795,10 +795,20 @@ bool allocate_ul_retransmission(module_id_t module_id,
|
|||||||
NR_UE_info_t *UE_info = &RC.nrmac[module_id]->UE_info;
|
NR_UE_info_t *UE_info = &RC.nrmac[module_id]->UE_info;
|
||||||
NR_UE_sched_ctrl_t *sched_ctrl = &UE_info->UE_sched_ctrl[UE_id];
|
NR_UE_sched_ctrl_t *sched_ctrl = &UE_info->UE_sched_ctrl[UE_id];
|
||||||
NR_sched_pusch_t *retInfo = &sched_ctrl->ul_harq_processes[harq_pid].sched_pusch;
|
NR_sched_pusch_t *retInfo = &sched_ctrl->ul_harq_processes[harq_pid].sched_pusch;
|
||||||
|
NR_sched_pusch_t *sched_pusch = &sched_ctrl->sched_pusch;
|
||||||
|
|
||||||
|
// frame/slot in sched_pusch has been set previously. In the following, we
|
||||||
|
// overwrite the information in the retransmission information before storing
|
||||||
|
// as the new scheduling instruction
|
||||||
|
retInfo->frame = sched_ctrl->sched_pusch.frame;
|
||||||
|
retInfo->slot = sched_ctrl->sched_pusch.slot;
|
||||||
|
|
||||||
|
// Get previous PUSCH filed info
|
||||||
|
sched_ctrl->sched_pusch = *retInfo;
|
||||||
|
|
||||||
NR_BWP_t *genericParameters = sched_ctrl->active_ubwp ? &sched_ctrl->active_ubwp->bwp_Common->genericParameters : &scc->uplinkConfigCommon->initialUplinkBWP->genericParameters;
|
NR_BWP_t *genericParameters = sched_ctrl->active_ubwp ? &sched_ctrl->active_ubwp->bwp_Common->genericParameters : &scc->uplinkConfigCommon->initialUplinkBWP->genericParameters;
|
||||||
int rbStart = NRRIV2BW(genericParameters->locationAndBandwidth, MAX_BWP_SIZE);
|
int rbStart = sched_ctrl->active_ubwp ? NRRIV2PRBOFFSET(genericParameters->locationAndBandwidth, MAX_BWP_SIZE) : 0;
|
||||||
const uint16_t bwpSize = NRRIV2PRBOFFSET(genericParameters->locationAndBandwidth, MAX_BWP_SIZE);
|
const uint16_t bwpSize = NRRIV2BW(genericParameters->locationAndBandwidth, MAX_BWP_SIZE);
|
||||||
|
|
||||||
const uint8_t num_dmrs_cdm_grps_no_data = sched_ctrl->active_bwp ? 1 : 2;
|
const uint8_t num_dmrs_cdm_grps_no_data = sched_ctrl->active_bwp ? 1 : 2;
|
||||||
const int tda = sched_ctrl->active_ubwp ? RC.nrmac[module_id]->preferred_ul_tda[sched_ctrl->active_ubwp->bwp_Id][slot] : 1;
|
const int tda = sched_ctrl->active_ubwp ? RC.nrmac[module_id]->preferred_ul_tda[sched_ctrl->active_ubwp->bwp_Id][slot] : 1;
|
||||||
@@ -862,14 +872,6 @@ bool allocate_ul_retransmission(module_id_t module_id,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* frame/slot in sched_pusch has been set previously. In the following, we
|
|
||||||
* overwrite the information in the retransmission information before storing
|
|
||||||
* as the new scheduling instruction */
|
|
||||||
retInfo->frame = sched_ctrl->sched_pusch.frame;
|
|
||||||
retInfo->slot = sched_ctrl->sched_pusch.slot;
|
|
||||||
/* Get previous PSUCH field info */
|
|
||||||
sched_ctrl->sched_pusch = *retInfo;
|
|
||||||
NR_sched_pusch_t *sched_pusch = &sched_ctrl->sched_pusch;
|
|
||||||
LOG_D(MAC,
|
LOG_D(MAC,
|
||||||
"%4d.%2d Allocate UL retransmission UE %d/RNTI %04x sched %4d.%2d (%d RBs)\n",
|
"%4d.%2d Allocate UL retransmission UE %d/RNTI %04x sched %4d.%2d (%d RBs)\n",
|
||||||
frame,
|
frame,
|
||||||
|
|||||||
Reference in New Issue
Block a user