From 91f8f88781912ab3088175a33c0cbaf10239ece3 Mon Sep 17 00:00:00 2001 From: francescomani Date: Mon, 9 Jan 2023 13:33:50 +0100 Subject: [PATCH] remove pdcch_config from dci_size function --- openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c | 21 ++++--------------- openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h | 2 +- .../NR_MAC_UE/nr_ue_dci_configuration.c | 6 +++--- .../NR_MAC_gNB/gNB_scheduler_primitives.c | 6 +++--- 4 files changed, 11 insertions(+), 24 deletions(-) diff --git a/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c b/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c index ff71f8bd57..b6b0e77e3e 100644 --- a/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c +++ b/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c @@ -3163,7 +3163,7 @@ uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDownlinkBWP, dci_pdu_rel15_t *dci_pdu, nr_dci_format_t format, nr_rnti_type_t rnti_type, - int controlResourceSetId, + NR_ControlResourceSet_t *coreset, int bwp_id, int ss_type, uint16_t cset0_bwp_size, @@ -3180,29 +3180,22 @@ uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDownlinkBWP, uplinkConfig = cg->spCellConfig->spCellConfigDedicated->uplinkConfig; } - const NR_BWP_DownlinkDedicated_t *bwpd = NULL; const NR_BWP_UplinkDedicated_t *ubwpd = NULL; const NR_BWP_UplinkCommon_t *ubwpc = NULL; NR_PDSCH_Config_t *pdsch_Config = DL_BWP ? DL_BWP->pdsch_Config : NULL; NR_PUSCH_Config_t *pusch_Config = NULL; NR_PUCCH_Config_t *pucch_Config = NULL; - NR_PDCCH_Config_t *pdcch_Config = NULL; NR_SRS_Config_t *srs_config = NULL; if(bwp_id > 0) { AssertFatal(cg!=NULL,"Cellgroup is null and bwp_id!=0"); - bwpd = cg->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.array[bwp_id-1]->bwp_Dedicated; ubwpd = uplinkConfig ? uplinkConfig->uplinkBWP_ToAddModList->list.array[bwp_id-1]->bwp_Dedicated : NULL; ubwpc = uplinkConfig ? uplinkConfig->uplinkBWP_ToAddModList->list.array[bwp_id-1]->bwp_Common : NULL; - pdcch_Config = (bwpd->pdcch_Config) ? bwpd->pdcch_Config->choice.setup : NULL; pucch_Config = (ubwpd->pucch_Config) ? ubwpd->pucch_Config->choice.setup : NULL; pusch_Config = (ubwpd->pusch_Config) ? ubwpd->pusch_Config->choice.setup : NULL; srs_config = (ubwpd->srs_Config) ? ubwpd->srs_Config->choice.setup : NULL; } else if (cg) { ubwpc = initialUplinkBWP; - bwpd = cg->spCellConfig && cg->spCellConfig->spCellConfigDedicated ? - cg->spCellConfig->spCellConfigDedicated->initialDownlinkBWP : NULL; ubwpd = uplinkConfig ? uplinkConfig->initialUplinkBWP : NULL; - pdcch_Config = (bwpd && bwpd->pdcch_Config) ? bwpd->pdcch_Config->choice.setup : NULL; pucch_Config = (ubwpd && ubwpd->pucch_Config) ? ubwpd->pucch_Config->choice.setup : NULL; pusch_Config = (ubwpd && ubwpd->pusch_Config) ? ubwpd->pusch_Config->choice.setup : NULL; srs_config = (ubwpd && ubwpd->srs_Config) ? ubwpd->srs_Config->choice.setup: NULL; @@ -3499,15 +3492,9 @@ uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDownlinkBWP, size += dci_pdu->antenna_ports.nbits; LOG_D(NR_MAC,"dci_pdu->antenna_ports.nbits %d\n",dci_pdu->antenna_ports.nbits); // Tx Config Indication - for (int i = 0; i < pdcch_Config->controlResourceSetToAddModList->list.count; i++) { - if (pdcch_Config->controlResourceSetToAddModList->list.array[i]->controlResourceSetId == controlResourceSetId) { - long *isTciEnable = pdcch_Config->controlResourceSetToAddModList->list.array[i]->tci_PresentInDCI; - if (isTciEnable != NULL) { - dci_pdu->transmission_configuration_indication.nbits = 3; - size += dci_pdu->transmission_configuration_indication.nbits; - } - break; - } + if (coreset->tci_PresentInDCI != NULL) { + dci_pdu->transmission_configuration_indication.nbits = 3; + size += dci_pdu->transmission_configuration_indication.nbits; } // SRS request if (cg->spCellConfig->spCellConfigDedicated->supplementaryUplink==NULL) diff --git a/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h b/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h index 8aee2cc5a3..3e6100e2d5 100644 --- a/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h +++ b/openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.h @@ -97,7 +97,7 @@ uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDownlinkBWP, dci_pdu_rel15_t *dci_pdu, nr_dci_format_t format, nr_rnti_type_t rnti_type, - int controlResourceSetId, + NR_ControlResourceSet_t *coreset, int bwp_id, int ss_type, uint16_t cset0_bwp_size, diff --git a/openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c b/openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c index 2815a42c16..04b7d36e5e 100644 --- a/openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c +++ b/openair2/LAYER2/NR_MAC_UE/nr_ue_dci_configuration.c @@ -176,20 +176,20 @@ void config_dci_pdu(NR_UE_MAC_INST_t *mac, fapi_nr_dl_config_dci_dl_pdu_rel15_t alt_size = nr_dci_size(initialDownlinkBWP,initialUplinkBWP, current_DL_BWP, current_UL_BWP, mac->cg, &temp_pdu, - NR_UL_DCI_FORMAT_0_0, rnti_type, coreset_id, dl_bwp_id, + NR_UL_DCI_FORMAT_0_0, rnti_type, coreset, dl_bwp_id, ss->searchSpaceType->present, mac->type0_PDCCH_CSS_config.num_rbs, 0); if(dci_format == NR_UL_DCI_FORMAT_0_0) alt_size = nr_dci_size(initialDownlinkBWP,initialUplinkBWP, current_DL_BWP, current_UL_BWP, mac->cg, &temp_pdu, - NR_DL_DCI_FORMAT_1_0, rnti_type, coreset_id, dl_bwp_id, + NR_DL_DCI_FORMAT_1_0, rnti_type, coreset, dl_bwp_id, ss->searchSpaceType->present, mac->type0_PDCCH_CSS_config.num_rbs, 0); } rel15->dci_length_options[i] = nr_dci_size(initialDownlinkBWP,initialUplinkBWP, current_DL_BWP, current_UL_BWP, mac->cg, &mac->def_dci_pdu_rel15[dci_format], - dci_format, NR_RNTI_TC, coreset_id, dl_bwp_id, + dci_format, NR_RNTI_TC, coreset, dl_bwp_id, ss->searchSpaceType->present, mac->type0_PDCCH_CSS_config.num_rbs, alt_size); rel15->BWPStart = coreset_id == 0 ? mac->type0_PDCCH_CSS_config.cset_start_rb : current_DL_BWP->BWPStart; diff --git a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c index 4814250fd9..6f9d829bce 100644 --- a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c +++ b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c @@ -1194,14 +1194,14 @@ void fill_dci_pdu_rel15(const NR_ServingCellConfigCommon_t *scc, scc->uplinkConfigCommon->initialUplinkBWP, current_DL_BWP, current_UL_BWP, CellGroup, &temp_pdu, NR_UL_DCI_FORMAT_0_0, rnti_type, - controlResourceSetId, bwp_id, ss->searchSpaceType->present, cset0_bwp_size, 0); + coreset, bwp_id, ss->searchSpaceType->present, cset0_bwp_size, 0); if(dci_format == NR_UL_DCI_FORMAT_0_0) alt_size = nr_dci_size(scc->downlinkConfigCommon->initialDownlinkBWP, scc->uplinkConfigCommon->initialUplinkBWP, current_DL_BWP, current_UL_BWP, CellGroup, &temp_pdu, NR_DL_DCI_FORMAT_1_0, rnti_type, - controlResourceSetId, bwp_id, ss->searchSpaceType->present, cset0_bwp_size, 0); + coreset, bwp_id, ss->searchSpaceType->present, cset0_bwp_size, 0); } else @@ -1210,7 +1210,7 @@ void fill_dci_pdu_rel15(const NR_ServingCellConfigCommon_t *scc, int dci_size = nr_dci_size(scc->downlinkConfigCommon->initialDownlinkBWP, scc->uplinkConfigCommon->initialUplinkBWP, current_DL_BWP, current_UL_BWP, - CellGroup, dci_pdu_rel15, dci_format, rnti_type, controlResourceSetId, + CellGroup, dci_pdu_rel15, dci_format, rnti_type, coreset, bwp_id, ss->searchSpaceType->present, cset0_bwp_size, alt_size); pdcch_dci_pdu->PayloadSizeBits = dci_size; AssertFatal(dci_size <= 64, "DCI sizes above 64 bits not yet supported");