Set SRS as periodic
This commit is contained in:
@@ -346,7 +346,7 @@ typedef struct {
|
|||||||
uint8_t time_start_position; // Starting position in the time domain l_0 [3GPP TS 38.211, Sec 6.4.1.4.1], Note: the MAC undertakes the translation from startPosition to l_0, Value: 0 --> 13
|
uint8_t time_start_position; // Starting position in the time domain l_0 [3GPP TS 38.211, Sec 6.4.1.4.1], Note: the MAC undertakes the translation from startPosition to l_0, Value: 0 --> 13
|
||||||
uint8_t config_index; // SRS bandwidth config index C_SRS [3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 63
|
uint8_t config_index; // SRS bandwidth config index C_SRS [3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 63
|
||||||
uint16_t sequence_id; // SRS sequence ID n_SRS_ID [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 --> 1023
|
uint16_t sequence_id; // SRS sequence ID n_SRS_ID [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 --> 1023
|
||||||
uint8_t bandwidth_index; // SRS bandwidth index B_SRS [3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 3
|
uint8_t bandwidth_index; // SRS bandwidth index B_SRS [3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 3
|
||||||
uint8_t comb_size; // Transmission comb size K_TC [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 = comb size 2, 1 = comb size 4, 2 = comb size 8 (Rel16)
|
uint8_t comb_size; // Transmission comb size K_TC [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 = comb size 2, 1 = comb size 4, 2 = comb size 8 (Rel16)
|
||||||
uint8_t comb_offset; // Transmission comb offset K'_TC[3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 1 (combSize = 0), Value: 0 --> 3 (combSize = 1), Value: 0 --> 7 (combSize = 2)
|
uint8_t comb_offset; // Transmission comb offset K'_TC[3GPP TS 38.211, Sec 6.4.1.4.3], Value: 0 --> 1 (combSize = 0), Value: 0 --> 3 (combSize = 1), Value: 0 --> 7 (combSize = 2)
|
||||||
uint8_t cyclic_chift; // Cyclic shift n_CS_SRS [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 --> 7 (combSize = 0), Value: 0 --> 11 (combSize = 1), Value: 0 --> 5 (combSize = 2)
|
uint8_t cyclic_chift; // Cyclic shift n_CS_SRS [3GPP TS 38.211, Sec 6.4.1.4.2], Value: 0 --> 7 (combSize = 0), Value: 0 --> 11 (combSize = 1), Value: 0 --> 5 (combSize = 2)
|
||||||
@@ -367,7 +367,7 @@ typedef struct {
|
|||||||
fapi_nr_ul_config_prach_pdu prach_config_pdu;
|
fapi_nr_ul_config_prach_pdu prach_config_pdu;
|
||||||
fapi_nr_ul_config_pucch_pdu pucch_config_pdu;
|
fapi_nr_ul_config_pucch_pdu pucch_config_pdu;
|
||||||
nfapi_nr_ue_pusch_pdu_t pusch_config_pdu;
|
nfapi_nr_ue_pusch_pdu_t pusch_config_pdu;
|
||||||
fapi_nr_ul_config_srs_pdu srs_config_pdu;
|
fapi_nr_ul_config_srs_pdu srs_config_pdu;
|
||||||
};
|
};
|
||||||
} fapi_nr_ul_config_request_pdu_t;
|
} fapi_nr_ul_config_request_pdu_t;
|
||||||
|
|
||||||
|
|||||||
@@ -1112,13 +1112,21 @@ void fill_initial_SpCellConfig(rnti_t rnti,
|
|||||||
*srs_resset0_id=0;
|
*srs_resset0_id=0;
|
||||||
ASN_SEQUENCE_ADD(&srs_resset0->srs_ResourceIdList->list,srs_resset0_id);
|
ASN_SEQUENCE_ADD(&srs_resset0->srs_ResourceIdList->list,srs_resset0_id);
|
||||||
srs_Config->srs_ResourceToReleaseList=NULL;
|
srs_Config->srs_ResourceToReleaseList=NULL;
|
||||||
srs_resset0->resourceType.present = NR_SRS_ResourceSet__resourceType_PR_aperiodic;
|
|
||||||
srs_resset0->resourceType.choice.aperiodic = calloc(1,sizeof(*srs_resset0->resourceType.choice.aperiodic));
|
if(0) {
|
||||||
srs_resset0->resourceType.choice.aperiodic->aperiodicSRS_ResourceTrigger=1;
|
srs_resset0->resourceType.present = NR_SRS_ResourceSet__resourceType_PR_aperiodic;
|
||||||
srs_resset0->resourceType.choice.aperiodic->csi_RS=NULL;
|
srs_resset0->resourceType.choice.aperiodic = calloc(1,sizeof(*srs_resset0->resourceType.choice.aperiodic));
|
||||||
srs_resset0->resourceType.choice.aperiodic->slotOffset= calloc(1,sizeof(*srs_resset0->resourceType.choice.aperiodic->slotOffset));
|
srs_resset0->resourceType.choice.aperiodic->aperiodicSRS_ResourceTrigger=1;
|
||||||
*srs_resset0->resourceType.choice.aperiodic->slotOffset=2;
|
srs_resset0->resourceType.choice.aperiodic->csi_RS=NULL;
|
||||||
srs_resset0->resourceType.choice.aperiodic->ext1=NULL;
|
srs_resset0->resourceType.choice.aperiodic->slotOffset= calloc(1,sizeof(*srs_resset0->resourceType.choice.aperiodic->slotOffset));
|
||||||
|
*srs_resset0->resourceType.choice.aperiodic->slotOffset=2;
|
||||||
|
srs_resset0->resourceType.choice.aperiodic->ext1=NULL;
|
||||||
|
} else {
|
||||||
|
srs_resset0->resourceType.present = NR_SRS_ResourceSet__resourceType_PR_periodic;
|
||||||
|
srs_resset0->resourceType.choice.periodic = calloc(1,sizeof(*srs_resset0->resourceType.choice.periodic));
|
||||||
|
srs_resset0->resourceType.choice.periodic->associatedCSI_RS = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
srs_resset0->usage=NR_SRS_ResourceSet__usage_codebook;
|
srs_resset0->usage=NR_SRS_ResourceSet__usage_codebook;
|
||||||
srs_resset0->alpha = calloc(1,sizeof(*srs_resset0->alpha));
|
srs_resset0->alpha = calloc(1,sizeof(*srs_resset0->alpha));
|
||||||
*srs_resset0->alpha = NR_Alpha_alpha1;
|
*srs_resset0->alpha = NR_Alpha_alpha1;
|
||||||
@@ -1146,8 +1154,16 @@ void fill_initial_SpCellConfig(rnti_t rnti,
|
|||||||
srs_res0->freqHopping.b_SRS=0;
|
srs_res0->freqHopping.b_SRS=0;
|
||||||
srs_res0->freqHopping.b_hop=0;
|
srs_res0->freqHopping.b_hop=0;
|
||||||
srs_res0->groupOrSequenceHopping=NR_SRS_Resource__groupOrSequenceHopping_neither;
|
srs_res0->groupOrSequenceHopping=NR_SRS_Resource__groupOrSequenceHopping_neither;
|
||||||
srs_res0->resourceType.present= NR_SRS_Resource__resourceType_PR_aperiodic;
|
|
||||||
srs_res0->resourceType.choice.aperiodic=calloc(1,sizeof(*srs_res0->resourceType.choice.aperiodic));
|
if(0) {
|
||||||
|
srs_res0->resourceType.present= NR_SRS_Resource__resourceType_PR_aperiodic;
|
||||||
|
srs_res0->resourceType.choice.aperiodic=calloc(1,sizeof(*srs_res0->resourceType.choice.aperiodic));
|
||||||
|
} else {
|
||||||
|
srs_res0->resourceType.present= NR_SRS_Resource__resourceType_PR_periodic;
|
||||||
|
srs_res0->resourceType.choice.periodic=calloc(1,sizeof(*srs_res0->resourceType.choice.periodic));
|
||||||
|
srs_res0->resourceType.choice.periodic->periodicityAndOffset_p.present = NR_SRS_PeriodicityAndOffset_PR_sl40;
|
||||||
|
}
|
||||||
|
|
||||||
srs_res0->sequenceId=40;
|
srs_res0->sequenceId=40;
|
||||||
srs_res0->spatialRelationInfo=calloc(1,sizeof(*srs_res0->spatialRelationInfo));
|
srs_res0->spatialRelationInfo=calloc(1,sizeof(*srs_res0->spatialRelationInfo));
|
||||||
srs_res0->spatialRelationInfo->servingCellId=NULL;
|
srs_res0->spatialRelationInfo->servingCellId=NULL;
|
||||||
@@ -1155,6 +1171,8 @@ void fill_initial_SpCellConfig(rnti_t rnti,
|
|||||||
srs_res0->spatialRelationInfo->referenceSignal.choice.csi_RS_Index=0;
|
srs_res0->spatialRelationInfo->referenceSignal.choice.csi_RS_Index=0;
|
||||||
ASN_SEQUENCE_ADD(&srs_Config->srs_ResourceToAddModList->list,srs_res0);
|
ASN_SEQUENCE_ADD(&srs_Config->srs_ResourceToAddModList->list,srs_res0);
|
||||||
|
|
||||||
|
xer_fprint(stdout, &asn_DEF_NR_SetupRelease_SRS_Config, (const void*)initialUplinkBWP->srs_Config);
|
||||||
|
|
||||||
// configure Scheduling request
|
// configure Scheduling request
|
||||||
// 40 slot period
|
// 40 slot period
|
||||||
pucch_Config->schedulingRequestResourceToAddModList = calloc(1,sizeof(*pucch_Config->schedulingRequestResourceToAddModList));
|
pucch_Config->schedulingRequestResourceToAddModList = calloc(1,sizeof(*pucch_Config->schedulingRequestResourceToAddModList));
|
||||||
|
|||||||
Reference in New Issue
Block a user