Commit 026d20c2 authored by Eric's avatar Eric

Finish separating NB-IoT from LTE

parent 18695eb2
This diff is collapsed.
...@@ -88,7 +88,7 @@ typedef struct { ...@@ -88,7 +88,7 @@ typedef struct {
/// RRC context variables /// RRC context variables
struct eNB_RRC_INST_s **rrc; struct eNB_RRC_INST_s **rrc;
/// NB_IoT RRC context variables /// NB_IoT RRC context variables
//struct eNB_RRC_INST_NB_IoT_s **nb_iot_rrc; struct eNB_RRC_INST_NB_IoT_s **nbiotrrc;
/// MAC context variables /// MAC context variables
struct eNB_MAC_INST_s **mac; struct eNB_MAC_INST_s **mac;
/// NB_IoT MAC context variables /// NB_IoT MAC context variables
......
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
*/ */
/* /*
platform_types.h platform_types_NB_IoT.h
------------------- -------------------
AUTHOR : Lionel GAUTHIER AUTHOR : Lionel GAUTHIER
COMPANY : EURECOM COMPANY : EURECOM
...@@ -47,19 +47,30 @@ typedef uint16_t rnti_NB_IoT_t; ...@@ -47,19 +47,30 @@ typedef uint16_t rnti_NB_IoT_t;
#ifndef _BOOLEAN_T_DEFINED_NB_IoT_ #ifndef _BOOLEAN_T_DEFINED_NB_IoT_
#define _BOOLEAN_T_DEFINED_NB_IoT_ #define _BOOLEAN_T_DEFINED_NB_IoT_
typedef signed char boolean_NB_IoT_t; typedef signed char boolean_t;
#if !defined(TRUE) #if !defined(TRUE)
#define TRUE (boolean_NB_IoT_t)0x01 #define TRUE (boolean_t)0x01
#endif #endif
#if !defined(FALSE) #if !defined(FALSE)
#define FALSE (boolean_NB_IoT_t)0x00 #define FALSE (boolean_t)0x00
#endif #endif
#define BOOL_NOT(b) (b^TRUE) #define BOOL_NOT(b) (b^TRUE)
#endif /* _BOOLEAN_T_DEFINED_ */ #endif
///NB-IoT
typedef boolean_t srb1bis_flag_t;
#define SRB1BIS_FLAG_NO FALSE
#define SRB1BIS_FLAG_YES TRUE
typedef boolean_t mib_flag_t;
#define MIB_FLAG_YES TRUE
#define MIB_FLAG_NO FALSE
/* _BOOLEAN_T_DEFINED_ */
/* /*
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// GENERIC ACCESS STRATUM TYPES // GENERIC ACCESS STRATUM TYPES
......
...@@ -280,60 +280,6 @@ typedef struct RrcConfigurationReq_s { ...@@ -280,60 +280,6 @@ typedef struct RrcConfigurationReq_s {
long ue_TimersAndConstants_n310[MAX_NUM_CCs]; long ue_TimersAndConstants_n310[MAX_NUM_CCs];
long ue_TimersAndConstants_n311[MAX_NUM_CCs]; long ue_TimersAndConstants_n311[MAX_NUM_CCs];
long ue_TransmissionMode[MAX_NUM_CCs]; long ue_TransmissionMode[MAX_NUM_CCs];
//NB-IoT------------------------------------------------------------
//RACH
long rach_raResponseWindowSize_NB[MAX_NUM_CCs];
long rach_macContentionResolutionTimer_NB[MAX_NUM_CCs];
long rach_powerRampingStep_NB[MAX_NUM_CCs];
long rach_preambleInitialReceivedTargetPower_NB[MAX_NUM_CCs];
long rach_preambleTransMax_CE_NB[MAX_NUM_CCs];
//BCCH
long bcch_modificationPeriodCoeff_NB[MAX_NUM_CCs];
//PCCH
long pcch_defaultPagingCycle_NB[MAX_NUM_CCs];
long pcch_nB_NB[MAX_NUM_CCs];
long pcch_npdcch_NumRepetitionPaging_NB[MAX_NUM_CCs];
//NPRACH
long nprach_CP_Length[MAX_NUM_CCs];
long nprach_rsrp_range[MAX_NUM_CCs];
long nprach_Periodicity[MAX_NUM_CCs];
long nprach_StartTime[MAX_NUM_CCs];
long nprach_SubcarrierOffset[MAX_NUM_CCs];
long nprach_NumSubcarriers[MAX_NUM_CCs];
long nprach_SubcarrierMSG3_RangeStart[MAX_NUM_CCs];
long maxNumPreambleAttemptCE_NB[MAX_NUM_CCs];
long numRepetitionsPerPreambleAttempt_NB[MAX_NUM_CCs];
long npdcch_NumRepetitions_RA[MAX_NUM_CCs];
long npdcch_StartSF_CSS_RA[MAX_NUM_CCs];
long npdcch_Offset_RA[MAX_NUM_CCs];
//NPDSCH
long npdsch_nrs_Power[MAX_NUM_CCs];
//NPUSCH
long npusch_ack_nack_numRepetitions_NB[MAX_NUM_CCs];
long npusch_srs_SubframeConfig_NB[MAX_NUM_CCs];
long npusch_threeTone_CyclicShift_r13[MAX_NUM_CCs];
long npusch_sixTone_CyclicShift_r13[MAX_NUM_CCs];
BOOLEAN_t npusch_groupHoppingEnabled[MAX_NUM_CCs];
long npusch_groupAssignmentNPUSCH_r13[MAX_NUM_CCs];
//DL_GapConfig
long dl_GapThreshold_NB[MAX_NUM_CCs];
long dl_GapPeriodicity_NB[MAX_NUM_CCs];
long dl_GapDurationCoeff_NB[MAX_NUM_CCs];
//Uplink power control Common
long npusch_p0_NominalNPUSCH[MAX_NUM_CCs];
long npusch_alpha[MAX_NUM_CCs];
long deltaPreambleMsg3[MAX_NUM_CCs];
//UE timers and constants
long ue_TimersAndConstants_t300_NB[MAX_NUM_CCs];
long ue_TimersAndConstants_t301_NB[MAX_NUM_CCs];
long ue_TimersAndConstants_t310_NB[MAX_NUM_CCs];
long ue_TimersAndConstants_t311_NB[MAX_NUM_CCs];
long ue_TimersAndConstants_n310_NB[MAX_NUM_CCs];
long ue_TimersAndConstants_n311_NB[MAX_NUM_CCs];
//---------------------------------------------------------------------------
int eMBMS_configured; int eMBMS_configured;
int eMTC_configured; int eMTC_configured;
int SL_configured; int SL_configured;
......
File mode changed from 100644 to 100755
...@@ -59,64 +59,6 @@ extern RAN_CONTEXT_t RC; ...@@ -59,64 +59,6 @@ extern RAN_CONTEXT_t RC;
///////////////////////////// NB-IoT parameters /////////////////////////////////////
//NB-IoT------------------------------------------------------------
//RACH
RRC_CONFIGURATION_REQ (msg_p).rach_raResponseWindowSize_NB[CC_id] = enb_properties->properties[enb_id]->rach_raResponseWindowSize_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).rach_macContentionResolutionTimer_NB[CC_id] = enb_properties->properties[enb_id]->rach_macContentionResolutionTimer_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).rach_powerRampingStep_NB[CC_id] = enb_properties->properties[enb_id]->rach_powerRampingStep_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).rach_preambleInitialReceivedTargetPower_NB[CC_id] = enb_properties->properties[enb_id]->rach_preambleInitialReceivedTargetPower_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).rach_preambleTransMax_CE_NB[CC_id] = enb_properties->properties[enb_id]->rach_preambleTransMax_CE_NB[CC_id];
//BCCH
RRC_CONFIGURATION_REQ (msg_p).bcch_modificationPeriodCoeff_NB[CC_id] = enb_properties->properties[enb_id]->bcch_modificationPeriodCoeff_NB[CC_id];
//PCCH
RRC_CONFIGURATION_REQ (msg_p).pcch_defaultPagingCycle_NB[CC_id] = enb_properties->properties[enb_id]->pcch_defaultPagingCycle_NB[CC_id];
//NPRACH
RRC_CONFIGURATION_REQ (msg_p).nprach_CP_Length[CC_id] = enb_properties->properties[enb_id]->nprach_CP_Length[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_rsrp_range[CC_id] = enb_properties->properties[enb_id]->nprach_rsrp_range[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_Periodicity[CC_id] = enb_properties->properties[enb_id]->nprach_Periodicity[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_StartTime[CC_id] = enb_properties->properties[enb_id]->nprach_StartTime[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_SubcarrierOffset[CC_id] = enb_properties->properties[enb_id]->nprach_SubcarrierOffset[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_NumSubcarriers[CC_id] = enb_properties->properties[enb_id]->nprach_NumSubcarriers[CC_id];
RRC_CONFIGURATION_REQ (msg_p).nprach_SubcarrierMSG3_RangeStart[CC_id] = enb_properties->properties[enb_id]->nprach_SubcarrierMSG3_RangeStart[CC_id];
RRC_CONFIGURATION_REQ (msg_p).maxNumPreambleAttemptCE_NB[CC_id] = enb_properties->properties[enb_id]->maxNumPreambleAttemptCE_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npdcch_NumRepetitions_RA[CC_id] = enb_properties->properties[enb_id]->npdcch_NumRepetitions_RA[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npdcch_StartSF_CSS_RA[CC_id] = enb_properties->properties[enb_id]->npdcch_StartSF_CSS_RA[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npdcch_Offset_RA[CC_id] = enb_properties->properties[enb_id]->npdcch_Offset_RA[CC_id];
//NPDSCH
RRC_CONFIGURATION_REQ (msg_p).npdsch_nrs_Power[CC_id] = enb_properties->properties[enb_id]->npdsch_nrs_Power[CC_id];
//NPUSCH
RRC_CONFIGURATION_REQ (msg_p).npusch_ack_nack_numRepetitions_NB[CC_id] = enb_properties->properties[enb_id]->npusch_ack_nack_numRepetitions_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_srs_SubframeConfig_NB[CC_id] = enb_properties->properties[enb_id]->npusch_srs_SubframeConfig_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_threeTone_CyclicShift_r13[CC_id] = enb_properties->properties[enb_id]->npusch_threeTone_CyclicShift_r13[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_sixTone_CyclicShift_r13[CC_id] = enb_properties->properties[enb_id]->npusch_sixTone_CyclicShift_r13[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_groupHoppingEnabled[CC_id] = enb_properties->properties[enb_id]->npusch_groupHoppingEnabled[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_groupAssignmentNPUSCH_r13[CC_id] = enb_properties->properties[enb_id]->npusch_groupAssignmentNPUSCH_r13[CC_id];
//DL_GapConfig
RRC_CONFIGURATION_REQ (msg_p).dl_GapThreshold_NB[CC_id] = enb_properties->properties[enb_id]->dl_GapThreshold_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).dl_GapPeriodicity_NB[CC_id] = enb_properties->properties[enb_id]->dl_GapPeriodicity_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).dl_GapDurationCoeff_NB[CC_id] = enb_properties->properties[enb_id]->dl_GapDurationCoeff_NB[CC_id];
//Uplink power control Common
RRC_CONFIGURATION_REQ (msg_p).npusch_p0_NominalNPUSCH[CC_id] = enb_properties->properties[enb_id]->npusch_p0_NominalNPUSCH[CC_id];
RRC_CONFIGURATION_REQ (msg_p).npusch_alpha[CC_id] = enb_properties->properties[enb_id]->npusch_alpha[CC_id];
RRC_CONFIGURATION_REQ (msg_p).deltaPreambleMsg3[CC_id] = enb_properties->properties[enb_id]->deltaPreambleMsg3[CC_id];
//UE timers and constants
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_t300_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_t300_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_t301_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_t301_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_t310_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_t310_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_t311_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_t311_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_n310_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_n310_NB[CC_id];
RRC_CONFIGURATION_REQ (msg_p).ue_TimersAndConstants_n311_NB[CC_id] = enb_properties->properties[enb_id]->ue_TimersAndConstants_n311_NB[CC_id];
////////////////////////////////////////////////////////////////////////////////////
}
itti_send_msg_to_task (TASK_RRC_ENB, ENB_MODULE_ID_TO_INSTANCE(enb_id), msg_p);
}
/*------------------------------------------------------------------------------*/
static uint32_t eNB_app_register(ngran_node_t node_type,uint32_t enb_id_start, uint32_t enb_id_end) { static uint32_t eNB_app_register(ngran_node_t node_type,uint32_t enb_id_start, uint32_t enb_id_end) {
uint32_t enb_id; uint32_t enb_id;
......
...@@ -22,9 +22,11 @@ ...@@ -22,9 +22,11 @@
#include "openair2/PHY_INTERFACE/IF_Module_NB_IoT.h" #include "openair2/PHY_INTERFACE/IF_Module_NB_IoT.h"
#include "config_NB_IoT.h" #include "config_NB_IoT.h"
// MAC definition // MAC definition
#define MAX_FRAME 0xfffff //#define MAX_FRAME 0xfffff
#define NUM_FRAME 0x100000 //#define NUM_FRAME 0x100000
#define MAX_SUBFRAME 10485760 //#define MAX_SUBFRAME 10485760
#define MAX_FRAME 0xfff
#define MAX_SUBFRAME 40960
#define MAX(a, b) (((a)>(b))?(a):(b)) #define MAX(a, b) (((a)>(b))?(a):(b))
...@@ -62,8 +64,8 @@ ...@@ -62,8 +64,8 @@
/*!\brief DTCH DRB1 logical channel */ /*!\brief DTCH DRB1 logical channel */
#define DTCH 3 // LCID #define DTCH 3 // LCID
/*!\brief MCCH logical channel */ /*!\brief MCCH logical channel */
//#define MCCH 4 #define MCCH 4
#define MCCH 62 //#define MCCH 62
/*!\brief MTCH logical channel */ /*!\brief MTCH logical channel */
#define MTCH 1 #define MTCH 1
// DLSCH LCHAN ID // DLSCH LCHAN ID
...@@ -209,9 +211,12 @@ typedef struct { ...@@ -209,9 +211,12 @@ typedef struct {
int prev; int prev;
// MSG4 complete // MSG4 complete
int RRC_connected; int RRC_connected;
uint8_t flag_schedule_success;
// UE active flag // UE active flag
int active; int active;
//boolean_t active;
uint8_t allocated_data_size_ul;
} UE_TEMPLATE_NB_IoT; } UE_TEMPLATE_NB_IoT;
// link list of uplink resource node // link list of uplink resource node
...@@ -327,6 +332,7 @@ typedef struct { ...@@ -327,6 +332,7 @@ typedef struct {
/// DCI template and MAC connection parameters for UEs /// DCI template and MAC connection parameters for UEs
UE_TEMPLATE_NB_IoT UE_template_NB_IoT[MAX_MAX_MOBILES_PER_ENB_NB_IoT]; UE_TEMPLATE_NB_IoT UE_template_NB_IoT[MAX_MAX_MOBILES_PER_ENB_NB_IoT];
UE_SCHED_CTRL_NB_IoT_t UE_sched_ctrl_NB_IoT[MAX_MAX_MOBILES_PER_ENB_NB_IoT];
/// NPDCCH Period and searching space info /// NPDCCH Period and searching space info
NPDCCH_config_dedicated_NB_IoT_t NPDCCH_config_dedicated; NPDCCH_config_dedicated_NB_IoT_t NPDCCH_config_dedicated;
//int next[MAX_MAX_MOBILES_PER_ENB_NB_IoT]; //int next[MAX_MAX_MOBILES_PER_ENB_NB_IoT];
...@@ -631,6 +637,8 @@ typedef struct { ...@@ -631,6 +637,8 @@ typedef struct {
nprach_parameters_NB_IoT_t nprach_list[3]; nprach_parameters_NB_IoT_t nprach_list[3];
nfapi_config_request_t config;
//DLSF Table //DLSF Table
DLSF_INFO_t DLSF_information; DLSF_INFO_t DLSF_information;
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -42,9 +42,10 @@ ...@@ -42,9 +42,10 @@
#if (LTE_RRC_VERSION >= MAKE_VERSION(9, 0, 0)) #if (LTE_RRC_VERSION >= MAKE_VERSION(9, 0, 0))
#include "LTE_PMCH-InfoList-r9.h" #include "LTE_PMCH-InfoList-r9.h"
#endif #endif
#include "ENB_APP/enb_paramdef_NB_IoT.h"
#include "LAYER2/MAC/mac_extern.h" #include "LAYER2/MAC/mac_extern.h"
#include "assertions.h" #include "assertions.h"
#include "RRC/LITE/proto_NB_IoT.h"
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP, rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP,
const LTE_SRB_ToAddModList_t * const srb2add_listP, const LTE_SRB_ToAddModList_t * const srb2add_listP,
...@@ -105,36 +106,36 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP ...@@ -105,36 +106,36 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP
case LTE_RLC_Config_PR_NOTHING: case LTE_RLC_Config_PR_NOTHING:
break; break;
case RLC_Config_PR_am: // case RLC_Config_PR_am:
/****************************************config srb1********************************************/ /****************************************config srb1********************************************/
if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, rb_id, lc_id, RLC_MODE_AM) != NULL) { // if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, rb_id, lc_id, RLC_MODE_AM) != NULL) {
config_req_rlc_am_asn1 ( // config_req_rlc_am_asn1 (
ctxt_pP, // ctxt_pP,
SRB_FLAG_YES, // SRB_FLAG_YES,
&srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am, // &srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am,
rb_id, lc_id); // rb_id, lc_id);
} else { // } else {
LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n", // LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n",
PROTOCOL_CTXT_ARGS(ctxt_pP), // PROTOCOL_CTXT_ARGS(ctxt_pP),
rb_id); // rb_id);
} // }
/***********************************************************************************************/ /***********************************************************************************************/
/****************************************config srb1bis********************************************/ /****************************************config srb1bis********************************************/
if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, 3, 3, RLC_MODE_AM) != NULL) { // if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, 3, 3, RLC_MODE_AM) != NULL) {
config_req_rlc_am_asn1 ( // config_req_rlc_am_asn1 (
ctxt_pP, // ctxt_pP,
SRB_FLAG_YES, // SRB_FLAG_YES,
&srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am, // &srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am,
3, 3); // 3, 3);
} else { // } else {
LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n", // LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n",
PROTOCOL_CTXT_ARGS(ctxt_pP), // PROTOCOL_CTXT_ARGS(ctxt_pP),
rb_id); // rb_id);
} // }
/***************************************************************************************************/ /***************************************************************************************************/
break; // break;
case LTE_RLC_Config_PR_am: case LTE_RLC_Config_PR_am:
if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, rb_id, lc_id, RLC_MODE_AM if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, rb_id, lc_id, RLC_MODE_AM
...@@ -148,7 +149,20 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP ...@@ -148,7 +149,20 @@ rlc_op_status_t rrc_rlc_config_asn1_req (const protocol_ctxt_t * const ctxt_pP
SRB_FLAG_YES, SRB_FLAG_YES,
&srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am, &srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am,
rb_id, lc_id); rb_id, lc_id);
} else { }
/****************************************config srb1bis for NB-IoT********************************************/
else if(NBconfig.NB_IoT_configured > 0)
{
if (rrc_rlc_add_rlc (ctxt_pP, SRB_FLAG_YES, MBMS_FLAG_NO, 3, 3, RLC_MODE_AM) != NULL) {
config_req_rlc_am_asn1 (
ctxt_pP,
SRB_FLAG_YES,
&srb_toaddmod_p->rlc_Config->choice.explicitValue.choice.am,
3, 3);
}
}
/************************************************************************************************************/
else {
LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n", LOG_E(RLC, PROTOCOL_CTXT_FMT" ERROR IN ALLOCATING SRB %d \n",
PROTOCOL_CTXT_ARGS(ctxt_pP), PROTOCOL_CTXT_ARGS(ctxt_pP),
rb_id); rb_id);
...@@ -599,7 +613,7 @@ rlc_op_status_t rrc_rlc_remove_rlc ( ...@@ -599,7 +613,7 @@ rlc_op_status_t rrc_rlc_remove_rlc (
#endif #endif
#if defined(Rel10) || defined(Rel14) #if (LTE_RRC_VERSION >= MAKE_VERSION(10, 0, 0))
rlc_mbms_id_t *mbms_id_p = NULL; rlc_mbms_id_t *mbms_id_p = NULL;
#endif rrc_rlc_remove_rlc #endif rrc_rlc_remove_rlc
#ifdef OAI_EMU #ifdef OAI_EMU
......
...@@ -443,7 +443,7 @@ typedef struct eNB_RRC_INST_NB_IoT_s { ...@@ -443,7 +443,7 @@ typedef struct eNB_RRC_INST_NB_IoT_s {
hash_table_t *s1ap_id2_s1ap_ids ; // key is content is rrc_ue_s1ap_ids_t hash_table_t *s1ap_id2_s1ap_ids ; // key is content is rrc_ue_s1ap_ids_t
//RRC configuration //RRC configuration
RrcConfigurationReq configuration; //rrc_messages_types.h NbIoTRrcConfigurationReq configuration; //rrc_messages_types.h
// other PLMN parameters // other PLMN parameters
/// Mobile country code /// Mobile country code
......
...@@ -68,7 +68,7 @@ uint8_t get_NB_IoT_SIB23_size(void); ...@@ -68,7 +68,7 @@ uint8_t get_NB_IoT_SIB23_size(void);
long *get_NB_IoT_SIB1_eutracontrolregionsize(void); long *get_NB_IoT_SIB1_eutracontrolregionsize(void);
void init_testing_NB_IoT(uint8_t Mod_id, int CC_id, rrc_eNB_carrier_data_NB_IoT_t *carrier, RrcConfigurationReq *configuration, uint32_t frame, uint32_t hyper_frame); void init_testing_NB_IoT(uint8_t Mod_id, int CC_id, rrc_eNB_carrier_data_NB_IoT_t *carrier, NbIoTRrcConfigurationReq *configuration, uint32_t frame, uint32_t hyper_frame);
/*------------------------common_nb_iot.c----------------------------------------*/ /*------------------------common_nb_iot.c----------------------------------------*/
...@@ -414,7 +414,7 @@ void rrc_config_buffer_NB_IoT( ...@@ -414,7 +414,7 @@ void rrc_config_buffer_NB_IoT(
char openair_rrc_eNB_configuration_NB_IoT( char openair_rrc_eNB_configuration_NB_IoT(
const module_id_t enb_mod_idP, const module_id_t enb_mod_idP,
RrcConfigurationReq* configuration NbIoTRrcConfigurationReq* configuration
); );
//----------------------------- //-----------------------------
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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