mirror of https://github.com/PentHertz/srsLTE.git
Fixed coverity 369716
This commit is contained in:
parent
862784ee46
commit
23f0bd4d4f
|
@ -450,7 +450,7 @@ bool make_phy_csi_report(const csi_report_cfg_s& csi_report_cfg,
|
|||
return false;
|
||||
}
|
||||
|
||||
if (srsran_csi_hl_report_cfg.type = SRSRAN_CSI_REPORT_TYPE_PERIODIC) {
|
||||
if (srsran_csi_hl_report_cfg.type == SRSRAN_CSI_REPORT_TYPE_PERIODIC) {
|
||||
srsran_csi_hl_report_cfg.periodic.period =
|
||||
csi_report_cfg.report_cfg_type.periodic().report_slot_cfg.type().to_number();
|
||||
switch (csi_report_cfg.report_cfg_type.periodic().report_slot_cfg.type()) {
|
||||
|
@ -577,7 +577,7 @@ bool make_phy_csi_report(const csi_report_cfg_s& csi_report_cfg,
|
|||
bool make_phy_coreset_cfg(const ctrl_res_set_s& ctrl_res_set, srsran_coreset_t* in_srsran_coreset)
|
||||
{
|
||||
srsran_coreset_t srsran_coreset = {};
|
||||
srsran_coreset.id = ctrl_res_set.ctrl_res_set_id;
|
||||
srsran_coreset.id = ctrl_res_set.ctrl_res_set_id;
|
||||
switch (ctrl_res_set.precoder_granularity) {
|
||||
case ctrl_res_set_s::precoder_granularity_opts::same_as_reg_bundle:
|
||||
srsran_coreset.precoder_granularity = srsran_coreset_precoder_granularity_reg_bundle;
|
||||
|
@ -940,77 +940,76 @@ bool make_phy_zp_csi_rs_resource(const asn1::rrc_nr::zp_csi_rs_res_s& zp_csi_rs_
|
|||
}
|
||||
zp_csi_rs_resource.resource_mapping.freq_band.nof_rb = zp_csi_rs_res.res_map.freq_band.nrof_rbs;
|
||||
zp_csi_rs_resource.resource_mapping.freq_band.start_rb = zp_csi_rs_res.res_map.freq_band.start_rb;
|
||||
if(zp_csi_rs_res.periodicity_and_offset_present){
|
||||
switch (zp_csi_rs_res.periodicity_and_offset.type())
|
||||
{
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots4:
|
||||
zp_csi_rs_resource.periodicity.period = 4;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots4();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots5:
|
||||
zp_csi_rs_resource.periodicity.period = 5;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots5();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots8:
|
||||
zp_csi_rs_resource.periodicity.period = 8;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots8();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots10:
|
||||
zp_csi_rs_resource.periodicity.period = 10;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots10();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots16:
|
||||
zp_csi_rs_resource.periodicity.period = 16;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots16();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots20:
|
||||
zp_csi_rs_resource.periodicity.period = 20;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots20();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots32:
|
||||
zp_csi_rs_resource.periodicity.period = 32;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots32();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots40:
|
||||
zp_csi_rs_resource.periodicity.period = 40;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots40();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots64:
|
||||
zp_csi_rs_resource.periodicity.period = 64;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots64();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots80:
|
||||
zp_csi_rs_resource.periodicity.period = 80;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots80();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots160:
|
||||
zp_csi_rs_resource.periodicity.period = 160;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots160();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots320:
|
||||
zp_csi_rs_resource.periodicity.period = 320;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots320();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots640:
|
||||
zp_csi_rs_resource.periodicity.period = 640;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots640();
|
||||
break;
|
||||
default:
|
||||
asn1::log_warning("Invalid option for periodicity_and_offset %s",
|
||||
zp_csi_rs_res.periodicity_and_offset.type().to_string());
|
||||
return false;
|
||||
if (zp_csi_rs_res.periodicity_and_offset_present) {
|
||||
switch (zp_csi_rs_res.periodicity_and_offset.type()) {
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots4:
|
||||
zp_csi_rs_resource.periodicity.period = 4;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots4();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots5:
|
||||
zp_csi_rs_resource.periodicity.period = 5;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots5();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots8:
|
||||
zp_csi_rs_resource.periodicity.period = 8;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots8();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots10:
|
||||
zp_csi_rs_resource.periodicity.period = 10;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots10();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots16:
|
||||
zp_csi_rs_resource.periodicity.period = 16;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots16();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots20:
|
||||
zp_csi_rs_resource.periodicity.period = 20;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots20();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots32:
|
||||
zp_csi_rs_resource.periodicity.period = 32;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots32();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots40:
|
||||
zp_csi_rs_resource.periodicity.period = 40;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots40();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots64:
|
||||
zp_csi_rs_resource.periodicity.period = 64;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots64();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots80:
|
||||
zp_csi_rs_resource.periodicity.period = 80;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots80();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots160:
|
||||
zp_csi_rs_resource.periodicity.period = 160;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots160();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots320:
|
||||
zp_csi_rs_resource.periodicity.period = 320;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots320();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots640:
|
||||
zp_csi_rs_resource.periodicity.period = 640;
|
||||
zp_csi_rs_resource.periodicity.offset = zp_csi_rs_res.periodicity_and_offset.slots640();
|
||||
break;
|
||||
default:
|
||||
asn1::log_warning("Invalid option for periodicity_and_offset %s",
|
||||
zp_csi_rs_res.periodicity_and_offset.type().to_string());
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
asn1::log_warning("Option periodicity_and_offset not present");
|
||||
return false;
|
||||
asn1::log_warning("Option periodicity_and_offset not present");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
*out_zp_csi_rs_resource = zp_csi_rs_resource;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool make_phy_nzp_csi_rs_resource(const asn1::rrc_nr::nzp_csi_rs_res_s& asn1_nzp_csi_rs_res,
|
||||
srsran_csi_rs_nzp_resource_t* out_csi_rs_nzp_resource)
|
||||
bool make_phy_nzp_csi_rs_resource(const asn1::rrc_nr::nzp_csi_rs_res_s& asn1_nzp_csi_rs_res,
|
||||
srsran_csi_rs_nzp_resource_t* out_csi_rs_nzp_resource)
|
||||
{
|
||||
srsran_csi_rs_nzp_resource_t csi_rs_nzp_resource;
|
||||
csi_rs_nzp_resource.id = asn1_nzp_csi_rs_res.nzp_csi_rs_res_id;
|
||||
|
@ -1019,24 +1018,24 @@ bool make_phy_nzp_csi_rs_resource(const asn1::rrc_nr::nzp_csi_rs_res_s& asn1_nz
|
|||
csi_rs_nzp_resource.resource_mapping.row = srsran_csi_rs_resource_mapping_row_1;
|
||||
for (uint32_t i = 0; i < asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row1().length(); i++) {
|
||||
csi_rs_nzp_resource.resource_mapping.frequency_domain_alloc[i] =
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row1().get(asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row1().length() -
|
||||
1 - i);
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row1().get(
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row1().length() - 1 - i);
|
||||
}
|
||||
break;
|
||||
case csi_rs_res_map_s::freq_domain_alloc_c_::types_opts::options::row2:
|
||||
csi_rs_nzp_resource.resource_mapping.row = srsran_csi_rs_resource_mapping_row_2;
|
||||
for (uint32_t i = 0; i < asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row2().length(); i++) {
|
||||
csi_rs_nzp_resource.resource_mapping.frequency_domain_alloc[i] =
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row2().get(asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row2().length() -
|
||||
1 - i);
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row2().get(
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row2().length() - 1 - i);
|
||||
}
|
||||
break;
|
||||
case csi_rs_res_map_s::freq_domain_alloc_c_::types_opts::options::row4:
|
||||
csi_rs_nzp_resource.resource_mapping.row = srsran_csi_rs_resource_mapping_row_4;
|
||||
for (uint32_t i = 0; i < asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row4().length(); i++) {
|
||||
csi_rs_nzp_resource.resource_mapping.frequency_domain_alloc[i] =
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row4().get(asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row4().length() -
|
||||
1 - i);
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row4().get(
|
||||
asn1_nzp_csi_rs_res.res_map.freq_domain_alloc.row4().length() - 1 - i);
|
||||
}
|
||||
break;
|
||||
case csi_rs_res_map_s::freq_domain_alloc_c_::types_opts::options::other:
|
||||
|
@ -1104,69 +1103,68 @@ bool make_phy_nzp_csi_rs_resource(const asn1::rrc_nr::nzp_csi_rs_res_s& asn1_nz
|
|||
csi_rs_nzp_resource.power_control_offset_ss = asn1_nzp_csi_rs_res.pwr_ctrl_offset_ss.to_number();
|
||||
}
|
||||
|
||||
if(asn1_nzp_csi_rs_res.periodicity_and_offset_present){
|
||||
switch (asn1_nzp_csi_rs_res.periodicity_and_offset.type())
|
||||
{
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots4:
|
||||
csi_rs_nzp_resource.periodicity.period = 4;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots4();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots5:
|
||||
csi_rs_nzp_resource.periodicity.period = 5;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots5();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots8:
|
||||
csi_rs_nzp_resource.periodicity.period = 8;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots8();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots10:
|
||||
csi_rs_nzp_resource.periodicity.period = 10;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots10();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots16:
|
||||
csi_rs_nzp_resource.periodicity.period = 16;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots16();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots20:
|
||||
csi_rs_nzp_resource.periodicity.period = 20;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots20();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots32:
|
||||
csi_rs_nzp_resource.periodicity.period = 32;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots32();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots40:
|
||||
csi_rs_nzp_resource.periodicity.period = 40;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots40();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots64:
|
||||
csi_rs_nzp_resource.periodicity.period = 64;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots64();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots80:
|
||||
csi_rs_nzp_resource.periodicity.period = 80;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots80();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots160:
|
||||
csi_rs_nzp_resource.periodicity.period = 160;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots160();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots320:
|
||||
csi_rs_nzp_resource.periodicity.period = 320;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots320();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots640:
|
||||
csi_rs_nzp_resource.periodicity.period = 640;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots640();
|
||||
break;
|
||||
default:
|
||||
asn1::log_warning("Invalid option for periodicity_and_offset %s",
|
||||
asn1_nzp_csi_rs_res.periodicity_and_offset.type().to_string());
|
||||
return false;
|
||||
if (asn1_nzp_csi_rs_res.periodicity_and_offset_present) {
|
||||
switch (asn1_nzp_csi_rs_res.periodicity_and_offset.type()) {
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots4:
|
||||
csi_rs_nzp_resource.periodicity.period = 4;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots4();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots5:
|
||||
csi_rs_nzp_resource.periodicity.period = 5;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots5();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots8:
|
||||
csi_rs_nzp_resource.periodicity.period = 8;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots8();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots10:
|
||||
csi_rs_nzp_resource.periodicity.period = 10;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots10();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots16:
|
||||
csi_rs_nzp_resource.periodicity.period = 16;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots16();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots20:
|
||||
csi_rs_nzp_resource.periodicity.period = 20;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots20();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots32:
|
||||
csi_rs_nzp_resource.periodicity.period = 32;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots32();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots40:
|
||||
csi_rs_nzp_resource.periodicity.period = 40;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots40();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots64:
|
||||
csi_rs_nzp_resource.periodicity.period = 64;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots64();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots80:
|
||||
csi_rs_nzp_resource.periodicity.period = 80;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots80();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots160:
|
||||
csi_rs_nzp_resource.periodicity.period = 160;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots160();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots320:
|
||||
csi_rs_nzp_resource.periodicity.period = 320;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots320();
|
||||
break;
|
||||
case csi_res_periodicity_and_offset_c::types_opts::options::slots640:
|
||||
csi_rs_nzp_resource.periodicity.period = 640;
|
||||
csi_rs_nzp_resource.periodicity.offset = asn1_nzp_csi_rs_res.periodicity_and_offset.slots640();
|
||||
break;
|
||||
default:
|
||||
asn1::log_warning("Invalid option for periodicity_and_offset %s",
|
||||
asn1_nzp_csi_rs_res.periodicity_and_offset.type().to_string());
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
asn1::log_warning("Option periodicity_and_offset not present");
|
||||
return false;
|
||||
asn1::log_warning("Option periodicity_and_offset not present");
|
||||
return false;
|
||||
}
|
||||
|
||||
csi_rs_nzp_resource.scrambling_id = asn1_nzp_csi_rs_res.scrambling_id;
|
||||
|
|
Loading…
Reference in New Issue