segmentation fault and a couple of warnings fixed
This commit is contained in:
+6
-6
@@ -517,7 +517,6 @@ void fh_if5_north_asynch_in(RU_t *ru,int *frame,int *slot) {
|
|||||||
|
|
||||||
void fh_if4p5_north_asynch_in(RU_t *ru,int *frame,int *slot) {
|
void fh_if4p5_north_asynch_in(RU_t *ru,int *frame,int *slot) {
|
||||||
NR_DL_FRAME_PARMS *fp = ru->nr_frame_parms;
|
NR_DL_FRAME_PARMS *fp = ru->nr_frame_parms;
|
||||||
nfapi_nr_config_request_t *cfg = &ru->gNB_list[0]->gNB_config;
|
|
||||||
RU_proc_t *proc = &ru->proc;
|
RU_proc_t *proc = &ru->proc;
|
||||||
uint16_t packet_type;
|
uint16_t packet_type;
|
||||||
uint32_t symbol_number,symbol_mask,symbol_mask_full=0;
|
uint32_t symbol_number,symbol_mask,symbol_mask_full=0;
|
||||||
@@ -1916,22 +1915,23 @@ void configure_rru(int idx,
|
|||||||
void *arg) {
|
void *arg) {
|
||||||
RRU_config_t *config = (RRU_config_t *)arg;
|
RRU_config_t *config = (RRU_config_t *)arg;
|
||||||
RU_t *ru = RC.ru[idx];
|
RU_t *ru = RC.ru[idx];
|
||||||
nfapi_nr_config_request_t *gNB_config = &ru->gNB_list[0]->gNB_config;
|
nfapi_nr_config_request_scf_t *gNB_config = &ru->gNB_list[0]->gNB_config;
|
||||||
ru->nr_frame_parms->eutra_band = config->band_list[0];
|
ru->nr_frame_parms->eutra_band = config->band_list[0];
|
||||||
ru->nr_frame_parms->dl_CarrierFreq = config->tx_freq[0];
|
ru->nr_frame_parms->dl_CarrierFreq = config->tx_freq[0];
|
||||||
ru->nr_frame_parms->ul_CarrierFreq = config->rx_freq[0];
|
ru->nr_frame_parms->ul_CarrierFreq = config->rx_freq[0];
|
||||||
|
|
||||||
if (ru->nr_frame_parms->dl_CarrierFreq == ru->nr_frame_parms->ul_CarrierFreq) {
|
if (ru->nr_frame_parms->dl_CarrierFreq == ru->nr_frame_parms->ul_CarrierFreq) {
|
||||||
gNB_config->subframe_config.duplex_mode.value = TDD;
|
gNB_config->cell_config.frame_duplex_type.value = TDD;
|
||||||
//ru->nr_frame_parms->tdd_config = config->tdd_config[0];
|
//ru->nr_frame_parms->tdd_config = config->tdd_config[0];
|
||||||
//ru->nr_frame_parms->tdd_config_S = config->tdd_config_S[0];
|
//ru->nr_frame_parms->tdd_config_S = config->tdd_config_S[0];
|
||||||
} else
|
} else
|
||||||
gNB_config->subframe_config.duplex_mode.value = FDD;
|
gNB_config->cell_config.frame_duplex_type.value = FDD;
|
||||||
|
|
||||||
ru->att_tx = config->att_tx[0];
|
ru->att_tx = config->att_tx[0];
|
||||||
ru->att_rx = config->att_rx[0];
|
ru->att_rx = config->att_rx[0];
|
||||||
gNB_config->rf_config.dl_carrier_bandwidth.value = config->N_RB_DL[0];
|
int mu = gNB_config->ssb_config.scs_common.value;
|
||||||
gNB_config->rf_config.ul_carrier_bandwidth.value = config->N_RB_UL[0];
|
gNB_config->carrier_config.dl_grid_size[mu].value = config->N_RB_DL[0];
|
||||||
|
gNB_config->carrier_config.dl_grid_size[mu].value = config->N_RB_UL[0];
|
||||||
ru->nr_frame_parms->threequarter_fs = config->threequarter_fs[0];
|
ru->nr_frame_parms->threequarter_fs = config->threequarter_fs[0];
|
||||||
|
|
||||||
//ru->nr_frame_parms->pdsch_config_common.referenceSignalPower = ru->max_pdschReferenceSignalPower-config->att_tx[0];
|
//ru->nr_frame_parms->pdsch_config_common.referenceSignalPower = ru->max_pdschReferenceSignalPower-config->att_tx[0];
|
||||||
|
|||||||
@@ -146,10 +146,11 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
|
|||||||
gNB = RC.gNB[Mod_id];
|
gNB = RC.gNB[Mod_id];
|
||||||
|
|
||||||
uint8_t number_dl_pdu = DL_req->dl_tti_request_body.nPDUs;
|
uint8_t number_dl_pdu = DL_req->dl_tti_request_body.nPDUs;
|
||||||
uint8_t number_ul_pdu = UL_tti_req->n_pdus;
|
uint8_t number_ul_pdu = 0;
|
||||||
uint8_t number_ul_dci_pdu = UL_dci_req->numPdus;
|
uint8_t number_ul_dci_pdu = UL_dci_req->numPdus;
|
||||||
|
|
||||||
|
if (UL_tti_req != NULL) number_ul_pdu = UL_tti_req->n_pdus;
|
||||||
|
|
||||||
LOG_D(PHY,"NFAPI: Sched_INFO:SFN/SLOT:%04d%d DL_req:SFN/SLO:%04d%d:dl_pdu:%d tx_req:SFN/SLOT:%04d%d:pdus:%d \n",
|
LOG_D(PHY,"NFAPI: Sched_INFO:SFN/SLOT:%04d%d DL_req:SFN/SLO:%04d%d:dl_pdu:%d tx_req:SFN/SLOT:%04d%d:pdus:%d \n",
|
||||||
frame,slot,
|
frame,slot,
|
||||||
DL_req->SFN,DL_req->Slot,number_dl_pdu,
|
DL_req->SFN,DL_req->Slot,number_dl_pdu,
|
||||||
@@ -199,7 +200,7 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (UL_tti_req) memcpy(&gNB->UL_tti_req,UL_tti_req,sizeof(nfapi_nr_ul_tti_request_t));
|
if (UL_tti_req!=NULL) memcpy(&gNB->UL_tti_req,UL_tti_req,sizeof(nfapi_nr_ul_tti_request_t));
|
||||||
|
|
||||||
for (int i=0;i<number_ul_dci_pdu;i++) {
|
for (int i=0;i<number_ul_dci_pdu;i++) {
|
||||||
handle_nfapi_nr_ul_dci_pdu(gNB,
|
handle_nfapi_nr_ul_dci_pdu(gNB,
|
||||||
|
|||||||
@@ -256,7 +256,7 @@ void fix_scc(NR_ServingCellConfigCommon_t *scc,int ssbmap) {
|
|||||||
// fix DL and UL Allocation lists
|
// fix DL and UL Allocation lists
|
||||||
|
|
||||||
for (int i=scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.count-1;i>=0;i--) {
|
for (int i=scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.count-1;i>=0;i--) {
|
||||||
printf("Checking element %d : %d\n",i,*scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0);
|
printf("Checking element %d : %ld\n",i,*scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0);
|
||||||
if (*scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0>32) {
|
if (*scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0>32) {
|
||||||
printf("removing pdsch_TimeDomainAllocationList element %d\n",i);
|
printf("removing pdsch_TimeDomainAllocationList element %d\n",i);
|
||||||
free(scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0);
|
free(scc->downlinkConfigCommon->initialDownlinkBWP->pdsch_ConfigCommon->choice.setup->pdsch_TimeDomainAllocationList->list.array[i]->k0);
|
||||||
@@ -276,9 +276,10 @@ void fix_scc(NR_ServingCellConfigCommon_t *scc,int ssbmap) {
|
|||||||
scc->tdd_UL_DL_ConfigurationCommon->pattern2=NULL;
|
scc->tdd_UL_DL_ConfigurationCommon->pattern2=NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((int)*scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing == -1)
|
if ((int)*scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing == -1) {
|
||||||
free(scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing);
|
free(scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing);
|
||||||
scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing=NULL;
|
scc->uplinkConfigCommon->initialUplinkBWP->rach_ConfigCommon->choice.setup->msg1_SubcarrierSpacing=NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void RCconfig_nr_flexran()
|
void RCconfig_nr_flexran()
|
||||||
|
|||||||
Reference in New Issue
Block a user