diff --git a/openair2/ENB_APP/enb_app.c b/openair2/ENB_APP/enb_app.c index 9490c3f5d86caa29f0baa449d4ac93f5cce8570b..0f38b62c29fffc8ae291a4465caac473c7126356 100644 --- a/openair2/ENB_APP/enb_app.c +++ b/openair2/ENB_APP/enb_app.c @@ -44,6 +44,8 @@ # include "s1ap_eNB.h" # include "sctp_eNB_task.h" # include "gtpv1u_eNB_task.h" +# else +# define EPC_MODE_ENABLED 0 # endif #include "openair1/PHY/INIT/phy_init.h" @@ -182,15 +184,15 @@ void *eNB_app_task(void *args_p) configure_rrc(enb_id); } - if (EPC_MODE_ENABLED) { +# if defined(ENABLE_USE_MME) /* Try to register each eNB */ registered_enb = 0; register_enb_pending = eNB_app_register (enb_id_start, enb_id_end);//, enb_properties_p); - } else { +#else /* Start L2L1 task */ msg_p = itti_alloc_new_message(TASK_ENB_APP, INITIALIZE_MESSAGE); itti_send_msg_to_task(TASK_L2L1, INSTANCE_DEFAULT, msg_p); - } +#endif do { // Wait for a message @@ -209,7 +211,7 @@ void *eNB_app_task(void *args_p) break; case S1AP_REGISTER_ENB_CNF: - if (EPC_MODE_ENABLED) { +# if defined(ENABLE_USE_MME) LOG_I(ENB_APP, "[eNB %d] Received %s: associated MME %d\n", instance, ITTI_MSG_NAME (msg_p), S1AP_REGISTER_ENB_CNF(msg_p).nb_mme); @@ -246,7 +248,7 @@ void *eNB_app_task(void *args_p) } } } - } /*if (EPC_MODE_ENABLED) */ +#endif break; case S1AP_DEREGISTERED_ENB_IND: @@ -259,7 +261,7 @@ void *eNB_app_task(void *args_p) break; case TIMER_HAS_EXPIRED: - if (EPC_MODE_ENABLED) { +# if defined(ENABLE_USE_MME) LOG_I(ENB_APP, " Received %s: timer_id %ld\n", ITTI_MSG_NAME (msg_p), TIMER_HAS_EXPIRED(msg_p).timer_id); if (TIMER_HAS_EXPIRED (msg_p).timer_id == enb_register_retry_timer_id) { @@ -267,7 +269,7 @@ void *eNB_app_task(void *args_p) registered_enb = 0; register_enb_pending = eNB_app_register (enb_id_start, enb_id_end);//, enb_properties_p); } - } /*if (EPC_MODE_ENABLED) */ +#endif break; diff --git a/openair2/ENB_APP/enb_config.c b/openair2/ENB_APP/enb_config.c index 4cca5ff8fe256ed95fbfd1a552fa0a26c98d561e..488286f595a367124664dafe66105e825358929c 100644 --- a/openair2/ENB_APP/enb_config.c +++ b/openair2/ENB_APP/enb_config.c @@ -40,7 +40,9 @@ # if defined(ENABLE_USE_MME) # include "s1ap_eNB.h" # include "sctp_eNB_task.h" -# endif +# else +# define EPC_MODE_ENABLED 0 +# endif #endif #include "sctp_default_values.h" #include "SystemInformationBlockType2.h" @@ -2350,7 +2352,9 @@ void RCConfig(void) { printf("Getting ENBSParams\n"); config_get( ENBSParams,sizeof(ENBSParams)/sizeof(paramdef_t),NULL); +# if defined(ENABLE_USE_MME) EPC_MODE_ENABLED = ((*ENBSParams[ENB_NOS1_IDX].uptr) == 0); +#endif RC.nb_inst = ENBSParams[ENB_ACTIVE_ENBS_IDX].numelt; if (RC.nb_inst > 0) { diff --git a/openair2/RRC/LTE/rrc_eNB.c b/openair2/RRC/LTE/rrc_eNB.c index cac49690afe8fe28497c21b8de046839d5d60303..10590bc0194988daa6cea1d8ce0b1af233b4523a 100644 --- a/openair2/RRC/LTE/rrc_eNB.c +++ b/openair2/RRC/LTE/rrc_eNB.c @@ -85,6 +85,8 @@ # else # include "../../S1AP/s1ap_eNB.h" # endif +#else +# define EPC_MODE_ENABLED 0 #endif #include "pdcp.h" @@ -1415,7 +1417,7 @@ rrc_eNB_process_RRCConnectionReestablishmentComplete( ue_context_pP->ue_context.Srb1.Active = 1; //ue_context_pP->ue_context.Srb2.Srb_info.Srb_id = 2; - if (EPC_MODE_ENABLED) { +#if defined(ENABLE_USE_MME) hashtable_rc_t h_rc; int j; rrc_ue_s1ap_ids_t* rrc_ue_s1ap_ids_p = NULL; @@ -1459,18 +1461,18 @@ rrc_eNB_process_RRCConnectionReestablishmentComplete( ctxt_pP->instance, &create_tunnel_req, reestablish_rnti); - } /* EPC_MODE_ENABLED */ +#endif /* Update RNTI in ue_context */ ue_context_pP->ue_id_rnti = ctxt_pP->rnti; // here ue_id_rnti is just a key, may be something else ue_context_pP->ue_context.rnti = ctxt_pP->rnti; - if(EPC_MODE_ENABLED) { +#if defined(ENABLE_USE_MME) uint8_t send_security_mode_command = FALSE; rrc_pdcp_config_security( ctxt_pP, ue_context_pP, send_security_mode_command); LOG_D(RRC, "set security successfully \n"); - } +#endif // Measurement ID list MeasId_list = CALLOC(1, sizeof(*MeasId_list)); memset((void *)MeasId_list, 0, sizeof(*MeasId_list)); @@ -6662,7 +6664,7 @@ rrc_eNB_decode_dcch( } } #if defined(ENABLE_ITTI) - if (EPC_MODE_ENABLED == 1) { +#if defined(ENABLE_USE_MME) if (dedicated_DRB == 1){ // rrc_eNB_send_S1AP_E_RAB_SETUP_RESP(ctxt_pP, // ue_context_p, @@ -6727,7 +6729,7 @@ if (ue_context_p->ue_context.nb_of_modify_e_rabs > 0) { } } } - } +#endif #else // establish a dedicated bearer if (dedicated_DRB == 0 ) { // ue_context_p->ue_context.e_rab[0].status = E_RAB_STATUS_ESTABLISHED; diff --git a/targets/COMMON/create_tasks.c b/targets/COMMON/create_tasks.c index f8230928ddf9a5f4948de1abcc07b26fa2bcd840..df3ce8992fefbf09db20590c01bd77050d470df7 100644 --- a/targets/COMMON/create_tasks.c +++ b/targets/COMMON/create_tasks.c @@ -31,6 +31,8 @@ # include "nas_ue_task.h" # include "udp_eNB_task.h" # include "gtpv1u_eNB_task.h" +# else +# define EPC_MODE_ENABLED 0 # endif # if ENABLE_RAL # include "lteRALue.h" @@ -59,7 +61,7 @@ int create_tasks(uint32_t enb_nb) return -1; } } - +# if defined(ENABLE_USE_MME) if (EPC_MODE_ENABLED) { if (enb_nb > 0) { if (itti_create_task (TASK_SCTP, sctp_eNB_task, NULL) < 0) { @@ -85,7 +87,7 @@ int create_tasks(uint32_t enb_nb) } } /* if (EPC_MODE_ENABLED) */ - +#endif if (enb_nb > 0) { LOG_I(RRC,"Creating RRC eNB Task\n"); diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c index a011a6253b7221970a72f035d81cfde77b4f748c..dc9400a97194c98526822aebac96672f11e6bbe3 100644 --- a/targets/RT/USER/lte-softmodem.c +++ b/targets/RT/USER/lte-softmodem.c @@ -108,6 +108,10 @@ unsigned char scope_enb_num_ue = 2; static pthread_t forms_thread; //xforms #endif //XFORMS +#ifndef ENABLE_USE_MME +#define EPC_MODE_ENABLED 0 +#endif + pthread_cond_t nfapi_sync_cond; pthread_mutex_t nfapi_sync_mutex; int nfapi_sync_var=-1; //!< protected by mutex \ref nfapi_sync_mutex