some fixes for phy-test mode
This commit is contained in:
@@ -519,12 +519,14 @@ bool nr_ul_preprocessor_phytest(module_id_t module_id, frame_t frame, sub_frame_
|
|||||||
sched_ctrl->coreset,
|
sched_ctrl->coreset,
|
||||||
Y);
|
Y);
|
||||||
|
|
||||||
if (sched_ctrl->cce_index < 0) {
|
if (CCEIndex < 0) {
|
||||||
LOG_E(MAC, "%s(): CCE list not empty, couldn't schedule PUSCH\n", __func__);
|
LOG_E(MAC, "%s(): CCE list not empty, couldn't schedule PUSCH\n", __func__);
|
||||||
nr_mac->pdcch_cand[cid]--;
|
nr_mac->pdcch_cand[cid]--;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sched_ctrl->cce_index = CCEIndex;
|
||||||
|
|
||||||
const int mcs = target_ul_mcs;
|
const int mcs = target_ul_mcs;
|
||||||
NR_sched_pusch_t *sched_pusch = &sched_ctrl->sched_pusch;
|
NR_sched_pusch_t *sched_pusch = &sched_ctrl->sched_pusch;
|
||||||
sched_pusch->mcs = mcs;
|
sched_pusch->mcs = mcs;
|
||||||
|
|||||||
@@ -579,7 +579,8 @@ void nr_set_pdsch_semi_static(const NR_ServingCellConfigCommon_t *scc,
|
|||||||
ps->nrOfLayers = 1;
|
ps->nrOfLayers = 1;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (ps->nrOfLayers != layers) {
|
if (ps->nrOfLayers != layers ||
|
||||||
|
ps->numDmrsCdmGrpsNoData == 0) {
|
||||||
reset_dmrs = true;
|
reset_dmrs = true;
|
||||||
ps->nrOfLayers = layers;
|
ps->nrOfLayers = layers;
|
||||||
set_dl_dmrs_ports(ps);
|
set_dl_dmrs_ports(ps);
|
||||||
@@ -587,6 +588,7 @@ void nr_set_pdsch_semi_static(const NR_ServingCellConfigCommon_t *scc,
|
|||||||
}
|
}
|
||||||
|
|
||||||
ps->N_PRB_DMRS = ps->numDmrsCdmGrpsNoData * (ps->dmrsConfigType == NFAPI_NR_DMRS_TYPE1 ? 6 : 4);
|
ps->N_PRB_DMRS = ps->numDmrsCdmGrpsNoData * (ps->dmrsConfigType == NFAPI_NR_DMRS_TYPE1 ? 6 : 4);
|
||||||
|
|
||||||
if (reset_dmrs) {
|
if (reset_dmrs) {
|
||||||
ps->dl_dmrs_symb_pos = fill_dmrs_mask(bwpd ? bwpd->pdsch_Config->choice.setup : NULL, scc->dmrs_TypeA_Position, ps->nrOfSymbols, ps->startSymbolIndex, ps->mapping_type, ps->frontloaded_symb);
|
ps->dl_dmrs_symb_pos = fill_dmrs_mask(bwpd ? bwpd->pdsch_Config->choice.setup : NULL, scc->dmrs_TypeA_Position, ps->nrOfSymbols, ps->startSymbolIndex, ps->mapping_type, ps->frontloaded_symb);
|
||||||
ps->N_DMRS_SLOT = get_num_dmrs(ps->dl_dmrs_symb_pos);
|
ps->N_DMRS_SLOT = get_num_dmrs(ps->dl_dmrs_symb_pos);
|
||||||
|
|||||||
@@ -711,8 +711,9 @@ void nr_rx_sdu(const module_id_t gnb_mod_idP,
|
|||||||
UE_info->mac_stats[UE_id].ulsch_DTX++;
|
UE_info->mac_stats[UE_id].ulsch_DTX++;
|
||||||
}
|
}
|
||||||
if (UE_info->UE_sched_ctrl[UE_id].pusch_consecutive_dtx_cnt >= pusch_failure_thres) {
|
if (UE_info->UE_sched_ctrl[UE_id].pusch_consecutive_dtx_cnt >= pusch_failure_thres) {
|
||||||
LOG_W(NR_MAC,"Detected UL Failure on PUSCH after %d PUSCH DTX, stopping scheduling\n",
|
if (get_softmodem_params()->phy_test==0)
|
||||||
UE_info->UE_sched_ctrl[UE_id].pusch_consecutive_dtx_cnt);
|
LOG_W(NR_MAC,"Detected UL Failure on PUSCH after %d PUSCH DTX, stopping scheduling\n",
|
||||||
|
UE_info->UE_sched_ctrl[UE_id].pusch_consecutive_dtx_cnt);
|
||||||
UE_info->UE_sched_ctrl[UE_id].ul_failure = 1;
|
UE_info->UE_sched_ctrl[UE_id].ul_failure = 1;
|
||||||
nr_mac_gNB_rrc_ul_failure(gnb_mod_idP,CC_idP,frameP,slotP,rntiP);
|
nr_mac_gNB_rrc_ul_failure(gnb_mod_idP,CC_idP,frameP,slotP,rntiP);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user