nb of layers from CSI Report
This commit is contained in:
@@ -603,7 +603,7 @@ void pf_dl(module_id_t module_id,
|
|||||||
|
|
||||||
/* Calculate coeff */
|
/* Calculate coeff */
|
||||||
set_dl_mcs(sched_pdsch,sched_ctrl,ps->mcsTableIdx);
|
set_dl_mcs(sched_pdsch,sched_ctrl,ps->mcsTableIdx);
|
||||||
sched_pdsch->nrOfLayers = 1;
|
set_dl_nrOfLayers(sched_pdsch,sched_ctrl);
|
||||||
const uint8_t Qm = nr_get_Qm_dl(sched_pdsch->mcs, ps->mcsTableIdx);
|
const uint8_t Qm = nr_get_Qm_dl(sched_pdsch->mcs, ps->mcsTableIdx);
|
||||||
const uint16_t R = nr_get_code_rate_dl(sched_pdsch->mcs, ps->mcsTableIdx);
|
const uint16_t R = nr_get_code_rate_dl(sched_pdsch->mcs, ps->mcsTableIdx);
|
||||||
uint32_t tbs = nr_compute_tbs(Qm,
|
uint32_t tbs = nr_compute_tbs(Qm,
|
||||||
|
|||||||
@@ -137,6 +137,15 @@ static inline uint8_t get_max_cces(uint8_t scs) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void set_dl_nrOfLayers(NR_sched_pdsch_t *sched_pdsch,
|
||||||
|
NR_UE_sched_ctrl_t *sched_ctrl) {
|
||||||
|
|
||||||
|
// for now this should be enough
|
||||||
|
// if there is not csi report RI is 0 from initialization
|
||||||
|
sched_pdsch->nrOfLayers = sched_ctrl->CSI_report.choice.cri_ri_li_pmi_cqi_report.ri + 1;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch,
|
void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch,
|
||||||
NR_UE_sched_ctrl_t *sched_ctrl,
|
NR_UE_sched_ctrl_t *sched_ctrl,
|
||||||
uint8_t mcs_table_idx) {
|
uint8_t mcs_table_idx) {
|
||||||
|
|||||||
@@ -419,6 +419,9 @@ void set_dl_mcs(NR_sched_pdsch_t *sched_pdsch,
|
|||||||
NR_UE_sched_ctrl_t *sched_ctrl,
|
NR_UE_sched_ctrl_t *sched_ctrl,
|
||||||
uint8_t mcs_table_idx);
|
uint8_t mcs_table_idx);
|
||||||
|
|
||||||
|
void set_dl_nrOfLayers(NR_sched_pdsch_t *sched_pdsch,
|
||||||
|
NR_UE_sched_ctrl_t *sched_ctrl);
|
||||||
|
|
||||||
void calculate_preferred_dl_tda(module_id_t module_id, const NR_BWP_Downlink_t *bwp);
|
void calculate_preferred_dl_tda(module_id_t module_id, const NR_BWP_Downlink_t *bwp);
|
||||||
void calculate_preferred_ul_tda(module_id_t module_id, const NR_BWP_Uplink_t *ubwp);
|
void calculate_preferred_ul_tda(module_id_t module_id, const NR_BWP_Uplink_t *ubwp);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user