From cda4275ed0fe6766e7665c4b9589e06f463305bc Mon Sep 17 00:00:00 2001 From: Francisco Date: Wed, 6 Oct 2021 15:46:24 +0100 Subject: [PATCH] sched,nr: disable simultaneous RAR and SSB until the PHY supports it --- .../src/stack/mac/nr/sched_nr_grant_allocator.cc | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/srsenb/src/stack/mac/nr/sched_nr_grant_allocator.cc b/srsenb/src/stack/mac/nr/sched_nr_grant_allocator.cc index 512ee7e0a..8e9ba1a07 100644 --- a/srsenb/src/stack/mac/nr/sched_nr_grant_allocator.cc +++ b/srsenb/src/stack/mac/nr/sched_nr_grant_allocator.cc @@ -93,9 +93,15 @@ alloc_result bwp_slot_allocator::alloc_rar_and_msg3(uint16_t static const uint32_t msg3_nof_prbs = 3, m = 0; bwp_slot_grid& bwp_pdcch_slot = bwp_grid[pdcch_slot]; - slot_point msg3_slot = pdcch_slot + cfg.pusch_ra_list[m].msg3_delay; - bwp_slot_grid& bwp_msg3_slot = bwp_grid[msg3_slot]; - alloc_result ret = verify_pusch_space(bwp_msg3_slot, nullptr); + if (not bwp_pdcch_slot.ssb.empty()) { + // TODO: support concurrent PDSCH and SSB + logger.info("SCHED: skipping ra-rnti=0x%x RAR allocation. Cause: concurrent PDSCH and SSB not yet supported", + ra_rnti); + return alloc_result::no_sch_space; + } + slot_point msg3_slot = pdcch_slot + cfg.pusch_ra_list[m].msg3_delay; + bwp_slot_grid& bwp_msg3_slot = bwp_grid[msg3_slot]; + alloc_result ret = verify_pusch_space(bwp_msg3_slot, nullptr); if (ret != alloc_result::success) { return ret; } @@ -197,7 +203,7 @@ alloc_result bwp_slot_allocator::alloc_pdsch(slot_ue& ue, const prb_grant& dl_gr } bwp_slot_grid& bwp_pdcch_slot = bwp_grid[ue.pdcch_slot]; bwp_slot_grid& bwp_pdsch_slot = bwp_grid[ue.pdsch_slot]; - bwp_slot_grid& bwp_uci_slot = bwp_grid[ue.uci_slot]; // UCI : UL control info + bwp_slot_grid& bwp_uci_slot = bwp_grid[ue.uci_slot]; // UCI : UL control info alloc_result result = verify_pdsch_space(bwp_pdsch_slot, bwp_pdcch_slot); if (result != alloc_result::success) { return result;