From 82ab85ec5193a6169ed8c9f90daf7ae3d5491e3d Mon Sep 17 00:00:00 2001 From: Francesco Mani <francesco.mani@eurecom.fr> Date: Thu, 23 Jan 2020 09:58:53 +0100 Subject: [PATCH] bugfix for MIB --- openair1/PHY/NR_TRANSPORT/nr_pbch.c | 3 +-- openair1/PHY/NR_TRANSPORT/nr_transport.h | 1 - openair1/SCHED_NR/phy_procedures_nr_gNB.c | 7 +++---- 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/openair1/PHY/NR_TRANSPORT/nr_pbch.c b/openair1/PHY/NR_TRANSPORT/nr_pbch.c index 1a5d46f642..b6a4787193 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_pbch.c +++ b/openair1/PHY/NR_TRANSPORT/nr_pbch.c @@ -226,7 +226,6 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch, int16_t amp, uint8_t ssb_start_symbol, uint8_t n_hf, - uint8_t Lmax, int sfn, nfapi_nr_config_request_scf_t *config, NR_DL_FRAME_PARMS *frame_parms) { @@ -244,11 +243,11 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch, pbch->pbch_a=0; uint8_t ssb_index = frame_parms->ssb_index; uint8_t *pbch_pdu = (uint8_t*)&ssb_pdu->ssb_pdu_rel15.bchPayload; + uint8_t Lmax = frame_parms->Lmax; for (int i=0; i<NR_PBCH_PDU_BITS; i++) pbch->pbch_a |= ((pbch_pdu[i>>3]>>(7-(i&7)))&1)<<i; #ifdef DEBUG_PBCH_ENCODING - for (int i=0; i<3; i++) printf("pbch_pdu[%d]: 0x%02x\n", i, pbch_pdu[i]); diff --git a/openair1/PHY/NR_TRANSPORT/nr_transport.h b/openair1/PHY/NR_TRANSPORT/nr_transport.h index c40b8efdb4..be73875058 100644 --- a/openair1/PHY/NR_TRANSPORT/nr_transport.h +++ b/openair1/PHY/NR_TRANSPORT/nr_transport.h @@ -92,7 +92,6 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch, int16_t amp, uint8_t ssb_start_symbol, uint8_t n_hf, - uint8_t Lmax, int sfn, nfapi_nr_config_request_scf_t *config, NR_DL_FRAME_PARMS *frame_parms); diff --git a/openair1/SCHED_NR/phy_procedures_nr_gNB.c b/openair1/SCHED_NR/phy_procedures_nr_gNB.c index 4df712ad4d..58899be542 100644 --- a/openair1/SCHED_NR/phy_procedures_nr_gNB.c +++ b/openair1/SCHED_NR/phy_procedures_nr_gNB.c @@ -103,9 +103,9 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int slot) { nr_generate_sss(gNB->d_sss, &txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp); if (cfg->carrier_config.num_tx_ant.value <= 4) - nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[n_hf][ssb_index],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp); + nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[n_hf][ssb_index&7],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp); else - nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[0][ssb_index],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp); + nr_generate_pbch_dmrs(gNB->nr_gold_pbch_dmrs[0][ssb_index&7],&txdataF[0][txdataF_offset], AMP, ssb_start_symbol, cfg, fp); nr_generate_pbch(&gNB->pbch, &gNB->ssb_pdu, @@ -113,8 +113,7 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int slot) { &txdataF[0][txdataF_offset], AMP, ssb_start_symbol, - n_hf,cfg->carrier_config.num_tx_ant.value, - frame, cfg, fp); + n_hf, frame, cfg, fp); } } } -- 2.26.2