Fix the BIT STRING ERROR problem in MIB
This commit is contained in:
@@ -45,7 +45,7 @@ void handle_nr_nfapi_bch_pdu(PHY_VARS_gNB *gNB,
|
|||||||
AssertFatal(dl_config_pdu->bch_pdu_rel15.length == 3, "BCH PDU has length %d != 3\n",
|
AssertFatal(dl_config_pdu->bch_pdu_rel15.length == 3, "BCH PDU has length %d != 3\n",
|
||||||
dl_config_pdu->bch_pdu_rel15.length);
|
dl_config_pdu->bch_pdu_rel15.length);
|
||||||
|
|
||||||
LOG_I(PHY,"bch_pdu: %x,%x,%x\n",sdu[0],sdu[1],sdu[2]);
|
LOG_I(PHY,"pbch_pdu[0]: %x,pbch_pdu[1]: %x,gNB->pbch_pdu[2]: %x\n",sdu[0],sdu[1],sdu[2]);
|
||||||
gNB->pbch_pdu[0] = sdu[2];
|
gNB->pbch_pdu[0] = sdu[2];
|
||||||
gNB->pbch_pdu[1] = sdu[1];
|
gNB->pbch_pdu[1] = sdu[1];
|
||||||
gNB->pbch_pdu[2] = sdu[0];
|
gNB->pbch_pdu[2] = sdu[0];
|
||||||
|
|||||||
@@ -38,13 +38,13 @@ int8_t mac_rrc_nr_data_req(const module_id_t Mod_idP,
|
|||||||
mib = &carrier->mib;
|
mib = &carrier->mib;
|
||||||
|
|
||||||
if( (Srb_id & RAB_OFFSET ) == MIBCH) {
|
if( (Srb_id & RAB_OFFSET ) == MIBCH) {
|
||||||
mib->message.choice.mib->systemFrameNumber.buf = &sfn_msb;
|
mib->message.choice.mib->systemFrameNumber.buf = sfn_msb << 2;
|
||||||
enc_rval = uper_encode_to_buffer(&asn_DEF_NR_BCCH_BCH_Message,
|
enc_rval = uper_encode_to_buffer(&asn_DEF_NR_BCCH_BCH_Message,
|
||||||
NULL,
|
NULL,
|
||||||
(void *)mib,
|
(void *)mib,
|
||||||
carrier->MIB,
|
carrier->MIB,
|
||||||
24);
|
24);
|
||||||
LOG_I(NR_RRC,"Encoded MIB for frame %d (%p), bits %lu\n",sfn_msb,carrier->MIB,enc_rval.encoded);
|
LOG_I(NR_RRC,"Encoded MIB for frame %d sfn_msb %d (%p), bits %lu\n",frameP,sfn_msb,carrier->MIB,enc_rval.encoded);
|
||||||
buffer_pP[0]=carrier->MIB[0];
|
buffer_pP[0]=carrier->MIB[0];
|
||||||
buffer_pP[1]=carrier->MIB[1];
|
buffer_pP[1]=carrier->MIB[1];
|
||||||
buffer_pP[2]=carrier->MIB[2];
|
buffer_pP[2]=carrier->MIB[2];
|
||||||
|
|||||||
@@ -206,7 +206,8 @@ uint8_t do_MIB_NR(rrc_gNB_carrier_data_t *carrier,
|
|||||||
memset(mib->message.choice.mib,0,sizeof(struct NR_MIB));
|
memset(mib->message.choice.mib,0,sizeof(struct NR_MIB));
|
||||||
//36.331 SFN BIT STRING (SIZE (8) , 38.331 SFN BIT STRING (SIZE (6))
|
//36.331 SFN BIT STRING (SIZE (8) , 38.331 SFN BIT STRING (SIZE (6))
|
||||||
uint8_t sfn_msb = (uint8_t)((frame>>4)&0x3f);
|
uint8_t sfn_msb = (uint8_t)((frame>>4)&0x3f);
|
||||||
mib->message.choice.mib->systemFrameNumber.buf = &sfn_msb;
|
mib->message.choice.mib->systemFrameNumber.buf = CALLOC(1,sizeof(uint8_t));
|
||||||
|
mib->message.choice.mib->systemFrameNumber.buf = sfn_msb << 2;
|
||||||
mib->message.choice.mib->systemFrameNumber.size = 1;
|
mib->message.choice.mib->systemFrameNumber.size = 1;
|
||||||
mib->message.choice.mib->systemFrameNumber.bits_unused=2;
|
mib->message.choice.mib->systemFrameNumber.bits_unused=2;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user