Commit 82d40a65 authored by dir's avatar dir Committed by Thomas Schlichter

Transform precoding related changes

parent bca9f74e
...@@ -2389,35 +2389,31 @@ uint8_t get_transformPrecoding(NR_ServingCellConfigCommon_t *scc, ...@@ -2389,35 +2389,31 @@ uint8_t get_transformPrecoding(NR_ServingCellConfigCommon_t *scc,
int rnti_type, int rnti_type,
uint8_t configuredGrant){ uint8_t configuredGrant){
uint8_t cg_transformPrecoder = 0;
if (configuredGrant) { if (configuredGrant) {
if (ubwp->bwp_Dedicated->configuredGrantConfig){ if (ubwp->bwp_Dedicated->configuredGrantConfig) {
if (ubwp->bwp_Dedicated->configuredGrantConfig->choice.setup->transformPrecoder){ if (ubwp->bwp_Dedicated->configuredGrantConfig->choice.setup->transformPrecoder) {
return *ubwp->bwp_Dedicated->configuredGrantConfig->choice.setup->transformPrecoder; return *ubwp->bwp_Dedicated->configuredGrantConfig->choice.setup->transformPrecoder;
} else {
cg_transformPrecoder = 1;
} }
} }
} }
if (rnti_type == NR_RNTI_RA || *dci_format == NR_UL_DCI_FORMAT_0_0 || cg_transformPrecoder){ if (rnti_type != NR_RNTI_RA) {
if (*dci_format != NR_UL_DCI_FORMAT_0_0) {
if (pusch_config->transformPrecoder != NULL) {
return *pusch_config->transformPrecoder;
}
}
}
if (scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg3_transformPrecoder == NULL) { if (scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg3_transformPrecoder == NULL) {
return 1; return 1; // Transformprecoding disabled
} else { } else {
return 0; LOG_D(PHY, "MAC_COMMON: Transform Precodig enabled through msg3_transformPrecoder\n");
} return 0; // Enabled
} else if (*dci_format != NR_UL_DCI_FORMAT_0_0 && pusch_config->transformPrecoder != NULL) {
return *pusch_config->transformPrecoder;
} }
LOG_E(MAC, "In %s: could not fetch transform precoder status...\n", __FUNCTION__); LOG_E(MAC, "In %s: could not fetch transform precoder status...\n", __FUNCTION__);
return -1; return -1;
} }
uint16_t nr_dci_size(NR_ServingCellConfigCommon_t *scc, uint16_t nr_dci_size(NR_ServingCellConfigCommon_t *scc,
......
...@@ -689,6 +689,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac, ...@@ -689,6 +689,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
/* DMRS */ /* DMRS */
l_prime_mask = get_l_prime(pusch_config_pdu->nr_of_symbols, typeB, pusch_dmrs_pos0, pusch_len1); l_prime_mask = get_l_prime(pusch_config_pdu->nr_of_symbols, typeB, pusch_dmrs_pos0, pusch_len1);
if (pusch_config_pdu->transform_precoding == transform_precoder_disabled)
pusch_config_pdu->num_dmrs_cdm_grps_no_data = 1; pusch_config_pdu->num_dmrs_cdm_grps_no_data = 1;
// Num PRB Overhead from PUSCH-ServingCellConfig // Num PRB Overhead from PUSCH-ServingCellConfig
......
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