mirror of https://github.com/PentHertz/srsLTE.git
nr,gnb,rrc: correctly configure TDD for UE and scheduler
This commit is contained in:
parent
25f34502a7
commit
acd5b8c46a
|
@ -172,9 +172,6 @@ public:
|
|||
int pack_recfg_with_sync_sp_cell_cfg_common_ul_cfg_common_init_ul_bwp_pusch_cfg_common(
|
||||
asn1::rrc_nr::cell_group_cfg_s& cell_group_cfg_pack);
|
||||
|
||||
int
|
||||
pack_recfg_with_sync_sp_cell_cfg_common_tdd_ul_dl_cfg_common(asn1::rrc_nr::cell_group_cfg_s& cell_group_cfg_pack);
|
||||
|
||||
int pack_nr_radio_bearer_config(asn1::dyn_octstring& packed_nr_bearer_config);
|
||||
|
||||
int add_drb();
|
||||
|
|
|
@ -241,7 +241,7 @@ int fill_serv_cell_common_from_enb_cfg(const rrc_nr_cfg_t& cfg, uint32_t cc, ser
|
|||
serv_common.n_timing_advance_offset_present = true;
|
||||
serv_common.n_timing_advance_offset = asn1::rrc_nr::serving_cell_cfg_common_s::n_timing_advance_offset_opts::n0;
|
||||
serv_common.n_timing_advance_offset_present = true;
|
||||
serv_common.dmrs_type_a_position = asn1::rrc_nr::serving_cell_cfg_common_s::dmrs_type_a_position_opts::pos2;
|
||||
serv_common.dmrs_type_a_position = asn1::rrc_nr::serving_cell_cfg_common_s::dmrs_type_a_position_opts::pos2;
|
||||
|
||||
serv_common.pci_present = true;
|
||||
serv_common.pci = cell_cfg.phy_cell.carrier.pci;
|
||||
|
@ -268,6 +268,18 @@ int fill_serv_cell_common_from_enb_cfg(const rrc_nr_cfg_t& cfg, uint32_t cc, ser
|
|||
serv_common.ssb_subcarrier_spacing = subcarrier_spacing_opts::khz30;
|
||||
}
|
||||
|
||||
if (cfg.cell_list[cc].duplex_mode == SRSRAN_DUPLEX_MODE_TDD) {
|
||||
// TDD UL-DL config
|
||||
serv_common.tdd_ul_dl_cfg_common_present = true;
|
||||
auto& tdd_config = serv_common.tdd_ul_dl_cfg_common;
|
||||
tdd_config.ref_subcarrier_spacing = subcarrier_spacing_e::khz15;
|
||||
tdd_config.pattern1.dl_ul_tx_periodicity = asn1::rrc_nr::tdd_ul_dl_pattern_s::dl_ul_tx_periodicity_opts::ms10;
|
||||
tdd_config.pattern1.nrof_dl_slots = 6;
|
||||
tdd_config.pattern1.nrof_dl_symbols = 0;
|
||||
tdd_config.pattern1.nrof_ul_slots = 4;
|
||||
tdd_config.pattern1.nrof_ul_symbols = 0;
|
||||
}
|
||||
|
||||
return SRSRAN_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -1212,22 +1212,6 @@ int rrc_nr::ue::pack_recfg_with_sync_sp_cell_cfg_common_ul_cfg_common(
|
|||
return SRSRAN_SUCCESS;
|
||||
}
|
||||
|
||||
int rrc_nr::ue::pack_recfg_with_sync_sp_cell_cfg_common_tdd_ul_dl_cfg_common(
|
||||
asn1::rrc_nr::cell_group_cfg_s& cell_group_cfg_pack)
|
||||
{
|
||||
// TDD UL-DL config
|
||||
cell_group_cfg_pack.sp_cell_cfg.recfg_with_sync.sp_cell_cfg_common.tdd_ul_dl_cfg_common_present = true;
|
||||
auto& tdd_config = cell_group_cfg_pack.sp_cell_cfg.recfg_with_sync.sp_cell_cfg_common.tdd_ul_dl_cfg_common;
|
||||
tdd_config.ref_subcarrier_spacing = subcarrier_spacing_e::khz15;
|
||||
tdd_config.pattern1.dl_ul_tx_periodicity = asn1::rrc_nr::tdd_ul_dl_pattern_s::dl_ul_tx_periodicity_opts::ms10;
|
||||
tdd_config.pattern1.nrof_dl_slots = 6;
|
||||
tdd_config.pattern1.nrof_dl_symbols = 0;
|
||||
tdd_config.pattern1.nrof_ul_slots = 4;
|
||||
tdd_config.pattern1.nrof_ul_symbols = 0;
|
||||
|
||||
return SRSRAN_SUCCESS;
|
||||
}
|
||||
|
||||
int rrc_nr::ue::pack_recfg_with_sync_sp_cell_cfg_common(asn1::rrc_nr::cell_group_cfg_s& cell_group_cfg_pack)
|
||||
{
|
||||
auto& pscell_cfg = parent->cfg.cell_list.at(UE_PSCELL_CC_IDX);
|
||||
|
@ -1242,10 +1226,6 @@ int rrc_nr::ue::pack_recfg_with_sync_sp_cell_cfg_common(asn1::rrc_nr::cell_group
|
|||
// UL config
|
||||
pack_recfg_with_sync_sp_cell_cfg_common_ul_cfg_common(cell_group_cfg_pack);
|
||||
|
||||
if (parent->cfg.cell_list[0].duplex_mode == SRSRAN_DUPLEX_MODE_TDD) {
|
||||
pack_recfg_with_sync_sp_cell_cfg_common_tdd_ul_dl_cfg_common(cell_group_cfg_pack);
|
||||
}
|
||||
|
||||
return SRSRAN_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue