Commit 7c5585fb authored by Michele Paffetti's avatar Michele Paffetti

review of PHY_Config_t structure parameters for FAPI-like approach. Implement...

review of PHY_Config_t structure parameters for FAPI-like approach. Implement the FAPI required parameters and adding some extras in separate structure. Code compile
parent 1baa3251
...@@ -59,10 +59,12 @@ void NB_phy_config_mib_eNB(int Mod_id, ...@@ -59,10 +59,12 @@ void NB_phy_config_mib_eNB(int Mod_id,
// ); // );
void NB_phy_config_sib2_eNB(uint8_t Mod_id, void NB_phy_config_sib2_eNB(uint8_t Mod_id,
int CC_id, int CC_id,
nfapi_nb_iot_config_t *config, nfapi_nb_iot_config_t *config,
nfapi_rf_config_t *rf_config nfapi_rf_config_t *rf_config,
); nfapi_uplink_reference_signal_config_t* ul_nrs_config,
extra_phyConfigCommon_t* extra_phy_parms
);
void NB_phy_config_dedicated_eNB(module_id_t Mod_id, void NB_phy_config_dedicated_eNB(module_id_t Mod_id,
int CC_id, int CC_id,
......
...@@ -202,7 +202,9 @@ void NB_phy_config_mib_eNB( ...@@ -202,7 +202,9 @@ void NB_phy_config_mib_eNB(
void NB_phy_config_sib2_eNB(uint8_t Mod_id, void NB_phy_config_sib2_eNB(uint8_t Mod_id,
int CC_id, int CC_id,
nfapi_nb_iot_config_t *config, nfapi_nb_iot_config_t *config,
nfapi_rf_config_t *rf_config nfapi_rf_config_t *rf_config,
nfapi_uplink_reference_signal_config_t* ul_nrs_config,
extra_phyConfigCommon_t* extra_phy_parms
) )
{ {
NB_DL_FRAME_PARMS *fp = &PHY_vars_eNB_g[Mod_id][CC_id]->frame_parms; NB_DL_FRAME_PARMS *fp = &PHY_vars_eNB_g[Mod_id][CC_id]->frame_parms;
...@@ -230,13 +232,13 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -230,13 +232,13 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
fp->nprach_config_common.nprach_ParametersList.list.array[0]->numRepetitionsPerPreambleAttempt = config->nprach_config_0_number_of_repetitions_per_attempt.value; fp->nprach_config_common.nprach_ParametersList.list.array[0]->numRepetitionsPerPreambleAttempt = config->nprach_config_0_number_of_repetitions_per_attempt.value;
LOG_D(PHY,"config#0: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[0]->numRepetitionsPerPreambleAttempt); LOG_D(PHY,"config#0: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[0]->numRepetitionsPerPreambleAttempt);
///FIXME: missed configuration in FAPI config_request (TS 36.331 pag 610) //missed configuration in FAPI config_request (TS 36.331 pag 610) (may not needed)
// fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/ fp->nprach_config_common.nprach_ParametersList.list.array[0]->nprach_SubcarrierMSG3_RangeStart = extra_phy_parms->nprach_config_0_subcarrier_MSG3_range_start;
// fp->nprach_config_common.nprach_ParametersList.list.array[0]->nprach_SubcarrierMSG3_RangeStart fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_StartSF_CSS_RA = extra_phy_parms->nprach_config_0_npdcch_startSF_CSS_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_StartSF_CSS_RA fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_NumRepetitions_RA = extra_phy_parms->nprach_config_0_npdcch_num_repetitions_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_NumRepetitions_RA fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_Offset_RA = extra_phy_parms->nprach_config_0_npdcch_offset_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[0]->npdcch_Offset_RA fp->nprach_config_common.nprach_ParametersList.list.array[0]->maxNumPreambleAttemptCE = extra_phy_parms->nprach_config_0_max_num_preamble_attempt_CE;
// fp->nprach_config_common.nprach_ParametersList.list.array[0]->maxNumPreambleAttemptCE //fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/
} }
...@@ -257,12 +259,13 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -257,12 +259,13 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
fp->nprach_config_common.nprach_ParametersList.list.array[1]->numRepetitionsPerPreambleAttempt = config->nprach_config_1_number_of_repetitions_per_attempt.value; fp->nprach_config_common.nprach_ParametersList.list.array[1]->numRepetitionsPerPreambleAttempt = config->nprach_config_1_number_of_repetitions_per_attempt.value;
LOG_D(PHY,"config#1: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[1]->numRepetitionsPerPreambleAttempt); LOG_D(PHY,"config#1: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[1]->numRepetitionsPerPreambleAttempt);
///FIXME: missed configuration in FAPI config_request (TS 36.331 pag 610) //missed configuration in FAPI config_request (TS 36.331 pag 610) (may not needed)
// fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/ fp->nprach_config_common.nprach_ParametersList.list.array[1]->nprach_SubcarrierMSG3_RangeStart = extra_phy_parms->nprach_config_1_subcarrier_MSG3_range_start;
// fp->nprach_config_common.nprach_ParametersList.list.array[1]->nprach_SubcarrierMSG3_RangeStart fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_StartSF_CSS_RA = extra_phy_parms->nprach_config_1_npdcch_startSF_CSS_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_StartSF_CSS_RA fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_NumRepetitions_RA = extra_phy_parms->nprach_config_1_npdcch_num_repetitions_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_NumRepetitions_RA fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_Offset_RA = extra_phy_parms->nprach_config_1_npdcch_offset_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[1]->npdcch_Offset_RA fp->nprach_config_common.nprach_ParametersList.list.array[1]->maxNumPreambleAttemptCE = extra_phy_parms->nprach_config_1_max_num_preamble_attempt_CE;
//fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/
} }
...@@ -271,7 +274,7 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -271,7 +274,7 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
fp->nprach_config_common.nprach_CP_Length = config->nprach_config_2_cp_length.value; //NPRACH_ConfigSIB_NB_r13__nprach_CP_Length_r13_us66dot7 fp->nprach_config_common.nprach_CP_Length = config->nprach_config_2_cp_length.value; //NPRACH_ConfigSIB_NB_r13__nprach_CP_Length_r13_us66dot7
LOG_D(PHY," config#2: nprach_CP_Length = %d\n",fp->nprach_config_common.nprach_CP_Length); LOG_D(PHY," config#2: nprach_CP_Length = %d\n",fp->nprach_config_common.nprach_CP_Length);
//FIXME: MP: memory for the list should be allocated? initialization?? //FIXME: MP: memory for the list should be allocated? initialization?? where??
fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_Periodicity = config->nprach_config_2_sf_periodicity.value; fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_Periodicity = config->nprach_config_2_sf_periodicity.value;
LOG_D(PHY,"config#2: nprach_Periodicity = %d\n", fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_Periodicity); LOG_D(PHY,"config#2: nprach_Periodicity = %d\n", fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_Periodicity);
fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_StartTime = config->nprach_config_2_start_time.value; fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_StartTime = config->nprach_config_2_start_time.value;
...@@ -283,12 +286,18 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -283,12 +286,18 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
fp->nprach_config_common.nprach_ParametersList.list.array[2]->numRepetitionsPerPreambleAttempt = config->nprach_config_2_number_of_repetitions_per_attempt.value; fp->nprach_config_common.nprach_ParametersList.list.array[2]->numRepetitionsPerPreambleAttempt = config->nprach_config_2_number_of_repetitions_per_attempt.value;
LOG_D(PHY,"config#2: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->numRepetitionsPerPreambleAttempt); LOG_D(PHY,"config#2: numRepetitionsPerPreambleAttempt= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->numRepetitionsPerPreambleAttempt);
///FIXME: missed configuration in FAPI config_request (TS 36.331 pag 610) //missed configuration in FAPI config_request (TS 36.331 pag 610) (may not needed)
// fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/ fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_SubcarrierMSG3_RangeStart = extra_phy_parms->nprach_config_2_subcarrier_MSG3_range_start;
// fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_SubcarrierMSG3_RangeStart LOG_D(PHY,"config#2: nprach_SubcarrierMSG3_RangeStart= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->nprach_SubcarrierMSG3_RangeStart);
// fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_StartSF_CSS_RA fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_StartSF_CSS_RA = extra_phy_parms->nprach_config_2_npdcch_startSF_CSS_RA;
// fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_NumRepetitions_RA LOG_D(PHY,"config#2: npdcch_StartSF_CSS_RA= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_StartSF_CSS_RA);
// fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_Offset_RA fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_NumRepetitions_RA = extra_phy_parms->nprach_config_2_npdcch_num_repetitions_RA;
LOG_D(PHY,"config#2: npdcch_NumRepetitions_RA= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_NumRepetitions_RA);
fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_Offset_RA = extra_phy_parms->nprach_config_2_npdcch_offset_RA;
LOG_D(PHY,"config#2: npdcch_Offset_RA= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->npdcch_Offset_RA);
fp->nprach_config_common.nprach_ParametersList.list.array[2]->maxNumPreambleAttemptCE = extra_phy_parms->nprach_config_2_max_num_preamble_attempt_CE;
LOG_D(PHY,"config#2: maxNumPreambleAttemptCE= %d\n",fp->nprach_config_common.nprach_ParametersList.list.array[2]->maxNumPreambleAttemptCE);
//fp->nprach_config_common.rsrp_ThresholdsPrachInfoList.list /*OPTIONAL*/
} }
...@@ -316,13 +325,18 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -316,13 +325,18 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
fp->npusch_config_common.dmrs_Config.twelveTone_BaseSequence= config->twelve_tone_base_sequence.value; fp->npusch_config_common.dmrs_Config.twelveTone_BaseSequence= config->twelve_tone_base_sequence.value;
LOG_D(PHY,"npusch_config_common.dmrs_Config.twelveTone_BaseSequence = %d\n",fp->npusch_config_common.dmrs_Config.twelveTone_BaseSequence); LOG_D(PHY,"npusch_config_common.dmrs_Config.twelveTone_BaseSequence = %d\n",fp->npusch_config_common.dmrs_Config.twelveTone_BaseSequence);
//MP: FAPI missed parameters
// fp->npusch_config_common.ack_NACK_NumRepetitions_Msg4 --> list of size maxNPRACH_Resources_NB_r13 (3 elements) fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled = ul_nrs_config->uplink_rs_hopping.value;
// fp->npusch_config_common.srs_SubframeConfig /*OPTIONAL*/ LOG_D(PHY,"npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled = %d\n",fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled);
// fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH LOG_D(PHY,"**%s**\n",fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled == 1 ? "RS_GROUP_HOPPING" : "RS_NO_HOPPING");
// LOG_D(PHY,"npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH = %d]n",fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH); fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH = ul_nrs_config->group_assignment.value;
// fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled LOG_D(PHY,"npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH = %d]n",fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupAssignmentNPUSCH);
// LOG_D(PHY,"npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled = %d]n",fp->npusch_config_common.ul_ReferenceSignalsNPUSCH.groupHoppingEnabled);
//MP: FAPI missed parameters (may not needed at eNB side and some of them are optional by the 3GPP specs)
//fp->npusch_config_common.ack_NACK_NumRepetitions_Msg4 --> list of size maxNPRACH_Resources_NB_r13 (3 elements)
//fp->npusch_config_common.srs_SubframeConfig /*OPTIONAL*/
//TODO:should change the part that implement the ul hopping in NB-IoT //TODO:should change the part that implement the ul hopping in NB-IoT
...@@ -330,10 +344,10 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id, ...@@ -330,10 +344,10 @@ void NB_phy_config_sib2_eNB(uint8_t Mod_id,
/*UL Power Control Config Common---------------------------------------------------------*/ /*UL Power Control Config Common---------------------------------------------------------*/
//FIXME: nothing has been defined in FAPI specs for this //F nothing has been defined in FAPI specs for this (may because are only UE stuffs)
// fp->ul_power_control_config_common.p0_NominalNPUSCH fp->ul_power_control_config_common.p0_NominalNPUSCH = extra_phy_parms->p0_nominal_npusch;
// fp->ul_power_control_config_common.alpha fp->ul_power_control_config_common.alpha = extra_phy_parms->alpha;
// fp->ul_power_control_config_common.deltaPreambleMsg3 fp->ul_power_control_config_common.deltaPreambleMsg3 = extra_phy_parms->delta_preamle_MSG3;
/*DL gap Config - OPTIONAL----------------------------------------------------------------*/ /*DL gap Config - OPTIONAL----------------------------------------------------------------*/
//DL_GapConfig_NB_r13_t a; //DL_GapConfig_NB_r13_t a;
......
...@@ -30,7 +30,10 @@ void PHY_config_req(PHY_Config_t* config_INFO){ ...@@ -30,7 +30,10 @@ void PHY_config_req(PHY_Config_t* config_INFO){
NB_phy_config_sib2_eNB(config_INFO->mod_id, NB_phy_config_sib2_eNB(config_INFO->mod_id,
config_INFO->CC_id, config_INFO->CC_id,
&config_INFO->nb_iot_config, // FIXME to be evaluated is should be passed a pointer &config_INFO->nb_iot_config, // FIXME to be evaluated is should be passed a pointer
&config_INFO->rf_config); // FIXME to be evaluated is should be passed a pointer &config_INFO->rf_config,
&config_INFO->uplink_reference_signal_config,
&config_INFO->extra_phy_parms
);
} }
if(config_INFO->get_DEDICATED!= 0) if(config_INFO->get_DEDICATED!= 0)
......
...@@ -436,7 +436,6 @@ int l2_init(LTE_DL_FRAME_PARMS *frame_parms,int eMBMS_active, char *uecap_xer,ui ...@@ -436,7 +436,6 @@ int l2_init(LTE_DL_FRAME_PARMS *frame_parms,int eMBMS_active, char *uecap_xer,ui
{ {
LOG_I(MAC,"[MAIN] MAC_INIT_GLOBAL_PARAM IN...\n"); LOG_I(MAC,"[MAIN] MAC_INIT_GLOBAL_PARAM IN...\n");
// NB_NODE=2; // NB_NODE=2;
// NB_INST=2; // NB_INST=2;
......
...@@ -6,21 +6,18 @@ ...@@ -6,21 +6,18 @@
//called at initialization of L2 //called at initialization of L2
//TODO: define the input
IF_Module_t* IF_Module_init_L2(void) //southbound IF-Module Interface IF_Module_t* IF_Module_init_L2(void) //southbound IF-Module Interface
{ {
//register the IF Module to MAC //mapping the IF-Module function to L2 definition
if_inst->UL_indication = UL_indication; if_inst->UL_indication = UL_indication;
return if_inst; return if_inst;
} }
//called at initialization of L1 //called at initialization of L1 (phy_init_lte_eNB)
//TODO: define the input
IF_Module_t* IF_Module_init_L1(void) //northbound IF-Module Interface IF_Module_t* IF_Module_init_L1(void) //northbound IF-Module Interface
{ {
//fill the Sched_Rsp_t //mapping the IF-module function to L1 definition
//fill the PHY_Config_t -->already done in rrc_mac_config
if_inst->schedule_response = schedule_response; if_inst->schedule_response = schedule_response;
if_inst->PHY_config_req = PHY_config_req; if_inst->PHY_config_req = PHY_config_req;
......
...@@ -20,6 +20,36 @@ ...@@ -20,6 +20,36 @@
// P5 FAPI-like configuration structures // P5 FAPI-like configuration structures
/*MP: MISSED COMMON CONFIG. of SIB2-NB in FAPI SPECS (may non needed)*/
typedef struct{
//nprach_config
uint16_t nprach_config_0_subcarrier_MSG3_range_start;
uint16_t nprach_config_1_subcarrier_MSG3_range_start;
uint16_t nprach_config_2_subcarrier_MSG3_range_start;
uint16_t nprach_config_0_max_num_preamble_attempt_CE;
uint16_t nprach_config_1_max_num_preamble_attempt_CE;
uint16_t nprach_config_2_max_num_preamble_attempt_CE;
uint16_t nprach_config_0_npdcch_num_repetitions_RA;
uint16_t nprach_config_1_npdcch_num_repetitions_RA;
uint16_t nprach_config_2_npdcch_num_repetitions_RA;
uint16_t nprach_config_0_npdcch_startSF_CSS_RA;
uint16_t nprach_config_1_npdcch_startSF_CSS_RA;
uint16_t nprach_config_2_npdcch_startSF_CSS_RA;
uint16_t nprach_config_0_npdcch_offset_RA;
uint16_t nprach_config_1_npdcch_offset_RA;
uint16_t nprach_config_2_npdcch_offset_RA;
//npusch ConfigCommon (carried by the NULSCH PDU in FAPI--> so maybe not a static parameter)
//not used
ACK_NACK_NumRepetitions_NB_r13_t *ack_nack_numRepetitions_MSG4; //pointer to the first cell of a list of ack_nack_num_repetitions
//ulPowerControlCommon (UE side)
uint16_t p0_nominal_npusch;
uint16_t alpha;
uint16_t delta_preamle_MSG3;
}extra_phyConfigCommon_t;
typedef struct{ typedef struct{
/*OAI config. parameters*/ /*OAI config. parameters*/
...@@ -36,7 +66,7 @@ typedef struct{ ...@@ -36,7 +66,7 @@ typedef struct{
//In 3GPP specs (TS 36.101 Table 5.7.3-1 and ch 5.7.3F) see also SIB2-NB freqInfo.ul-carrierFreq //In 3GPP specs (TS 36.101 Table 5.7.3-1 and ch 5.7.3F) see also SIB2-NB freqInfo.ul-carrierFreq
//this parameters should be evaluated based of the EUTRA Absolute Radio Frequency Channel Number (EARFCN) //this parameters should be evaluated based of the EUTRA Absolute Radio Frequency Channel Number (EARFCN)
//in FAPI this value is given inside th BROADCAST DETECT request (P4 Network Monito Mode procedure) //in FAPI this value is given inside the BROADCAST DETECT request (P4 Network Monitor Mode procedure)
//in OAI we set the dl_CarrierFrequenci at configuration time (see COMMON/rrc_messages_types.h) //in OAI we set the dl_CarrierFrequenci at configuration time (see COMMON/rrc_messages_types.h)
//then adding an offset for the ul_CarrierFreq ( see RU-RAU split approach - init_SI) //then adding an offset for the ul_CarrierFreq ( see RU-RAU split approach - init_SI)
uint32_t dl_CarrierFreq; uint32_t dl_CarrierFreq;
...@@ -44,6 +74,7 @@ typedef struct{ ...@@ -44,6 +74,7 @@ typedef struct{
/*FAPI style config. parameters*/ /*FAPI style config. parameters*/
nfapi_uplink_reference_signal_config_t uplink_reference_signal_config; nfapi_uplink_reference_signal_config_t uplink_reference_signal_config;
nfapi_subframe_config_t subframe_config; nfapi_subframe_config_t subframe_config;
nfapi_rf_config_t rf_config; nfapi_rf_config_t rf_config;
...@@ -51,9 +82,14 @@ typedef struct{ ...@@ -51,9 +82,14 @@ typedef struct{
nfapi_nb_iot_config_t nb_iot_config; nfapi_nb_iot_config_t nb_iot_config;
nfapi_l23_config_t l23_config; nfapi_l23_config_t l23_config;
/*Dedicated configuration --> not supported by FAPI?*/ /*Dedicated configuration -->not supported by FAPI
* In OAI at least are needed when we manage the phy_procedures_eNB_TX in which we call the phy_config_dedicated_eNB_step2
* that use the physicalConfigDedicated info previously stored in the PHY_VARS_eNB structure through the phy_config_dedicated procedure
*/
PhysicalConfigDedicated_NB_r13_t *phy_config_dedicated; PhysicalConfigDedicated_NB_r13_t *phy_config_dedicated;
/*MP: MISSED COMMON CONFIG. of SIB2-NB in FAPI SPECS (may non needed)*/
extra_phyConfigCommon_t extra_phy_parms;
}PHY_Config_t; }PHY_Config_t;
......
...@@ -855,37 +855,6 @@ typedef struct { ...@@ -855,37 +855,6 @@ typedef struct {
nfapi_uint16_tlv_t dl_gap_threshold; nfapi_uint16_tlv_t dl_gap_threshold;
nfapi_uint16_tlv_t dl_gap_periodicity; nfapi_uint16_tlv_t dl_gap_periodicity;
nfapi_uint16_tlv_t dl_gap_duration_coefficient; nfapi_uint16_tlv_t dl_gap_duration_coefficient;
///MP: MISSED COMMON CONFIG. of SIB2-NB in FAPI SPECS
//nprach_config
uint16_t nprach_config_0_subcarrier_MSG3_range_start;
uint16_t nprach_config_1_subcarrier_MSG3_range_start;
uint16_t nprach_config_2_subcarrier_MSG3_range_start;
uint16_t nprach_config_0_max_num_preamble_attempt_CE;
uint16_t nprach_config_1_max_num_preamble_attempt_CE;
uint16_t nprach_config_2_max_num_preamble_attempt_CE;
uint16_t nprach_config_0_npdcch_num_repetitions_RA;
uint16_t nprach_config_1_npdcch_num_repetitions_RA;
uint16_t nprach_config_2_npdcch_num_repetitions_RA;
uint16_t nprach_config_0_npdcch_startSF_CSS_RA;
uint16_t nprach_config_1_npdcch_startSF_CSS_RA;
uint16_t nprach_config_2_npdcch_startSF_CSS_RA;
uint16_t nprach_config_0_npdcch_offset_RA;
uint16_t nprach_config_1_npdcch_offset_RA;
uint16_t nprach_config_2_npdcch_offset_RA;
//npusch ConfigCommon
ACK_NACK_NumRepetitions_NB_r13_t *ack_nack_numRepetitions_MSG4; //pointer to the first cell of a list of ack_nack_num_repetitions
//ulPowerControlCommon
uint16_t p0_nominal_npusch;
uint16_t alpha;
uint16_t delta_preamle_MSG3;
} nfapi_nb_iot_config_t; } nfapi_nb_iot_config_t;
#define NFAPI_NB_IOT_CONFIG_OPERATING_MODE_TAG 0x00A5 #define NFAPI_NB_IOT_CONFIG_OPERATING_MODE_TAG 0x00A5
......
...@@ -295,94 +295,100 @@ int NB_rrc_mac_config_req_eNB( ...@@ -295,94 +295,100 @@ int NB_rrc_mac_config_req_eNB(
config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//MP: missed configuration for FAPI-style structure (i have added on my own)
//nprach_SubcarrierMSG3_RangeStart_r13
//maxNumPreambleAttemptCE_r13
//npdcch_NumRepetitions_RA_r13
//npdcch_StartSF_CSS_RA_r13
//npdcch_Offset_RA_r13
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/ //rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
break; break;
case 2: case 2:
nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[0]; nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[0];
config_INFO->nb_iot_config.nprach_config_0_enabled.value= 1; config_INFO->nb_iot_config.nprach_config_0_enabled.value = 1;
config_INFO->nb_iot_config.nprach_config_0_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13; config_INFO->nb_iot_config.nprach_config_0_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13;
config_INFO->nb_iot_config.nprach_config_0_sf_periodicity.value= nprach_parameter->nprach_Periodicity_r13; config_INFO->nb_iot_config.nprach_config_0_sf_periodicity.value = nprach_parameter->nprach_Periodicity_r13;
config_INFO->nb_iot_config.nprach_config_0_start_time.value = nprach_parameter->nprach_StartTime_r13; config_INFO->nb_iot_config.nprach_config_0_start_time.value = nprach_parameter->nprach_StartTime_r13;
config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[1]; nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[1];
config_INFO->nb_iot_config.nprach_config_1_enabled.value= 1; config_INFO->nb_iot_config.nprach_config_1_enabled.value = 1;
config_INFO->nb_iot_config.nprach_config_1_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13; config_INFO->nb_iot_config.nprach_config_1_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13;
config_INFO->nb_iot_config.nprach_config_1_sf_periodicity.value= nprach_parameter->nprach_Periodicity_r13; config_INFO->nb_iot_config.nprach_config_1_sf_periodicity.value = nprach_parameter->nprach_Periodicity_r13;
config_INFO->nb_iot_config.nprach_config_1_start_time.value = nprach_parameter->nprach_StartTime_r13; config_INFO->nb_iot_config.nprach_config_1_start_time.value = nprach_parameter->nprach_StartTime_r13;
config_INFO->nb_iot_config.nprach_config_1_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_1_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_1_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_1_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_1_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_1_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_1_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_1_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_1_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_1_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
break; break;
case 3: case 3:
nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[0]; nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[0];
config_INFO->nb_iot_config.nprach_config_0_enabled.value= 1; config_INFO->nb_iot_config.nprach_config_0_enabled.value = 1;
config_INFO->nb_iot_config.nprach_config_0_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13; config_INFO->nb_iot_config.nprach_config_0_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13;
config_INFO->nb_iot_config.nprach_config_0_sf_periodicity.value= nprach_parameter->nprach_Periodicity_r13; config_INFO->nb_iot_config.nprach_config_0_sf_periodicity.value = nprach_parameter->nprach_Periodicity_r13;
config_INFO->nb_iot_config.nprach_config_0_start_time.value = nprach_parameter->nprach_StartTime_r13; config_INFO->nb_iot_config.nprach_config_0_start_time.value = nprach_parameter->nprach_StartTime_r13;
config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_0_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_0_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_0_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_0_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_0_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[1]; nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[1];
config_INFO->nb_iot_config.nprach_config_1_enabled.value= 1; config_INFO->nb_iot_config.nprach_config_1_enabled.value = 1;
config_INFO->nb_iot_config.nprach_config_1_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13; config_INFO->nb_iot_config.nprach_config_1_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13;
config_INFO->nb_iot_config.nprach_config_1_sf_periodicity.value= nprach_parameter->nprach_Periodicity_r13; config_INFO->nb_iot_config.nprach_config_1_sf_periodicity.value = nprach_parameter->nprach_Periodicity_r13;
config_INFO->nb_iot_config.nprach_config_1_start_time.value = nprach_parameter->nprach_StartTime_r13; config_INFO->nb_iot_config.nprach_config_1_start_time.value = nprach_parameter->nprach_StartTime_r13;
config_INFO->nb_iot_config.nprach_config_1_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_1_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_1_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_1_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_1_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_1_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_1_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_1_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_1_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_1_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_1_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_1_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[2]; nprach_parameter = radioResourceConfigCommon->nprach_Config_r13.nprach_ParametersList_r13.list.array[2];
config_INFO->nb_iot_config.nprach_config_2_enabled.value= 1; config_INFO->nb_iot_config.nprach_config_2_enabled.value = 1;
config_INFO->nb_iot_config.nprach_config_2_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13; config_INFO->nb_iot_config.nprach_config_2_cp_length.value = radioResourceConfigCommon->nprach_Config_r13.nprach_CP_Length_r13;
config_INFO->nb_iot_config.nprach_config_2_sf_periodicity.value= nprach_parameter->nprach_Periodicity_r13; config_INFO->nb_iot_config.nprach_config_2_sf_periodicity.value = nprach_parameter->nprach_Periodicity_r13;
config_INFO->nb_iot_config.nprach_config_2_start_time.value = nprach_parameter->nprach_StartTime_r13; config_INFO->nb_iot_config.nprach_config_2_start_time.value = nprach_parameter->nprach_StartTime_r13;
config_INFO->nb_iot_config.nprach_config_2_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13; config_INFO->nb_iot_config.nprach_config_2_subcarrier_offset.value = nprach_parameter->nprach_SubcarrierOffset_r13;
config_INFO->nb_iot_config.nprach_config_2_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13; config_INFO->nb_iot_config.nprach_config_2_number_of_subcarriers.value = nprach_parameter->nprach_NumSubcarriers_r13;
config_INFO->nb_iot_config.nprach_config_2_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13; config_INFO->nb_iot_config.nprach_config_2_number_of_repetitions_per_attempt.value = nprach_parameter->numRepetitionsPerPreambleAttempt_r13;
config_INFO->nb_iot_config.nprach_config_2_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13; //MP: missed configuration for FAPI-style structure (I have added on my own byt maybe are not needed)
config_INFO->nb_iot_config.nprach_config_2_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13; config_INFO->extra_phy_parms.nprach_config_2_subcarrier_MSG3_range_start = nprach_parameter->nprach_SubcarrierMSG3_RangeStart_r13;
config_INFO->nb_iot_config.nprach_config_2_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13; config_INFO->extra_phy_parms.nprach_config_2_max_num_preamble_attempt_CE = nprach_parameter->maxNumPreambleAttemptCE_r13;
config_INFO->nb_iot_config.nprach_config_2_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13; config_INFO->extra_phy_parms.nprach_config_2_npdcch_num_repetitions_RA = nprach_parameter->npdcch_NumRepetitions_RA_r13;
config_INFO->nb_iot_config.nprach_config_2_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13; config_INFO->extra_phy_parms.nprach_config_2_npdcch_startSF_CSS_RA = nprach_parameter->npdcch_StartSF_CSS_RA_r13;
config_INFO->extra_phy_parms.nprach_config_2_npdcch_offset_RA = nprach_parameter->npdcch_Offset_RA_r13;
//rsrp_ThresholdsPrachInfoList_r13 /*OPTIONAL*/
break;
break; break;
default: default:
...@@ -398,7 +404,7 @@ int NB_rrc_mac_config_req_eNB( ...@@ -398,7 +404,7 @@ int NB_rrc_mac_config_req_eNB(
/*NPUSCH ConfigCommon*/ /*NPUSCH ConfigCommon*/
//a pointer to the first element of the list //a pointer to the first element of the list
config_INFO->nb_iot_config.ack_nack_numRepetitions_MSG4 = &radioResourceConfigCommon->npusch_ConfigCommon_r13.ack_NACK_NumRepetitions_Msg4_r13.list.array[0]; config_INFO->extra_phy_parms.ack_nack_numRepetitions_MSG4 = &radioResourceConfigCommon->npusch_ConfigCommon_r13.ack_NACK_NumRepetitions_Msg4_r13.list.array[0];
if(radioResourceConfigCommon->npusch_ConfigCommon_r13.dmrs_Config_r13 != NULL)/* OPTIONAL */ if(radioResourceConfigCommon->npusch_ConfigCommon_r13.dmrs_Config_r13 != NULL)/* OPTIONAL */
...@@ -444,9 +450,9 @@ int NB_rrc_mac_config_req_eNB( ...@@ -444,9 +450,9 @@ int NB_rrc_mac_config_req_eNB(
/*UL Power Control ConfigCommon*/ /*UL Power Control ConfigCommon*/
//nothing defined in FAPI specs //nothing defined in FAPI specs
config_INFO->nb_iot_config.p0_nominal_npusch = radioResourceConfigCommon->uplinkPowerControlCommon_r13.p0_NominalNPUSCH_r13; config_INFO->extra_phy_parms.p0_nominal_npusch = radioResourceConfigCommon->uplinkPowerControlCommon_r13.p0_NominalNPUSCH_r13;
config_INFO->nb_iot_config.alpha = radioResourceConfigCommon->uplinkPowerControlCommon_r13.alpha_r13; config_INFO->extra_phy_parms.alpha = radioResourceConfigCommon->uplinkPowerControlCommon_r13.alpha_r13;
config_INFO->nb_iot_config.delta_preamle_MSG3 = radioResourceConfigCommon->uplinkPowerControlCommon_r13.deltaPreambleMsg3_r13; config_INFO->extra_phy_parms.delta_preamle_MSG3 = radioResourceConfigCommon->uplinkPowerControlCommon_r13.deltaPreambleMsg3_r13;
/*RACH Config Common*/ /*RACH Config Common*/
//nothing defined in FAPI specs //nothing defined in FAPI specs
......
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