Commit d6e960e4 authored by Roberto Louro Magueta's avatar Roberto Louro Magueta

Implementation of tables and get values to precoding information

parent 762eba23
...@@ -53,6 +53,13 @@ uint8_t compute_srs_resource_indicator(NR_UplinkConfig_t *uplinkConfig, ...@@ -53,6 +53,13 @@ uint8_t compute_srs_resource_indicator(NR_UplinkConfig_t *uplinkConfig,
nr_srs_feedback_t *srs_feedback, nr_srs_feedback_t *srs_feedback,
uint16_t *val); uint16_t *val);
uint8_t compute_precoding_information(NR_PUSCH_Config_t *pusch_Config,
NR_SRS_Config_t *srs_config,
dci_field_t srs_resource_indicator,
nr_srs_feedback_t *srs_feedback,
const uint8_t *nrOfLayers,
uint16_t *val);
uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDLBWP, uint16_t nr_dci_size(const NR_BWP_DownlinkCommon_t *initialDLBWP,
const NR_BWP_UplinkCommon_t *initialULBWP, const NR_BWP_UplinkCommon_t *initialULBWP,
const NR_CellGroupConfig_t *cg, const NR_CellGroupConfig_t *cg,
......
...@@ -1080,16 +1080,17 @@ void config_uldci(const NR_SIB1_t *sib1, ...@@ -1080,16 +1080,17 @@ void config_uldci(const NR_SIB1_t *sib1,
uplinkConfig = cg->spCellConfig->spCellConfigDedicated->uplinkConfig; uplinkConfig = cg->spCellConfig->spCellConfigDedicated->uplinkConfig;
} }
compute_srs_resource_indicator(uplinkConfig, compute_srs_resource_indicator(uplinkConfig,
ubwpd->pusch_Config ? ubwpd->pusch_Config->choice.setup : NULL, ubwpd2->pusch_Config ? ubwpd2->pusch_Config->choice.setup : NULL,
ubwpd2 && ubwpd2->srs_Config ? ubwpd->srs_Config->choice.setup : NULL, ubwpd2 && ubwpd2->srs_Config ? ubwpd2->srs_Config->choice.setup : NULL,
srs_feedback, srs_feedback,
&dci_pdu_rel15->srs_resource_indicator.val); &dci_pdu_rel15->srs_resource_indicator.val);
} }
dci_pdu_rel15->precoding_information.val= 0; compute_precoding_information(ubwpd2->pusch_Config ? ubwpd2->pusch_Config->choice.setup : NULL,
if (pusch_pdu->nrOfLayers == 2) ubwpd2 && ubwpd2->srs_Config ? ubwpd2->srs_Config->choice.setup : NULL,
dci_pdu_rel15->precoding_information.val = 4; dci_pdu_rel15->srs_resource_indicator,
else if (pusch_pdu->nrOfLayers == 4) srs_feedback,
dci_pdu_rel15->precoding_information.val = 11; &pusch_pdu->nrOfLayers,
&dci_pdu_rel15->precoding_information.val);
// antenna_ports.val = 0 for transform precoder is disabled, dmrs-Type=1, maxLength=1, Rank=1/2/3/4 // antenna_ports.val = 0 for transform precoder is disabled, dmrs-Type=1, maxLength=1, Rank=1/2/3/4
// Antenna Ports // Antenna Ports
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment