Skip to content

Commit e807c9d

Browse files
carlo-galIsmael Gomez
authored andcommitted
gnb: force CSI-cfg to use same table as PDSCH-MCS
Signed-off-by: Carlo Galiotto <[email protected]>
1 parent 9a89bd1 commit e807c9d

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

apps/gnb/gnb_appconfig_translators.cpp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,28 @@ std::vector<du_cell_config> srsran::generate_du_cell_config(const gnb_appconfig&
320320

321321
// CSI related parameters.
322322
if (out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.has_value()) {
323+
// Set CQI table according to the MCS table used for PDSCH.
324+
if (not out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list.empty()) {
325+
if (out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table.has_value()) {
326+
out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table.reset();
327+
}
328+
out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table.emplace();
329+
switch (base_cell.pdsch_cfg.mcs_table) {
330+
case pdsch_mcs_table::qam64:
331+
out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table =
332+
csi_report_config::cqi_table_t::table1;
333+
break;
334+
case pdsch_mcs_table::qam256:
335+
out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table =
336+
csi_report_config::cqi_table_t::table2;
337+
break;
338+
case pdsch_mcs_table::qam64LowSe:
339+
out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().csi_report_cfg_list[0].cqi_table =
340+
csi_report_config::cqi_table_t::table3;
341+
break;
342+
}
343+
}
344+
323345
for (auto& nzp_csi_res : out_cell.ue_ded_serv_cell_cfg.csi_meas_cfg.value().nzp_csi_rs_res_list) {
324346
nzp_csi_res.pwr_ctrl_offset = base_cell.csi_cfg.pwr_ctrl_offset;
325347
}

include/srsran/ran/csi_rs/csi_report_config.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,8 +165,9 @@ struct csi_report_config {
165165
bool operator!=(const report_frequency_config& rhs) const { return !(rhs == *this); }
166166
};
167167

168-
/// \brief Which CQI table to use for CQI calculation.
168+
/// \brief CQI table to use for CQI calculation.
169169
/// \remark See TS 38.331, \c cqi-Table in \c CSI-ReportConfig and TS 38.214, clause 5.2.2.1.
170+
/// \remark Value \c table4 is for Rel.16 or above only.
170171
enum class cqi_table_t { table1, table2, table3, table4 };
171172

172173
/// Indicates one out of two possible BWP-dependent values for the subband size as indicated in TS 38.214,

0 commit comments

Comments
 (0)