|
|
|
@@ -116,6 +116,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
tag->tag_Id = 0;
|
|
|
|
|
tag->timeAlignmentTimer = NR_TimeAlignmentTimer_infinity;
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->mac_CellGroupConfig->tag_Config->tag_ToAddModList->list,tag);
|
|
|
|
|
#if 1
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config = calloc(1,sizeof(*secondaryCellGroup->mac_CellGroupConfig->phr_Config));
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config->present = NR_SetupRelease_PHR_Config_PR_setup;
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config->choice.setup = calloc(1,sizeof(*secondaryCellGroup->mac_CellGroupConfig->phr_Config->choice.setup));
|
|
|
|
@@ -126,6 +127,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config->choice.setup->dummy=false;
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config->choice.setup->phr_Type2OtherCell = false;
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->phr_Config->choice.setup->phr_ModeOtherCG = NR_PHR_Config__phr_ModeOtherCG_real;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->skipUplinkTxDynamic=false;
|
|
|
|
|
secondaryCellGroup->mac_CellGroupConfig->ext1 = NULL;
|
|
|
|
@@ -150,7 +152,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
*secondaryCellGroup->spCellConfig->servCellIndex = servCellIndex;
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->reconfigurationWithSync));
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->spCellConfigCommon=servingcellconfigcommon;
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->newUE_Identity=(get_softmodem_params()->phy_test==1) ? 0x1234 : (taus()&0xffff);
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->newUE_Identity=(get_softmodem_params()->phy_test==1) ? 0x1234 : 0x3456; //(taus()&0xffff);
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->t304=NR_ReconfigurationWithSync__t304_ms2000;
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->rach_ConfigDedicated = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->reconfigurationWithSync->ext1 = NULL;
|
|
|
|
@@ -189,7 +191,11 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition));
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = NR_DMRS_DownlinkConfig__dmrs_AdditionalPosition_pos0;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = NULL;
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->tci_StatesToAddModList=NULL;
|
|
|
|
|
|
|
|
|
|
#if 0
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->tci_StatesToAddModList=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->tci_StatesToAddModList));
|
|
|
|
|
|
|
|
|
|
NR_TCI_State_t*tci0=calloc(1,sizeof(*tci0));
|
|
|
|
@@ -351,6 +357,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
tci15->qcl_Type1.referenceSignal.choice.ssb = 7;
|
|
|
|
|
tci15->qcl_Type1.qcl_Type=NR_QCL_Info__qcl_Type_typeC;
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->tci_StatesToAddModList->list,tci15);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->tci_StatesToReleaseList=NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->vrb_ToPRB_Interleaver=NULL;
|
|
|
|
@@ -379,6 +386,8 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->pdsch_Config->choice.setup->p_ZP_CSI_RS_ResourceSet=NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->sps_Config = NULL; //calloc(1,sizeof(struct NR_SetupRelease_SPS_Config));
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig = NULL;
|
|
|
|
|
#if 0
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig));
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig->present = NR_SetupRelease_RadioLinkMonitoringConfig_PR_setup;
|
|
|
|
|
|
|
|
|
@@ -389,8 +398,10 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig->choice.setup->beamFailureInstanceMaxCount = NR_RadioLinkMonitoringConfig__beamFailureInstanceMaxCount_n3;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer));
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->initialDownlinkBWP->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer = NR_RadioLinkMonitoringConfig__beamFailureDetectionTimer_pbfd2;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToReleaseList= NULL;
|
|
|
|
|
// secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList));
|
|
|
|
|
|
|
|
|
|
NR_BWP_Downlink_t *bwp=calloc(1,sizeof(*bwp));
|
|
|
|
@@ -400,6 +411,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
memcpy((void*)&bwp->bwp_Common->genericParameters,
|
|
|
|
|
&servingcellconfigcommon->downlinkConfigCommon->initialDownlinkBWP->genericParameters,
|
|
|
|
|
sizeof(bwp->bwp_Common->genericParameters));
|
|
|
|
|
bwp->bwp_Common->genericParameters.locationAndBandwidth=6407; //PRBalloc_to_locationandbandwidth(servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth,0);
|
|
|
|
|
bwp->bwp_Common->genericParameters.locationAndBandwidth=PRBalloc_to_locationandbandwidth(servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth,0);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -453,7 +465,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->buf = calloc(1,2);
|
|
|
|
|
// should be '1100 0000 0000 00'B (LSB first!), first two symols in slot, adjust if needed
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->buf[1] = 0;
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->buf[0] = (1<<7) | (1<<6);
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->buf[0] = (1<<7); // | (1<<6);
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->size = 2;
|
|
|
|
|
ss->monitoringSymbolsWithinSlot->bits_unused = 2;
|
|
|
|
|
ss->nrofCandidates = calloc(1,sizeof(*ss->nrofCandidates));
|
|
|
|
@@ -476,6 +488,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
bwp->bwp_Common->pdcch_ConfigCommon->choice.setup->ra_SearchSpace=calloc(1,sizeof(*bwp->bwp_Common->pdcch_ConfigCommon->choice.setup->ra_SearchSpace));
|
|
|
|
|
*bwp->bwp_Common->pdcch_ConfigCommon->choice.setup->ra_SearchSpace=1;
|
|
|
|
|
bwp->bwp_Common->pdcch_ConfigCommon->choice.setup->ext1=NULL;
|
|
|
|
|
//bwp->bwp_Common->pdcch_ConfigCommon=NULL;
|
|
|
|
|
|
|
|
|
|
bwp->bwp_Common->pdsch_ConfigCommon=calloc(1,sizeof(*bwp->bwp_Common->pdsch_ConfigCommon));
|
|
|
|
|
bwp->bwp_Common->pdsch_ConfigCommon->present = NR_SetupRelease_PDSCH_ConfigCommon_PR_setup;
|
|
|
|
@@ -521,7 +534,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->buf = calloc(1,2);
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->size = 2;
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->bits_unused = 2;
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->buf[0]=0xc0;
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->buf[0]=0x80; //0xc0;
|
|
|
|
|
ss2->monitoringSymbolsWithinSlot->buf[1]=0x0;
|
|
|
|
|
ss2->nrofCandidates=calloc(1,sizeof(*ss2->nrofCandidates));
|
|
|
|
|
ss2->nrofCandidates->aggregationLevel1 = NR_SearchSpace__nrofCandidates__aggregationLevel1_n0;
|
|
|
|
@@ -557,7 +570,10 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = calloc(1,sizeof(*bwp->bwp_Dedicated->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition));
|
|
|
|
|
*bwp->bwp_Dedicated->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = NR_DMRS_DownlinkConfig__dmrs_AdditionalPosition_pos0;
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->dmrs_DownlinkForPDSCH_MappingTypeA->choice.setup->dmrs_AdditionalPosition = NULL;
|
|
|
|
|
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->tci_StatesToAddModList=NULL;
|
|
|
|
|
#if 0
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->tci_StatesToAddModList=calloc(1,sizeof(*bwp->bwp_Dedicated->pdsch_Config->choice.setup->tci_StatesToAddModList));
|
|
|
|
|
|
|
|
|
|
NR_TCI_State_t*tcid0=calloc(1,sizeof(*tcid0));
|
|
|
|
@@ -719,6 +735,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
tcid15->qcl_Type1.referenceSignal.choice.ssb = 7;
|
|
|
|
|
tcid15->qcl_Type1.qcl_Type=NR_QCL_Info__qcl_Type_typeC;
|
|
|
|
|
ASN_SEQUENCE_ADD(&bwp->bwp_Dedicated->pdsch_Config->choice.setup->tci_StatesToAddModList->list,tcid15);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->tci_StatesToReleaseList=NULL;
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->vrb_ToPRB_Interleaver=NULL;
|
|
|
|
@@ -773,6 +790,8 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
bwp->bwp_Dedicated->pdsch_Config->choice.setup->p_ZP_CSI_RS_ResourceSet=NULL;
|
|
|
|
|
bwp->bwp_Dedicated->sps_Config = NULL; //calloc(1,sizeof(struct NR_SetupRelease_SPS_Config));
|
|
|
|
|
|
|
|
|
|
bwp->bwp_Dedicated->radioLinkMonitoringConfig = NULL;
|
|
|
|
|
#if 0
|
|
|
|
|
bwp->bwp_Dedicated->radioLinkMonitoringConfig = calloc(1,sizeof(*bwp->bwp_Dedicated->radioLinkMonitoringConfig));
|
|
|
|
|
bwp->bwp_Dedicated->radioLinkMonitoringConfig->present = NR_SetupRelease_RadioLinkMonitoringConfig_PR_setup;
|
|
|
|
|
|
|
|
|
@@ -783,14 +802,17 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
*bwp->bwp_Dedicated->radioLinkMonitoringConfig->choice.setup->beamFailureInstanceMaxCount = NR_RadioLinkMonitoringConfig__beamFailureInstanceMaxCount_n3;
|
|
|
|
|
bwp->bwp_Dedicated->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer = calloc(1,sizeof(*bwp->bwp_Dedicated->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer));
|
|
|
|
|
*bwp->bwp_Dedicated->radioLinkMonitoringConfig->choice.setup->beamFailureDetectionTimer = NR_RadioLinkMonitoringConfig__beamFailureDetectionTimer_pbfd2;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list,bwp);
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list,bwp);
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id));
|
|
|
|
|
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id=1;
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id=1; //0; //1;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->bwp_InactivityTimer = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->defaultDownlinkBWP_Id = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->defaultDownlinkBWP_Id = calloc(1, sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->defaultDownlinkBWP_Id));
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->defaultDownlinkBWP_Id = 1;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig));
|
|
|
|
|
|
|
|
|
|
NR_BWP_UplinkDedicated_t *initialUplinkBWP = calloc(1,sizeof(*initialUplinkBWP));
|
|
|
|
@@ -913,6 +935,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&srs_Config->srs_ResourceToAddModList->list,srs_res0);
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToReleaseList = NULL;
|
|
|
|
|
// secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList));
|
|
|
|
|
NR_BWP_Uplink_t *ubwp = calloc(1,sizeof(*ubwp));
|
|
|
|
|
ubwp->bwp_Id=1;
|
|
|
|
@@ -921,8 +944,10 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
memcpy((void*)&ubwp->bwp_Common->genericParameters,
|
|
|
|
|
(void*)&servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->genericParameters,
|
|
|
|
|
sizeof(servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->genericParameters));
|
|
|
|
|
ubwp->bwp_Common->genericParameters.locationAndBandwidth=6407; //PRBalloc_to_locationandbandwidth(servingcellconfigcommon->uplinkConfigCommon->frequencyInfoUL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth,0);
|
|
|
|
|
ubwp->bwp_Common->genericParameters.locationAndBandwidth=PRBalloc_to_locationandbandwidth(servingcellconfigcommon->uplinkConfigCommon->frequencyInfoUL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth,0);
|
|
|
|
|
|
|
|
|
|
servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->restrictedSetConfig = 0;
|
|
|
|
|
ubwp->bwp_Common->rach_ConfigCommon = servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon;
|
|
|
|
|
ubwp->bwp_Common->pusch_ConfigCommon = servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->pusch_ConfigCommon;
|
|
|
|
|
ubwp->bwp_Common->pucch_ConfigCommon = servingcellconfigcommon->uplinkConfigCommon->initialUplinkBWP->pucch_ConfigCommon;
|
|
|
|
@@ -1074,10 +1099,10 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
|
|
|
|
|
ubwp->bwp_Dedicated->beamFailureRecoveryConfig = NULL;
|
|
|
|
|
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList->list,ubwp);
|
|
|
|
|
ASN_SEQUENCE_ADD(&secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->uplinkBWP_ToAddModList->list,ubwp);
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->firstActiveUplinkBWP_Id = calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->firstActiveUplinkBWP_Id));
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->firstActiveUplinkBWP_Id = 1;
|
|
|
|
|
*secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->firstActiveUplinkBWP_Id = 1; //0; //1;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->pusch_ServingCellConfig = NULL;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->uplinkConfig->carrierSwitching = NULL;
|
|
|
|
|
|
|
|
|
@@ -1085,10 +1110,14 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdcch_ServingCellConfig=NULL;
|
|
|
|
|
|
|
|
|
|
#if 0
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdsch_ServingCellConfig=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdsch_ServingCellConfig));
|
|
|
|
|
NR_PDSCH_ServingCellConfig_t *pdsch_servingcellconfig = calloc(1,sizeof(*pdsch_servingcellconfig));
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdsch_ServingCellConfig->present = NR_SetupRelease_PDSCH_ServingCellConfig_PR_setup;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdsch_ServingCellConfig->choice.setup = pdsch_servingcellconfig;
|
|
|
|
|
#endif
|
|
|
|
|
NR_PDSCH_ServingCellConfig_t *pdsch_servingcellconfig = calloc(1,sizeof(*pdsch_servingcellconfig));
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->pdsch_ServingCellConfig=NULL;
|
|
|
|
|
pdsch_servingcellconfig->codeBlockGroupTransmission = NULL;
|
|
|
|
|
pdsch_servingcellconfig->xOverhead = NULL;
|
|
|
|
|
pdsch_servingcellconfig->nrofHARQ_ProcessesForPDSCH = NULL;
|
|
|
|
@@ -1098,12 +1127,13 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
*pdsch_servingcellconfig->ext1->maxMIMO_Layers = 2;
|
|
|
|
|
pdsch_servingcellconfig->ext1->processingType2Enabled = NULL;
|
|
|
|
|
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig));
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig->present = NR_SetupRelease_CSI_MeasConfig_PR_setup;
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig=NULL;
|
|
|
|
|
//secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig=calloc(1,sizeof(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig));
|
|
|
|
|
//secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig->present = NR_SetupRelease_CSI_MeasConfig_PR_setup;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
NR_CSI_MeasConfig_t *csi_MeasConfig = calloc(1,sizeof(*csi_MeasConfig));
|
|
|
|
|
secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig->choice.setup = csi_MeasConfig;
|
|
|
|
|
// secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig->choice.setup = csi_MeasConfig;
|
|
|
|
|
csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList = calloc(1,sizeof(*csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList));
|
|
|
|
|
|
|
|
|
|
NR_NZP_CSI_RS_Resource_t *nzpres0 = calloc(1,sizeof(*nzpres0));
|
|
|
|
@@ -1643,7 +1673,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
imres0->csi_IM_ResourceElementPattern->choice.pattern1->symbolLocation_p1=7;
|
|
|
|
|
imres0->freqBand=calloc(1,sizeof(*imres0->freqBand));
|
|
|
|
|
imres0->freqBand->startingRB=0;
|
|
|
|
|
imres0->freqBand->nrofRBs=276;
|
|
|
|
|
imres0->freqBand->nrofRBs=106;
|
|
|
|
|
imres0->periodicityAndOffset=calloc(1,sizeof(*imres0->periodicityAndOffset));
|
|
|
|
|
imres0->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots320;
|
|
|
|
|
imres0->periodicityAndOffset->choice.slots320 = 2;
|
|
|
|
@@ -1717,7 +1747,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires11->csi_RS_ResourceSetList.choice.csi_IM_ResourceSetList->list,csires110);
|
|
|
|
|
csires11->bwp_Id = 1;
|
|
|
|
|
csires11->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires11);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires11);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires10 = calloc(1,sizeof(*csires10));
|
|
|
|
|
csires10->csi_ResourceConfigId=10;
|
|
|
|
@@ -1730,7 +1760,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires100);
|
|
|
|
|
csires10->bwp_Id = 1;
|
|
|
|
|
csires10->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires10);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires10);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires2 = calloc(1,sizeof(*csires2));
|
|
|
|
|
csires2->csi_ResourceConfigId=2;
|
|
|
|
@@ -1743,7 +1773,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires20);
|
|
|
|
|
csires2->bwp_Id = 1;
|
|
|
|
|
csires2->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires2);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires2);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires3 = calloc(1,sizeof(*csires3));
|
|
|
|
|
csires3->csi_ResourceConfigId=3;
|
|
|
|
@@ -1756,7 +1786,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires30);
|
|
|
|
|
csires3->bwp_Id = 1;
|
|
|
|
|
csires3->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires3);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires3);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires4 = calloc(1,sizeof(*csires4));
|
|
|
|
|
csires4->csi_ResourceConfigId=4;
|
|
|
|
@@ -1769,7 +1799,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires40);
|
|
|
|
|
csires4->bwp_Id = 1;
|
|
|
|
|
csires4->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires4);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires4);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires5 = calloc(1,sizeof(*csires5));
|
|
|
|
|
csires5->csi_ResourceConfigId=5;
|
|
|
|
@@ -1782,7 +1812,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires50);
|
|
|
|
|
csires5->bwp_Id = 1;
|
|
|
|
|
csires5->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires5);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires5);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires6 = calloc(1,sizeof(*csires6));
|
|
|
|
|
csires6->csi_ResourceConfigId=6;
|
|
|
|
@@ -1795,7 +1825,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires60);
|
|
|
|
|
csires6->bwp_Id = 1;
|
|
|
|
|
csires6->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires6);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires6);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires7 = calloc(1,sizeof(*csires7));
|
|
|
|
|
csires7->csi_ResourceConfigId=7;
|
|
|
|
@@ -1808,7 +1838,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires70);
|
|
|
|
|
csires7->bwp_Id = 1;
|
|
|
|
|
csires7->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires7);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires7);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires8 = calloc(1,sizeof(*csires8));
|
|
|
|
|
csires8->csi_ResourceConfigId=8;
|
|
|
|
@@ -1821,7 +1851,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires80);
|
|
|
|
|
csires8->bwp_Id = 1;
|
|
|
|
|
csires8->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires8);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires8);
|
|
|
|
|
|
|
|
|
|
NR_CSI_ResourceConfig_t *csires9 = calloc(1,sizeof(*csires9));
|
|
|
|
|
csires9->csi_ResourceConfigId=9;
|
|
|
|
@@ -1834,7 +1864,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
ASN_SEQUENCE_ADD(&csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires90);
|
|
|
|
|
csires9->bwp_Id = 1;
|
|
|
|
|
csires9->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
|
|
|
|
|
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires9);
|
|
|
|
|
//ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires9);
|
|
|
|
|
|
|
|
|
|
csi_MeasConfig->csi_ReportConfigToAddModList = calloc(1,sizeof(*csi_MeasConfig->csi_ReportConfigToAddModList));
|
|
|
|
|
csi_MeasConfig->csi_ReportConfigToReleaseList = NULL;
|
|
|
|
@@ -1862,8 +1892,9 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
|
|
|
|
|
csirep0->reportFreqConfiguration->csi_ReportingBand=calloc(1,sizeof(*csirep0->reportFreqConfiguration->csi_ReportingBand));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AssertFatal(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id>0,"firstActiveDownlinkBWP_Id %d\n",(int)*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id);
|
|
|
|
|
//AssertFatal(*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id>0,"firstActiveDownlinkBWP_Id %d\n",(int)*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id);
|
|
|
|
|
int NPRB = NRRIV2BW(secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.array[*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id-1]->bwp_Common->genericParameters.locationAndBandwidth,275);
|
|
|
|
|
//int NPRB = NRRIV2BW(28875,275);
|
|
|
|
|
int sbsize = get_subband_size(NPRB,0);
|
|
|
|
|
int numsb = NPRB/sbsize;
|
|
|
|
|
if (NPRB%sbsize == 0) numsb++;
|
|
|
|
@@ -1992,12 +2023,22 @@ void fill_default_reconfig(NR_ServingCellConfigCommon_t *servingcellconfigcommon
|
|
|
|
|
// radioBearerConfig
|
|
|
|
|
reconfig->radioBearerConfig=NULL;
|
|
|
|
|
// secondaryCellGroup
|
|
|
|
|
fill_default_secondaryCellGroup(servingcellconfigcommon,secondaryCellGroup,0,0,n_physical_antenna_ports,initial_csi_index);
|
|
|
|
|
#if 0
|
|
|
|
|
NR_ServingCellConfigCommon_t z = *servingcellconfigcommon;
|
|
|
|
|
NR_ARFCN_ValueNR_t ssb_freq = 641272; //642208; //642208 is for SSB position = ptA + 82 RBs with ptA at 3600MHz //642256; //642016; //642256;
|
|
|
|
|
z.downlinkConfigCommon->frequencyInfoDL->absoluteFrequencySSB = &ssb_freq;
|
|
|
|
|
fill_default_secondaryCellGroup(&z,secondaryCellGroup,1,1,n_physical_antenna_ports,initial_csi_index);
|
|
|
|
|
#else
|
|
|
|
|
fill_default_secondaryCellGroup(servingcellconfigcommon,secondaryCellGroup,1,1,n_physical_antenna_ports,initial_csi_index);
|
|
|
|
|
#endif
|
|
|
|
|
xer_fprint(stdout, &asn_DEF_NR_CellGroupConfig, (const void*)secondaryCellGroup);
|
|
|
|
|
|
|
|
|
|
//void *x = secondaryCellGroup->spCellConfig->reconfigurationWithSync->spCellConfigCommon->tdd_UL_DL_ConfigurationCommon;
|
|
|
|
|
//secondaryCellGroup->spCellConfig->reconfigurationWithSync->spCellConfigCommon->tdd_UL_DL_ConfigurationCommon = NULL;
|
|
|
|
|
char scg_buffer[1024];
|
|
|
|
|
asn_enc_rval_t enc_rval = uper_encode_to_buffer(&asn_DEF_NR_CellGroupConfig, NULL, (void *)secondaryCellGroup, scg_buffer, 1024);
|
|
|
|
|
AssertFatal (enc_rval.encoded > 0, "ASN1 message encoding failed (%s, %jd)!\n", enc_rval.failed_type->name, enc_rval.encoded);
|
|
|
|
|
//secondaryCellGroup->spCellConfig->reconfigurationWithSync->spCellConfigCommon->tdd_UL_DL_ConfigurationCommon = x;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
reconfig->secondaryCellGroup = calloc(1,sizeof(*reconfig->secondaryCellGroup));
|
|
|
|
|