Commit fa105bd4 authored by Francesco Mani's avatar Francesco Mani

reworking rrc config for csi meas report on ssb

parent 5607a10d
......@@ -846,12 +846,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
aset->alpha=calloc(1,sizeof(*aset->alpha));
*aset->alpha=NR_Alpha_alpha1;
ASN_SEQUENCE_ADD(&pusch_Config->pusch_PowerControl->p0_AlphaSets->list,aset);
pusch_Config->pusch_PowerControl->pathlossReferenceRSToAddModList = calloc(1,sizeof(*pusch_Config->pusch_PowerControl->pathlossReferenceRSToAddModList));
NR_PUSCH_PathlossReferenceRS_t *pl = calloc(1,sizeof(*pl));
pl->pusch_PathlossReferenceRS_Id=0;
pl->referenceSignal.present = NR_PUSCH_PathlossReferenceRS__referenceSignal_PR_csi_RS_Index;
pl->referenceSignal.choice.csi_RS_Index=0;
ASN_SEQUENCE_ADD(&pusch_Config->pusch_PowerControl->pathlossReferenceRSToAddModList->list,pl);
pusch_Config->pusch_PowerControl->pathlossReferenceRSToAddModList = NULL;
pusch_Config->pusch_PowerControl->pathlossReferenceRSToReleaseList = NULL;
pusch_Config->pusch_PowerControl->twoPUSCH_PC_AdjustmentStates = NULL;
pusch_Config->pusch_PowerControl->deltaMCS = NULL;
......@@ -1073,12 +1068,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
p00->p0_PUCCH_Id=1;
p00->p0_PUCCH_Value = 0;
ASN_SEQUENCE_ADD(&pucch_Config->pucch_PowerControl->p0_Set->list,p00);
pucch_Config->pucch_PowerControl->pathlossReferenceRSs = calloc(1,sizeof(*pucch_Config->pucch_PowerControl->pathlossReferenceRSs));
NR_PUCCH_PathlossReferenceRS_t *pucchPLRef=calloc(1,sizeof(*pucchPLRef));
pucchPLRef->pucch_PathlossReferenceRS_Id=0;
pucchPLRef->referenceSignal.present = NR_PUCCH_PathlossReferenceRS__referenceSignal_PR_csi_RS_Index;
pucchPLRef->referenceSignal.choice.csi_RS_Index=0;
ASN_SEQUENCE_ADD(&pucch_Config->pucch_PowerControl->pathlossReferenceRSs->list,pucchPLRef);
pucch_Config->pucch_PowerControl->pathlossReferenceRSs = NULL;
// copy pusch_Config from dedicated initialBWP
ubwp->bwp_Dedicated->pusch_Config = calloc(1,sizeof(*ubwp->bwp_Dedicated->pusch_Config));
......@@ -1129,565 +1119,20 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
pdsch_servingcellconfig->ext1->processingType2Enabled = NULL;
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;
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;
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));
nzpres0->nzp_CSI_RS_ResourceId=0;
nzpres0->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_other;
nzpres0->resourceMapping.frequencyDomainAllocation.choice.other.buf = calloc(1,1);
nzpres0->resourceMapping.frequencyDomainAllocation.choice.other.size = 1;
nzpres0->resourceMapping.frequencyDomainAllocation.choice.other.bits_unused = 2;
nzpres0->resourceMapping.frequencyDomainAllocation.choice.other.buf[0]=1<<2;
nzpres0->resourceMapping.nrofPorts = (n_physical_antenna_ports==1)? NR_CSI_RS_ResourceMapping__nrofPorts_p1 : NR_CSI_RS_ResourceMapping__nrofPorts_p2;
nzpres0->resourceMapping.firstOFDMSymbolInTimeDomain=7;
nzpres0->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres0->resourceMapping.cdm_Type = (n_physical_antenna_ports==1)? NR_CSI_RS_ResourceMapping__cdm_Type_noCDM : NR_CSI_RS_ResourceMapping__cdm_Type_fd_CDM2;
nzpres0->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_one;
nzpres0->resourceMapping.density.choice.one=(NULL_t)0;
nzpres0->resourceMapping.freqBand.startingRB=0;
nzpres0->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres0->powerControlOffset=13;
nzpres0->powerControlOffsetSS=NULL;
nzpres0->scramblingID=40;
nzpres0->periodicityAndOffset = calloc(1,sizeof(*nzpres0->periodicityAndOffset));
nzpres0->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots320;
nzpres0->periodicityAndOffset->choice.slots320 = 2;
nzpres0->qcl_InfoPeriodicCSI_RS=NULL;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres0);
if (n_physical_antenna_ports > 1) {
NR_NZP_CSI_RS_Resource_t *nzpres2 = calloc(1,sizeof(*nzpres2));
nzpres2->nzp_CSI_RS_ResourceId=2;
nzpres2->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres2->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres2->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres2->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres2->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=1;
nzpres2->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres2->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres2->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres2->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres2->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres2->resourceMapping.density.choice.three=(NULL_t)0;
nzpres2->resourceMapping.freqBand.startingRB=0;
nzpres2->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres2->powerControlOffset=0;
nzpres2->powerControlOffsetSS=calloc(1,sizeof(*nzpres2->powerControlOffsetSS));
*nzpres2->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres2->scramblingID=40;
nzpres2->periodicityAndOffset = calloc(1,sizeof(*nzpres2->periodicityAndOffset));
nzpres2->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres2->periodicityAndOffset->choice.slots160 = 25;
nzpres2->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres2->qcl_InfoPeriodicCSI_RS));
*nzpres2->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres2);
NR_NZP_CSI_RS_Resource_t *nzpres3 = calloc(1,sizeof(*nzpres3));
nzpres3->nzp_CSI_RS_ResourceId=3;
nzpres3->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres3->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres3->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres3->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres3->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=1;
nzpres3->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres3->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres3->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres3->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres3->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres3->resourceMapping.density.choice.three=(NULL_t)0;
nzpres3->resourceMapping.freqBand.startingRB=0;
nzpres3->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres3->powerControlOffset=0;
nzpres3->powerControlOffsetSS=calloc(1,sizeof(*nzpres3->powerControlOffsetSS));
*nzpres3->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres3->scramblingID=40;
nzpres3->periodicityAndOffset = calloc(1,sizeof(*nzpres3->periodicityAndOffset));
nzpres3->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres3->periodicityAndOffset->choice.slots160 = 25;
nzpres3->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres3->qcl_InfoPeriodicCSI_RS));
*nzpres3->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres3);
}
if (n_physical_antenna_ports > 3) {
NR_NZP_CSI_RS_Resource_t *nzpres4 = calloc(1,sizeof(*nzpres4));
nzpres4->nzp_CSI_RS_ResourceId=4;
nzpres4->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres4->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres4->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres4->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres4->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=1;
nzpres4->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres4->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres4->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres4->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres4->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres4->resourceMapping.density.choice.three=(NULL_t)0;
nzpres4->resourceMapping.freqBand.startingRB=0;
nzpres4->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres4->powerControlOffset=0;
nzpres4->powerControlOffsetSS=calloc(1,sizeof(*nzpres4->powerControlOffsetSS));
*nzpres4->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres4->scramblingID=40;
nzpres4->periodicityAndOffset = calloc(1,sizeof(*nzpres4->periodicityAndOffset));
nzpres4->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres4->periodicityAndOffset->choice.slots160 = 26;
nzpres4->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres4->qcl_InfoPeriodicCSI_RS));
*nzpres4->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres4);
NR_NZP_CSI_RS_Resource_t *nzpres5 = calloc(1,sizeof(*nzpres5));
nzpres5->nzp_CSI_RS_ResourceId=5;
nzpres5->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres5->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres5->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres5->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres5->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=1;
nzpres5->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres5->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres5->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres5->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres5->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres5->resourceMapping.density.choice.three=(NULL_t)0;
nzpres5->resourceMapping.freqBand.startingRB=0;
nzpres5->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres5->powerControlOffset=0;
nzpres5->powerControlOffsetSS=calloc(1,sizeof(*nzpres5->powerControlOffsetSS));
*nzpres5->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres5->scramblingID=40;
nzpres5->periodicityAndOffset = calloc(1,sizeof(*nzpres5->periodicityAndOffset));
nzpres5->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres5->periodicityAndOffset->choice.slots160 = 26;
nzpres5->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres5->qcl_InfoPeriodicCSI_RS));
*nzpres5->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres5);
}
if (n_physical_antenna_ports > 7) {
NR_NZP_CSI_RS_Resource_t *nzpres6 = calloc(1,sizeof(*nzpres6));
nzpres6->nzp_CSI_RS_ResourceId=6;
nzpres6->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres6->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres6->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres6->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres6->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=4;
nzpres6->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres6->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres6->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres6->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres6->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres6->resourceMapping.density.choice.three=(NULL_t)0;
nzpres6->resourceMapping.freqBand.startingRB=0;
nzpres6->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres6->powerControlOffset=0;
nzpres6->powerControlOffsetSS=calloc(1,sizeof(*nzpres6->powerControlOffsetSS));
*nzpres6->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres6->scramblingID=40;
nzpres6->periodicityAndOffset = calloc(1,sizeof(*nzpres6->periodicityAndOffset));
nzpres6->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres6->periodicityAndOffset->choice.slots160 = 25;
nzpres6->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres6->qcl_InfoPeriodicCSI_RS));
*nzpres6->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres6);
NR_NZP_CSI_RS_Resource_t *nzpres7 = calloc(1,sizeof(*nzpres7));
nzpres7->nzp_CSI_RS_ResourceId=7;
nzpres7->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres7->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres7->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres7->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres7->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=4;
nzpres7->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres7->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres7->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres7->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres7->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres7->resourceMapping.density.choice.three=(NULL_t)0;
nzpres7->resourceMapping.freqBand.startingRB=0;
nzpres7->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres7->powerControlOffset=0;
nzpres7->powerControlOffsetSS=calloc(1,sizeof(*nzpres7->powerControlOffsetSS));
*nzpres7->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres7->scramblingID=40;
nzpres7->periodicityAndOffset = calloc(1,sizeof(*nzpres7->periodicityAndOffset));
nzpres7->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres7->periodicityAndOffset->choice.slots160 = 25;
nzpres7->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres7->qcl_InfoPeriodicCSI_RS));
*nzpres7->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres7);
NR_NZP_CSI_RS_Resource_t *nzpres8 = calloc(1,sizeof(*nzpres8));
nzpres8->nzp_CSI_RS_ResourceId=8;
nzpres8->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres8->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres8->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres8->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres8->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=4;
nzpres8->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres8->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres8->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres8->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres8->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres8->resourceMapping.density.choice.three=(NULL_t)0;
nzpres8->resourceMapping.freqBand.startingRB=0;
nzpres8->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres8->powerControlOffset=0;
nzpres8->powerControlOffsetSS=calloc(1,sizeof(*nzpres8->powerControlOffsetSS));
*nzpres8->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres8->scramblingID=40;
nzpres8->periodicityAndOffset = calloc(1,sizeof(*nzpres8->periodicityAndOffset));
nzpres8->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres8->periodicityAndOffset->choice.slots160 = 26;
nzpres8->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres8->qcl_InfoPeriodicCSI_RS));
*nzpres8->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres8);
NR_NZP_CSI_RS_Resource_t *nzpres9 = calloc(1,sizeof(*nzpres9));
nzpres9->nzp_CSI_RS_ResourceId=9;
nzpres9->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres9->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres9->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres9->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres9->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=4;
nzpres9->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres9->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres9->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres9->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres9->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres9->resourceMapping.density.choice.three=(NULL_t)0;
nzpres9->resourceMapping.freqBand.startingRB=0;
nzpres9->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres9->powerControlOffset=0;
nzpres9->powerControlOffsetSS=calloc(1,sizeof(*nzpres9->powerControlOffsetSS));
*nzpres9->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres9->scramblingID=40;
nzpres9->periodicityAndOffset = calloc(1,sizeof(*nzpres9->periodicityAndOffset));
nzpres9->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres9->periodicityAndOffset->choice.slots160 = 26;
nzpres9->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres9->qcl_InfoPeriodicCSI_RS));
*nzpres9->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres9);
}
if (n_physical_antenna_ports > 15) {
NR_NZP_CSI_RS_Resource_t *nzpres10 = calloc(1,sizeof(*nzpres10));
nzpres10->nzp_CSI_RS_ResourceId=10;
nzpres10->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres10->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres10->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres10->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres10->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=2;
nzpres10->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres10->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres10->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres10->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres10->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres10->resourceMapping.density.choice.three=(NULL_t)0;
nzpres10->resourceMapping.freqBand.startingRB=0;
nzpres10->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres10->powerControlOffset=0;
nzpres10->powerControlOffsetSS=calloc(1,sizeof(*nzpres10->powerControlOffsetSS));
*nzpres10->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres10->scramblingID=40;
nzpres10->periodicityAndOffset = calloc(1,sizeof(*nzpres10->periodicityAndOffset));
nzpres10->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres10->periodicityAndOffset->choice.slots160 = 25;
nzpres10->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres10->qcl_InfoPeriodicCSI_RS));
*nzpres10->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres10);
NR_NZP_CSI_RS_Resource_t *nzpres11 = calloc(1,sizeof(*nzpres11));
nzpres11->nzp_CSI_RS_ResourceId=11;
nzpres11->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres11->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres11->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres11->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres11->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=2;
nzpres11->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres11->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres11->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres11->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres11->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres11->resourceMapping.density.choice.three=(NULL_t)0;
nzpres11->resourceMapping.freqBand.startingRB=0;
nzpres11->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres11->powerControlOffset=0;
nzpres11->powerControlOffsetSS=calloc(1,sizeof(*nzpres11->powerControlOffsetSS));
*nzpres11->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres11->scramblingID=40;
nzpres11->periodicityAndOffset = calloc(1,sizeof(*nzpres11->periodicityAndOffset));
nzpres11->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres11->periodicityAndOffset->choice.slots160 = 25;
nzpres11->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres11->qcl_InfoPeriodicCSI_RS));
*nzpres11->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres11);
NR_NZP_CSI_RS_Resource_t *nzpres12 = calloc(1,sizeof(*nzpres12));
nzpres12->nzp_CSI_RS_ResourceId=12;
nzpres12->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres12->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres12->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres12->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres12->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=2;
nzpres12->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres12->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres12->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres12->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres12->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres12->resourceMapping.density.choice.three=(NULL_t)0;
nzpres12->resourceMapping.freqBand.startingRB=0;
nzpres12->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres12->powerControlOffset=0;
nzpres12->powerControlOffsetSS=calloc(1,sizeof(*nzpres12->powerControlOffsetSS));
*nzpres12->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres12->scramblingID=40;
nzpres12->periodicityAndOffset = calloc(1,sizeof(*nzpres12->periodicityAndOffset));
nzpres12->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres12->periodicityAndOffset->choice.slots160 = 26;
nzpres12->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres12->qcl_InfoPeriodicCSI_RS));
*nzpres12->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres12);
NR_NZP_CSI_RS_Resource_t *nzpres13 = calloc(1,sizeof(*nzpres13));
nzpres13->nzp_CSI_RS_ResourceId=13;
nzpres13->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres13->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres13->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres13->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres13->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=2;
nzpres13->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres13->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres13->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres13->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres13->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres13->resourceMapping.density.choice.three=(NULL_t)0;
nzpres13->resourceMapping.freqBand.startingRB=0;
nzpres13->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres13->powerControlOffset=0;
nzpres13->powerControlOffsetSS=calloc(1,sizeof(*nzpres13->powerControlOffsetSS));
*nzpres13->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres13->scramblingID=40;
nzpres13->periodicityAndOffset = calloc(1,sizeof(*nzpres13->periodicityAndOffset));
nzpres13->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres13->periodicityAndOffset->choice.slots160 = 26;
nzpres13->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres13->qcl_InfoPeriodicCSI_RS));
*nzpres13->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres13);
NR_NZP_CSI_RS_Resource_t *nzpres14 = calloc(1,sizeof(*nzpres14));
nzpres14->nzp_CSI_RS_ResourceId=14;
nzpres14->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres14->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres14->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres14->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres14->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=8;
nzpres14->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres14->resourceMapping.firstOFDMSymbolInTimeDomain=4;
nzpres14->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres14->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres14->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres14->resourceMapping.density.choice.three=(NULL_t)0;
nzpres14->resourceMapping.freqBand.startingRB=0;
nzpres14->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres14->powerControlOffset=0;
nzpres14->powerControlOffsetSS=calloc(1,sizeof(*nzpres14->powerControlOffsetSS));
*nzpres14->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres14->scramblingID=40;
nzpres14->periodicityAndOffset = calloc(1,sizeof(*nzpres14->periodicityAndOffset));
nzpres14->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres14->periodicityAndOffset->choice.slots160 = 25;
nzpres14->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres14->qcl_InfoPeriodicCSI_RS));
*nzpres14->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres14);
NR_NZP_CSI_RS_Resource_t *nzpres15 = calloc(1,sizeof(*nzpres15));
nzpres15->nzp_CSI_RS_ResourceId=15;
nzpres15->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres15->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres15->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres15->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres15->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=8;
nzpres15->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres15->resourceMapping.firstOFDMSymbolInTimeDomain=8;
nzpres15->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres15->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres15->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres15->resourceMapping.density.choice.three=(NULL_t)0;
nzpres15->resourceMapping.freqBand.startingRB=0;
nzpres15->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres15->powerControlOffset=0;
nzpres15->powerControlOffsetSS=calloc(1,sizeof(*nzpres15->powerControlOffsetSS));
*nzpres15->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres15->scramblingID=40;
nzpres15->periodicityAndOffset = calloc(1,sizeof(*nzpres15->periodicityAndOffset));
nzpres15->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres15->periodicityAndOffset->choice.slots160 = 25;
nzpres15->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres15->qcl_InfoPeriodicCSI_RS));
*nzpres15->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres15);
NR_NZP_CSI_RS_Resource_t *nzpres16 = calloc(1,sizeof(*nzpres16));
nzpres16->nzp_CSI_RS_ResourceId=16;
nzpres16->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres16->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres16->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres16->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres16->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=8;
nzpres16->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres16->resourceMapping.firstOFDMSymbolInTimeDomain=5;
nzpres16->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres16->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres16->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres16->resourceMapping.density.choice.three=(NULL_t)0;
nzpres16->resourceMapping.freqBand.startingRB=0;
nzpres16->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres16->powerControlOffset=0;
nzpres16->powerControlOffsetSS=calloc(1,sizeof(*nzpres16->powerControlOffsetSS));
*nzpres16->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres16->scramblingID=40;
nzpres16->periodicityAndOffset = calloc(1,sizeof(*nzpres16->periodicityAndOffset));
nzpres16->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres16->periodicityAndOffset->choice.slots160 = 26;
nzpres16->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres16->qcl_InfoPeriodicCSI_RS));
*nzpres16->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres16);
NR_NZP_CSI_RS_Resource_t *nzpres17 = calloc(1,sizeof(*nzpres17));
nzpres17->nzp_CSI_RS_ResourceId=9;
nzpres17->resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_row1;
nzpres17->resourceMapping.frequencyDomainAllocation.choice.row1.buf = calloc(1,1);
nzpres17->resourceMapping.frequencyDomainAllocation.choice.row1.size = 1;
nzpres17->resourceMapping.frequencyDomainAllocation.choice.row1.bits_unused = 4;
nzpres17->resourceMapping.frequencyDomainAllocation.choice.row1.buf[0]=8;
nzpres17->resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p1;
nzpres17->resourceMapping.firstOFDMSymbolInTimeDomain=9;
nzpres17->resourceMapping.firstOFDMSymbolInTimeDomain2=NULL;
nzpres17->resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_noCDM;
nzpres17->resourceMapping.density.present=NR_CSI_RS_ResourceMapping__density_PR_three;
nzpres17->resourceMapping.density.choice.three=(NULL_t)0;
nzpres17->resourceMapping.freqBand.startingRB=0;
nzpres17->resourceMapping.freqBand.nrofRBs= servingcellconfigcommon->downlinkConfigCommon->frequencyInfoDL->scs_SpecificCarrierList.list.array[0]->carrierBandwidth;
nzpres17->powerControlOffset=0;
nzpres17->powerControlOffsetSS=calloc(1,sizeof(*nzpres17->powerControlOffsetSS));
*nzpres17->powerControlOffsetSS=NR_NZP_CSI_RS_Resource__powerControlOffsetSS_db0;
nzpres17->scramblingID=40;
nzpres17->periodicityAndOffset = calloc(1,sizeof(*nzpres17->periodicityAndOffset));
nzpres17->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots160;
nzpres17->periodicityAndOffset->choice.slots160 = 26;
nzpres17->qcl_InfoPeriodicCSI_RS=calloc(1,sizeof(*nzpres17->qcl_InfoPeriodicCSI_RS));
*nzpres17->qcl_InfoPeriodicCSI_RS=8;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList->list,nzpres17);
}
if (n_physical_antenna_ports > 16) AssertFatal(1==0,"Fill in for more than 16 antenna elements\n");
csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList = calloc(1,sizeof(*csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList));
csi_MeasConfig->nzp_CSI_RS_ResourceSetToReleaseList = NULL;
NR_NZP_CSI_RS_ResourceSet_t *nzpresset0=calloc(1,sizeof(*nzpresset0));
nzpresset0->nzp_CSI_ResourceSetId=0;
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset00=calloc(1,sizeof(*nzpresset00));
*nzpresset00=0;
ASN_SEQUENCE_ADD(&nzpresset0->nzp_CSI_RS_Resources.list,nzpresset00);
nzpresset0->repetition=NULL;
nzpresset0->aperiodicTriggeringOffset=NULL;
nzpresset0->trs_Info=NULL;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList->list,nzpresset0);
if (n_physical_antenna_ports > 1) {
NR_NZP_CSI_RS_ResourceSet_t *nzpresset3=calloc(1,sizeof(*nzpresset3));
nzpresset3->nzp_CSI_ResourceSetId=3;
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset30=calloc(1,sizeof(*nzpresset30));
*nzpresset30=2;
ASN_SEQUENCE_ADD(&nzpresset3->nzp_CSI_RS_Resources.list,nzpresset30);
if (n_physical_antenna_ports > 3) {
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset31=calloc(1,sizeof(*nzpresset31));
*nzpresset31=3;
ASN_SEQUENCE_ADD(&nzpresset3->nzp_CSI_RS_Resources.list,nzpresset31);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset32=calloc(1,sizeof(*nzpresset32));
*nzpresset32=4;
ASN_SEQUENCE_ADD(&nzpresset3->nzp_CSI_RS_Resources.list,nzpresset32);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset33=calloc(1,sizeof(*nzpresset33));
*nzpresset33=5;
ASN_SEQUENCE_ADD(&nzpresset3->nzp_CSI_RS_Resources.list,nzpresset33);
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList->list,nzpresset3);
}
nzpresset3->repetition=calloc(1,sizeof(*nzpresset3->repetition));
*nzpresset3->repetition=NR_NZP_CSI_RS_ResourceSet__repetition_off;
nzpresset3->aperiodicTriggeringOffset=NULL;
nzpresset3->trs_Info=calloc(1,sizeof(*nzpresset3->trs_Info));
*nzpresset3->trs_Info=NR_NZP_CSI_RS_ResourceSet__trs_Info_true;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList->list,nzpresset3);
}
secondaryCellGroup->spCellConfig->spCellConfigDedicated->csi_MeasConfig->choice.setup = csi_MeasConfig;
if (n_physical_antenna_ports > 7) {
NR_NZP_CSI_RS_ResourceSet_t *nzpresset4=calloc(1,sizeof(*nzpresset4));
nzpresset4->nzp_CSI_ResourceSetId=4;
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset40=calloc(1,sizeof(*nzpresset40));
*nzpresset40=6;
ASN_SEQUENCE_ADD(&nzpresset4->nzp_CSI_RS_Resources.list,nzpresset40);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset41=calloc(1,sizeof(*nzpresset41));
*nzpresset41=7;
ASN_SEQUENCE_ADD(&nzpresset4->nzp_CSI_RS_Resources.list,nzpresset41);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset42=calloc(1,sizeof(*nzpresset42));
*nzpresset42=8;
ASN_SEQUENCE_ADD(&nzpresset4->nzp_CSI_RS_Resources.list,nzpresset42);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset43=calloc(1,sizeof(*nzpresset43));
*nzpresset43=9;
ASN_SEQUENCE_ADD(&nzpresset4->nzp_CSI_RS_Resources.list,nzpresset43);
nzpresset4->repetition=calloc(1,sizeof(*nzpresset4->repetition));
*nzpresset4->repetition=NR_NZP_CSI_RS_ResourceSet__repetition_off;
nzpresset4->aperiodicTriggeringOffset=NULL;
nzpresset4->trs_Info=calloc(1,sizeof(*nzpresset4->trs_Info));
*nzpresset4->trs_Info=NR_NZP_CSI_RS_ResourceSet__trs_Info_true;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList->list,nzpresset4);
}
if (n_physical_antenna_ports > 15) {
NR_NZP_CSI_RS_ResourceSet_t *nzpresset5=calloc(1,sizeof(*nzpresset5));
nzpresset5->nzp_CSI_ResourceSetId=5;
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset50=calloc(1,sizeof(*nzpresset50));
*nzpresset50=10;
ASN_SEQUENCE_ADD(&nzpresset5->nzp_CSI_RS_Resources.list,nzpresset50);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset51=calloc(1,sizeof(*nzpresset51));
*nzpresset51=11;
ASN_SEQUENCE_ADD(&nzpresset5->nzp_CSI_RS_Resources.list,nzpresset51);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset52=calloc(1,sizeof(*nzpresset52));
*nzpresset52=12;
ASN_SEQUENCE_ADD(&nzpresset5->nzp_CSI_RS_Resources.list,nzpresset52);
NR_NZP_CSI_RS_ResourceSetId_t *nzpresset53=calloc(1,sizeof(*nzpresset53));
*nzpresset53=13;
ASN_SEQUENCE_ADD(&nzpresset5->nzp_CSI_RS_Resources.list,nzpresset53);
nzpresset5->repetition=calloc(1,sizeof(*nzpresset5->repetition));
*nzpresset5->repetition=NR_NZP_CSI_RS_ResourceSet__repetition_off;
nzpresset5->aperiodicTriggeringOffset=NULL;
nzpresset5->trs_Info=calloc(1,sizeof(*nzpresset5->trs_Info));
*nzpresset5->trs_Info=NR_NZP_CSI_RS_ResourceSet__trs_Info_true;
ASN_SEQUENCE_ADD(&csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList->list,nzpresset5);
}
csi_MeasConfig->csi_IM_ResourceToAddModList = calloc(1,sizeof(*csi_MeasConfig->csi_IM_ResourceToAddModList));
csi_MeasConfig->csi_IM_ResourceToAddModList = NULL;
csi_MeasConfig->csi_IM_ResourceToReleaseList = NULL;
NR_CSI_IM_Resource_t *imres0 = calloc(1,sizeof(*imres0));
imres0->csi_IM_ResourceId=0;
imres0->csi_IM_ResourceElementPattern=calloc(1,sizeof(*imres0->csi_IM_ResourceElementPattern));
imres0->csi_IM_ResourceElementPattern->present = NR_CSI_IM_Resource__csi_IM_ResourceElementPattern_PR_pattern1 ;
imres0->csi_IM_ResourceElementPattern->choice.pattern1=calloc(1,sizeof(*imres0->csi_IM_ResourceElementPattern->choice.pattern1));
imres0->csi_IM_ResourceElementPattern->choice.pattern1->subcarrierLocation_p1 = NR_CSI_IM_Resource__csi_IM_ResourceElementPattern__pattern1__subcarrierLocation_p1_s4;
imres0->csi_IM_ResourceElementPattern->choice.pattern1->symbolLocation_p1=7;
imres0->freqBand=calloc(1,sizeof(*imres0->freqBand));
imres0->freqBand->startingRB=0;
imres0->freqBand->nrofRBs=106;
imres0->periodicityAndOffset=calloc(1,sizeof(*imres0->periodicityAndOffset));
imres0->periodicityAndOffset->present = NR_CSI_ResourcePeriodicityAndOffset_PR_slots320;
imres0->periodicityAndOffset->choice.slots320 = 2;
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_IM_ResourceToAddModList->list,imres0);
csi_MeasConfig->csi_IM_ResourceSetToAddModList = calloc(1,sizeof(*csi_MeasConfig->csi_IM_ResourceSetToAddModList));
csi_MeasConfig->csi_IM_ResourceSetToAddModList = NULL;
csi_MeasConfig->csi_IM_ResourceSetToReleaseList = NULL;
NR_CSI_IM_ResourceSet_t *imresset0 = calloc(1,sizeof(*imresset0));
imresset0->csi_IM_ResourceSetId=0;
NR_CSI_IM_ResourceId_t *imresset00=calloc(1,sizeof(*imresset00));
*imresset00=0;
ASN_SEQUENCE_ADD(&imresset0->csi_IM_Resources.list,imresset00);
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_IM_ResourceSetToAddModList->list,imresset0);
csi_MeasConfig->nzp_CSI_RS_ResourceSetToAddModList = NULL;
csi_MeasConfig->nzp_CSI_RS_ResourceSetToReleaseList = NULL;
csi_MeasConfig->nzp_CSI_RS_ResourceToAddModList = NULL;
csi_MeasConfig->csi_SSB_ResourceSetToAddModList = calloc(1,sizeof(*csi_MeasConfig->csi_SSB_ResourceSetToAddModList));
csi_MeasConfig->csi_SSB_ResourceSetToReleaseList = NULL;
NR_CSI_SSB_ResourceSet_t *ssbresset0 = calloc(1,sizeof(*ssbresset0));
......@@ -1732,220 +1177,19 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires00 = calloc(1,sizeof(*csires00));
*csires00 = 0;
ASN_SEQUENCE_ADD(&csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires00);
NR_NZP_CSI_RS_ResourceSetId_t *csires10 = calloc(1,sizeof(*csires10));
*csires10 = 0;
ASN_SEQUENCE_ADD(&csires0->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList->list,csires10);
csires0->bwp_Id = 1;
csires0->resourceType = NR_CSI_ResourceConfig__resourceType_periodic;
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ResourceConfigToAddModList->list,csires0);
NR_CSI_ResourceConfig_t *csires11 = calloc(1,sizeof(*csires11));
csires11->csi_ResourceConfigId=11;
csires11->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_csi_IM_ResourceSetList;
csires11->csi_RS_ResourceSetList.choice.csi_IM_ResourceSetList = calloc(1,sizeof(*csires11->csi_RS_ResourceSetList.choice.csi_IM_ResourceSetList));
NR_NZP_CSI_RS_ResourceSetId_t *csires110 = calloc(1,sizeof(*csires110));
*csires110 = 0;
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);
NR_CSI_ResourceConfig_t *csires10 = calloc(1,sizeof(*csires10));
csires10->csi_ResourceConfigId=10;
csires10->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires10->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires100 = calloc(1,sizeof(*csires100));
*csires100 = 0;
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);
NR_CSI_ResourceConfig_t *csires2 = calloc(1,sizeof(*csires2));
csires2->csi_ResourceConfigId=2;
csires2->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires2->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires20 = calloc(1,sizeof(*csires20));
*csires20 = 0;
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);
NR_CSI_ResourceConfig_t *csires3 = calloc(1,sizeof(*csires3));
csires3->csi_ResourceConfigId=3;
csires3->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires3->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires30 = calloc(1,sizeof(*csires30));
*csires30 = 0;
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);
NR_CSI_ResourceConfig_t *csires4 = calloc(1,sizeof(*csires4));
csires4->csi_ResourceConfigId=4;
csires4->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires4->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires40 = calloc(1,sizeof(*csires40));
*csires40 = 0;
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);
NR_CSI_ResourceConfig_t *csires5 = calloc(1,sizeof(*csires5));
csires5->csi_ResourceConfigId=5;
csires5->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires5->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires50 = calloc(1,sizeof(*csires50));
*csires50 = 0;
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);
NR_CSI_ResourceConfig_t *csires6 = calloc(1,sizeof(*csires6));
csires6->csi_ResourceConfigId=6;
csires6->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires6->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires60 = calloc(1,sizeof(*csires60));
*csires60 = 0;
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);
NR_CSI_ResourceConfig_t *csires7 = calloc(1,sizeof(*csires7));
csires7->csi_ResourceConfigId=7;
csires7->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires7->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires70 = calloc(1,sizeof(*csires70));
*csires70 = 0;
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);
NR_CSI_ResourceConfig_t *csires8 = calloc(1,sizeof(*csires8));
csires8->csi_ResourceConfigId=8;
csires8->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires8->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires80 = calloc(1,sizeof(*csires80));
*csires80 = 0;
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);
NR_CSI_ResourceConfig_t *csires9 = calloc(1,sizeof(*csires9));
csires9->csi_ResourceConfigId=9;
csires9->csi_RS_ResourceSetList.present = NR_CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB;
csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB = calloc(1,sizeof(*csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB));
csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList = calloc(1,sizeof(*csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->nzp_CSI_RS_ResourceSetList));
csires9->csi_RS_ResourceSetList.choice.nzp_CSI_RS_SSB->csi_SSB_ResourceSetList = NULL;
NR_NZP_CSI_RS_ResourceSetId_t *csires90 = calloc(1,sizeof(*csires90));
*csires90 = 0;
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);
csi_MeasConfig->csi_ReportConfigToAddModList = calloc(1,sizeof(*csi_MeasConfig->csi_ReportConfigToAddModList));
csi_MeasConfig->csi_ReportConfigToReleaseList = NULL;
NR_CSI_ReportConfig_t *csirep0 = calloc(1,sizeof(*csirep0));
csirep0->reportConfigId=0;
csirep0->carrier=NULL;
csirep0->resourcesForChannelMeasurement=0;
csirep0->csi_IM_ResourcesForInterference=calloc(1,sizeof(*csirep0->csi_IM_ResourcesForInterference));
*csirep0->csi_IM_ResourcesForInterference=11;
csirep0->nzp_CSI_RS_ResourcesForInterference=NULL;
csirep0->reportConfigType.present = NR_CSI_ReportConfig__reportConfigType_PR_periodic;
csirep0->reportConfigType.choice.periodic = calloc(1,sizeof(*csirep0->reportConfigType.choice.periodic));
csirep0->reportConfigType.choice.periodic->reportSlotConfig.present=NR_CSI_ReportPeriodicityAndOffset_PR_slots320;
csirep0->reportConfigType.choice.periodic->reportSlotConfig.choice.slots320 = 9;
NR_PUCCH_CSI_Resource_t *pucchcsires0 = calloc(1,sizeof(*pucchcsires0));
pucchcsires0->uplinkBandwidthPartId=1;
pucchcsires0->pucch_Resource=11;
ASN_SEQUENCE_ADD(&csirep0->reportConfigType.choice.periodic->pucch_CSI_ResourceList.list,pucchcsires0);
csirep0->reportQuantity.present = NR_CSI_ReportConfig__reportQuantity_PR_cri_RI_LI_PMI_CQI;
csirep0->reportQuantity.choice.cri_RI_PMI_CQI = (NULL_t)0;
csirep0->reportFreqConfiguration = calloc(1,sizeof(*csirep0->reportFreqConfiguration));
csirep0->reportFreqConfiguration->cqi_FormatIndicator=NR_CSI_ReportConfig__reportFreqConfiguration__cqi_FormatIndicator_widebandCQI;
csirep0->reportFreqConfiguration->pmi_FormatIndicator=NR_CSI_ReportConfig__reportFreqConfiguration__pmi_FormatIndicator_widebandPMI;
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);
int NPRB = NRRIV2BW(secondaryCellGroup->spCellConfig->spCellConfigDedicated->downlinkBWP_ToAddModList->list.array[*secondaryCellGroup->spCellConfig->spCellConfigDedicated->firstActiveDownlinkBWP_Id-1]->bwp_Common->genericParameters.locationAndBandwidth,275);
int sbsize = get_subband_size(NPRB,0);
int numsb = NPRB/sbsize;
if (NPRB%sbsize == 0) numsb++;
csirep0->reportFreqConfiguration->csi_ReportingBand->present= NR_CSI_ReportConfig__reportFreqConfiguration__csi_ReportingBand_PR_NOTHING+(numsb-2);
csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.size=numsb/8;
if ((numsb&7) > 0) csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.size++;
csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.bits_unused = (8-(numsb&7))&7;
csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.buf=malloc(csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.size);
for (int i=0;i<csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.size;i++)
csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.buf[i]=0xff;
csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.buf[csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.size-1]&=~((1<<csirep0->reportFreqConfiguration->csi_ReportingBand->choice.subbands18.bits_unused)-1);
csirep0->timeRestrictionForChannelMeasurements= NR_CSI_ReportConfig__timeRestrictionForChannelMeasurements_configured;
csirep0->timeRestrictionForInterferenceMeasurements=NR_CSI_ReportConfig__timeRestrictionForInterferenceMeasurements_configured;
csirep0->codebookConfig=calloc(1,sizeof(*csirep0->codebookConfig));
csirep0->codebookConfig->codebookType.present = NR_CodebookConfig__codebookType_PR_type1;
csirep0->codebookConfig->codebookType.choice.type1 = calloc(1,sizeof(*csirep0->codebookConfig->codebookType.choice.type1));
csirep0->codebookConfig->codebookType.choice.type1->subType.present = NR_CodebookConfig__codebookType__type1__subType_PR_typeI_SinglePanel;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel=calloc(1,sizeof(*csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel));
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.present=NR_CodebookConfig__codebookType__type1__subType__typeI_SinglePanel__nrOfAntennaPorts_PR_two;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two=
calloc(1,sizeof(*csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two));
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two->twoTX_CodebookSubsetRestriction.size=1;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two->twoTX_CodebookSubsetRestriction.bits_unused=2;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two->twoTX_CodebookSubsetRestriction.buf=malloc(1);
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->nrOfAntennaPorts.choice.two->twoTX_CodebookSubsetRestriction.buf[0]=0xfc;
//'111111'B
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->typeI_SinglePanel_ri_Restriction.size=1;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->typeI_SinglePanel_ri_Restriction.bits_unused=0;
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->typeI_SinglePanel_ri_Restriction.buf=malloc(1);
csirep0->codebookConfig->codebookType.choice.type1->subType.choice.typeI_SinglePanel->typeI_SinglePanel_ri_Restriction.buf[0]=0xc0; //'00000011'B
csirep0->codebookConfig->codebookType.choice.type1->codebookMode=1;
csirep0->dummy = NULL;
csirep0->groupBasedBeamReporting.present = NR_CSI_ReportConfig__groupBasedBeamReporting_PR_disabled;
csirep0->groupBasedBeamReporting.choice.disabled=calloc(1,sizeof(*csirep0->groupBasedBeamReporting.choice.disabled));
csirep0->groupBasedBeamReporting.choice.disabled->nrofReportedRS = NULL;
csirep0->cqi_Table = calloc(1,sizeof(*csirep0->cqi_Table));
*csirep0->cqi_Table = NR_CSI_ReportConfig__cqi_Table_table1;
csirep0->subbandSize = NR_CSI_ReportConfig__subbandSize_value1;
csirep0->non_PMI_PortIndication = NULL;
csirep0->ext1 = NULL;
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ReportConfigToAddModList->list,csirep0);
NR_CSI_ReportConfig_t *csirep1 = calloc(1,sizeof(*csirep1));
csirep1->reportConfigId=2;
csirep1->reportConfigId=0;
csirep1->carrier=NULL;
csirep1->resourcesForChannelMeasurement=initial_csi_index;
csirep1->resourcesForChannelMeasurement=0;
csirep1->csi_IM_ResourcesForInterference=NULL;
csirep1->nzp_CSI_RS_ResourcesForInterference=NULL;
csirep1->reportConfigType.present = NR_CSI_ReportConfig__reportConfigType_PR_periodic;
......@@ -1954,7 +1198,7 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
csirep1->reportConfigType.choice.periodic->reportSlotConfig.choice.slots320 = 49;
NR_PUCCH_CSI_Resource_t *pucchcsires1 = calloc(1,sizeof(*pucchcsires1));
pucchcsires1->uplinkBandwidthPartId=1;
pucchcsires1->pucch_Resource=12;
pucchcsires1->pucch_Resource=3;
ASN_SEQUENCE_ADD(&csirep1->reportConfigType.choice.periodic->pucch_CSI_ResourceList.list,pucchcsires1);
csirep1->reportQuantity.present = NR_CSI_ReportConfig__reportQuantity_PR_ssb_Index_RSRP;
csirep1->reportQuantity.choice.ssb_Index_RSRP=(NULL_t)0;
......@@ -2001,7 +1245,6 @@ void fill_default_secondaryCellGroup(NR_ServingCellConfigCommon_t *servingcellco
ASN_SEQUENCE_ADD(&csi_MeasConfig->csi_ReportConfigToAddModList->list,csirep1);
secondaryCellGroup->spCellConfig->spCellConfigDedicated->sCellDeactivationTimer=NULL;
secondaryCellGroup->spCellConfig->spCellConfigDedicated->crossCarrierSchedulingConfig=NULL;
secondaryCellGroup->spCellConfig->spCellConfigDedicated->tag_Id=0;
......
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