Commit f14023ec authored by Raphael Defosseux's avatar Raphael Defosseux

Merge remote-tracking branch...

Merge remote-tracking branch 'origin/374-missing-rrc-inactivity-timer-missing-default-drx-ie-in-s1-setup-ue-s1-id-unknown-after-detach-for-switch-off' into develop_integration_w48
parents 814b967c f8ccd284
This diff is collapsed.
...@@ -28,9 +28,9 @@ ...@@ -28,9 +28,9 @@
#include "common/ran_context.h" #include "common/ran_context.h"
char* namepointer_chMag ; char *namepointer_chMag ;
char fmageren_name2[512]; char fmageren_name2[512];
char* namepointer_log2; char *namepointer_log2;
#include "PHY/LTE_REFSIG/primary_synch.h" #include "PHY/LTE_REFSIG/primary_synch.h"
...@@ -45,7 +45,7 @@ int16_t *primary_synch2_time; ...@@ -45,7 +45,7 @@ int16_t *primary_synch2_time;
PHY_VARS_UE ***PHY_vars_UE_g; PHY_VARS_UE ***PHY_vars_UE_g;
LTE_DL_FRAME_PARMS *lte_frame_parms_g; LTE_DL_FRAME_PARMS *lte_frame_parms_g;
#else #else
PHY_VARS_UE * PHY_vars_UE_g[MAX_UE][MAX_NUM_CCs]={NULL}; PHY_VARS_UE *PHY_vars_UE_g[MAX_UE][MAX_NUM_CCs]= {NULL};
#endif #endif
...@@ -62,10 +62,10 @@ char mode_string[4][20] = {"NOT SYNCHED","PRACH","RAR","PUSCH"}; ...@@ -62,10 +62,10 @@ char mode_string[4][20] = {"NOT SYNCHED","PRACH","RAR","PUSCH"};
#ifndef OPENAIR2 #ifndef OPENAIR2
unsigned char NB_eNB_INST=0; unsigned char NB_eNB_INST=0;
unsigned char NB_UE_INST=0; unsigned char NB_UE_INST=0;
unsigned char NB_RN_INST=0; unsigned char NB_RN_INST=0;
unsigned char NB_INST=0; unsigned char NB_INST=0;
#endif #endif
unsigned int ULSCH_max_consecutive_errors = 20; unsigned int ULSCH_max_consecutive_errors = 20;
...@@ -134,9 +134,9 @@ double beta2_dlsch[6][MCS_COUNT] = { {2.52163, 0.83231, 0.77472, 1.36536, 1.1682 ...@@ -134,9 +134,9 @@ double beta2_dlsch[6][MCS_COUNT] = { {2.52163, 0.83231, 0.77472, 1.36536, 1.1682
#ifdef OCP_FRAMEWORK #ifdef OCP_FRAMEWORK
#include <enums.h> #include <enums.h>
#else #else
char eNB_functions[6][20]={"eNodeB_3GPP","eNodeB_3GPP_BBU","NGFI_RAU_IF4p5","NGFI_RRU_IF5","NGFI_RRU_IF4p5",}; char eNB_functions[6][20]= {"eNodeB_3GPP","eNodeB_3GPP_BBU","NGFI_RAU_IF4p5","NGFI_RRU_IF5","NGFI_RRU_IF4p5",};
char eNB_timing[2][20]={"synch_to_ext_device","synch_to_other"}; char eNB_timing[2][20]= {"synch_to_ext_device","synch_to_other"};
char ru_if_types[MAX_RU_IF_TYPES][20]={"local RF","IF5 RRU","IF5 Mobipass","IF4p5 RRU","IF1pp RRU"}; char ru_if_types[MAX_RU_IF_TYPES][20]= {"local RF","IF5 RRU","IF5 Mobipass","IF4p5 RRU","IF1pp RRU"};
#endif #endif
/// lookup table for unscrambling in RX /// lookup table for unscrambling in RX
......
This diff is collapsed.
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
# define __PLATFORM_TYPES_H__ # define __PLATFORM_TYPES_H__
#if !defined(NAS_NETLINK) #if !defined(NAS_NETLINK)
#include <stdint.h> #include <stdint.h>
#endif #endif
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
...@@ -42,19 +42,19 @@ ...@@ -42,19 +42,19 @@
* let's protect potential redefinition * let's protect potential redefinition
*/ */
#ifndef _BOOLEAN_T_DEFINED_ #ifndef _BOOLEAN_T_DEFINED_
#define _BOOLEAN_T_DEFINED_ #define _BOOLEAN_T_DEFINED_
typedef signed char boolean_t; typedef signed char boolean_t;
#if !defined(TRUE) #if !defined(TRUE)
#define TRUE (boolean_t)0x01 #define TRUE (boolean_t)0x01
#endif #endif
#if !defined(FALSE) #if !defined(FALSE)
#define FALSE (boolean_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 /* _BOOLEAN_T_DEFINED_ */
...@@ -65,7 +65,7 @@ typedef int32_t sdu_size_t; ...@@ -65,7 +65,7 @@ typedef int32_t sdu_size_t;
typedef uint32_t frame_t; typedef uint32_t frame_t;
typedef int32_t sframe_t; typedef int32_t sframe_t;
typedef uint32_t sub_frame_t; typedef uint32_t sub_frame_t;
typedef uint16_t module_id_t; typedef uint16_t module_id_t;
typedef uint8_t slice_id_t; typedef uint8_t slice_id_t;
typedef uint8_t eNB_index_t; typedef uint8_t eNB_index_t;
typedef uint16_t ue_id_t; typedef uint16_t ue_id_t;
...@@ -102,19 +102,19 @@ typedef enum rb_type_e { ...@@ -102,19 +102,19 @@ typedef enum rb_type_e {
} rb_type_t; } rb_type_t;
typedef enum { typedef enum {
CR_ROUND = 0, CR_ROUND = 0,
CR_SRB12 = 1, CR_SRB12 = 1,
CR_HOL = 2, CR_HOL = 2,
CR_LC = 3, CR_LC = 3,
CR_CQI = 4, CR_CQI = 4,
CR_LCP = 5, CR_LCP = 5,
CR_NUM = 6 CR_NUM = 6
} sorting_criterion_t; } sorting_criterion_t;
typedef enum { typedef enum {
POL_FAIR = 0, POL_FAIR = 0,
POL_GREEDY = 1, POL_GREEDY = 1,
POL_NUM = 2 POL_NUM = 2
} accounting_policy_t; } accounting_policy_t;
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// PHY TYPES // PHY TYPES
...@@ -188,19 +188,19 @@ typedef uint32_t m_tmsi_t; ...@@ -188,19 +188,19 @@ typedef uint32_t m_tmsi_t;
//Random UE identity length = 40 bits //Random UE identity length = 40 bits
#if ! defined(NOT_A_RANDOM_UE_IDENTITY) #if ! defined(NOT_A_RANDOM_UE_IDENTITY)
#define NOT_A_RANDOM_UE_IDENTITY (uint64_t)0xFFFFFFFF #define NOT_A_RANDOM_UE_IDENTITY (uint64_t)0xFFFFFFFF
#endif #endif
#if ! defined(NOT_A_RNTI) #if ! defined(NOT_A_RNTI)
#define NOT_A_RNTI (rnti_t)0 #define NOT_A_RNTI (rnti_t)0
#endif #endif
#if ! defined(M_RNTI) #if ! defined(M_RNTI)
#define M_RNTI (rnti_t)0xFFFD #define M_RNTI (rnti_t)0xFFFD
#endif #endif
#if ! defined(P_RNTI) #if ! defined(P_RNTI)
#define P_RNTI (rnti_t)0xFFFE #define P_RNTI (rnti_t)0xFFFE
#endif #endif
#if ! defined(SI_RNTI) #if ! defined(SI_RNTI)
#define SI_RNTI (rnti_t)0xFFFF #define SI_RNTI (rnti_t)0xFFFF
#endif #endif
typedef enum config_action_e { typedef enum config_action_e {
CONFIG_ACTION_NULL = 0, CONFIG_ACTION_NULL = 0,
...@@ -225,7 +225,7 @@ typedef uint8_t ebi_t; // eps bearer id ...@@ -225,7 +225,7 @@ typedef uint8_t ebi_t; // eps bearer id
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// may be ITTI not enabled, but type instance is useful also for OTG, // may be ITTI not enabled, but type instance is useful also for OTG,
#if !defined(instance_t) #if !defined(instance_t)
typedef uint16_t instance_t; typedef uint16_t instance_t;
#endif #endif
typedef struct protocol_ctxt_s { typedef struct protocol_ctxt_s {
module_id_t module_id; /*!< \brief Virtualized module identifier */ module_id_t module_id; /*!< \brief Virtualized module identifier */
...@@ -247,51 +247,51 @@ typedef struct protocol_ctxt_s { ...@@ -247,51 +247,51 @@ typedef struct protocol_ctxt_s {
#define MODULE_ID_TO_INSTANCE(mODULE_iD, iNSTANCE, eNB_fLAG) \ #define MODULE_ID_TO_INSTANCE(mODULE_iD, iNSTANCE, eNB_fLAG) \
if(eNB_fLAG == ENB_FLAG_YES) \ if(eNB_fLAG == ENB_FLAG_YES) \
iNSTANCE = ENB_MODULE_ID_TO_INSTANCE(mODULE_iD); \ iNSTANCE = ENB_MODULE_ID_TO_INSTANCE(mODULE_iD); \
else \ else \
iNSTANCE = UE_MODULE_ID_TO_INSTANCE(mODULE_iD) iNSTANCE = UE_MODULE_ID_TO_INSTANCE(mODULE_iD)
#define INSTANCE_TO_MODULE_ID(iNSTANCE, mODULE_iD, eNB_fLAG) \ #define INSTANCE_TO_MODULE_ID(iNSTANCE, mODULE_iD, eNB_fLAG) \
if(eNB_fLAG == ENB_FLAG_YES) \ if(eNB_fLAG == ENB_FLAG_YES) \
mODULE_iD = ENB_INSTANCE_TO_MODULE_ID(iNSTANCE); \ mODULE_iD = ENB_INSTANCE_TO_MODULE_ID(iNSTANCE); \
else \ else \
mODULE_iD = UE_INSTANCE_TO_MODULE_ID(iNSTANCE) mODULE_iD = UE_INSTANCE_TO_MODULE_ID(iNSTANCE)
#define PROTOCOL_CTXT_COMPUTE_MODULE_ID(CtXt_h) \ #define PROTOCOL_CTXT_COMPUTE_MODULE_ID(CtXt_h) \
INSTANCE_TO_MODULE_ID( (CtXt_h)->instance , (CtXt_h)->module_id , (CtXt_h)->enb_flag ) INSTANCE_TO_MODULE_ID( (CtXt_h)->instance , (CtXt_h)->module_id , (CtXt_h)->enb_flag )
#define PROTOCOL_CTXT_COMPUTE_INSTANCE(CtXt_h) \ #define PROTOCOL_CTXT_COMPUTE_INSTANCE(CtXt_h) \
MODULE_ID_TO_INSTANCE( (CtXt_h)->module_id , (CtXt_h)->instance , (CtXt_h)->enb_flag ) MODULE_ID_TO_INSTANCE( (CtXt_h)->module_id , (CtXt_h)->instance , (CtXt_h)->enb_flag )
#define PROTOCOL_CTXT_SET_BY_MODULE_ID(Ctxt_Pp, mODULE_iD, eNB_fLAG, rNTI, fRAME, sUBfRAME, eNB_iNDEX) \ #define PROTOCOL_CTXT_SET_BY_MODULE_ID(Ctxt_Pp, mODULE_iD, eNB_fLAG, rNTI, fRAME, sUBfRAME, eNB_iNDEX) \
(Ctxt_Pp)->module_id = mODULE_iD; \ (Ctxt_Pp)->module_id = mODULE_iD; \
(Ctxt_Pp)->enb_flag = eNB_fLAG; \ (Ctxt_Pp)->enb_flag = eNB_fLAG; \
(Ctxt_Pp)->rnti = rNTI; \ (Ctxt_Pp)->rnti = rNTI; \
(Ctxt_Pp)->frame = fRAME; \ (Ctxt_Pp)->frame = fRAME; \
(Ctxt_Pp)->subframe = sUBfRAME; \ (Ctxt_Pp)->subframe = sUBfRAME; \
(Ctxt_Pp)->eNB_index = eNB_iNDEX; \ (Ctxt_Pp)->eNB_index = eNB_iNDEX; \
PROTOCOL_CTXT_COMPUTE_INSTANCE(Ctxt_Pp) PROTOCOL_CTXT_COMPUTE_INSTANCE(Ctxt_Pp)
#define PROTOCOL_CTXT_SET_BY_INSTANCE(Ctxt_Pp, iNSTANCE, eNB_fLAG, rNTI, fRAME, sUBfRAME) \ #define PROTOCOL_CTXT_SET_BY_INSTANCE(Ctxt_Pp, iNSTANCE, eNB_fLAG, rNTI, fRAME, sUBfRAME) \
(Ctxt_Pp)->instance = iNSTANCE; \ (Ctxt_Pp)->instance = iNSTANCE; \
(Ctxt_Pp)->enb_flag = eNB_fLAG; \ (Ctxt_Pp)->enb_flag = eNB_fLAG; \
(Ctxt_Pp)->rnti = rNTI; \ (Ctxt_Pp)->rnti = rNTI; \
(Ctxt_Pp)->frame = fRAME; \ (Ctxt_Pp)->frame = fRAME; \
(Ctxt_Pp)->subframe = sUBfRAME; \ (Ctxt_Pp)->subframe = sUBfRAME; \
PROTOCOL_CTXT_COMPUTE_MODULE_ID(Ctxt_Pp) PROTOCOL_CTXT_COMPUTE_MODULE_ID(Ctxt_Pp)
#define PROTOCOL_CTXT_FMT "[FRAME %05u][%s][MOD %02u][RNTI %" PRIx16 "]" #define PROTOCOL_CTXT_FMT "[FRAME %05u][%s][MOD %02u][RNTI %" PRIx16 "]"
#define PROTOCOL_CTXT_ARGS(CTXT_Pp) \ #define PROTOCOL_CTXT_ARGS(CTXT_Pp) \
(CTXT_Pp)->frame, \ (CTXT_Pp)->frame, \
((CTXT_Pp)->enb_flag == ENB_FLAG_YES) ? "eNB":" UE", \ ((CTXT_Pp)->enb_flag == ENB_FLAG_YES) ? "eNB":" UE", \
(CTXT_Pp)->module_id, \ (CTXT_Pp)->module_id, \
(CTXT_Pp)->rnti (CTXT_Pp)->rnti
#define CHECK_CTXT_ARGS(CTXT_Pp) #define CHECK_CTXT_ARGS(CTXT_Pp)
#define exit_fun(msg) exit_function(__FILE__,__FUNCTION__,__LINE__,msg) #define exit_fun(msg) exit_function(__FILE__,__FUNCTION__,__LINE__,msg)
void exit_function(const char* file, const char* function, const int line, const char* s); void exit_function(const char *file, const char *function, const int line, const char *s);
#endif #endif
...@@ -33,9 +33,9 @@ ...@@ -33,9 +33,9 @@
#include "rrc_types.h" #include "rrc_types.h"
#include "s1ap_messages_types.h" #include "s1ap_messages_types.h"
#ifdef CMAKER #ifdef CMAKER
#include "LTE_SystemInformationBlockType2.h" #include "LTE_SystemInformationBlockType2.h"
#else #else
#include "RRC/LTE/MESSAGES/LTE_SystemInformationBlockType2.h" #include "RRC/LTE/MESSAGES/LTE_SystemInformationBlockType2.h"
#endif #endif
#include "LTE_SL-OffsetIndicator-r12.h" #include "LTE_SL-OffsetIndicator-r12.h"
#include "LTE_SubframeBitmapSL-r12.h" #include "LTE_SubframeBitmapSL-r12.h"
...@@ -47,19 +47,19 @@ ...@@ -47,19 +47,19 @@
//-------------------------------------------------------------------------------------------// //-------------------------------------------------------------------------------------------//
// Messages for RRC logging // Messages for RRC logging
#if defined(DISABLE_ITTI_XER_PRINT) #if defined(DISABLE_ITTI_XER_PRINT)
#include "LTE_BCCH-DL-SCH-Message.h" #include "LTE_BCCH-DL-SCH-Message.h"
#include "LTE_DL-CCCH-Message.h" #include "LTE_DL-CCCH-Message.h"
#include "LTE_DL-DCCH-Message.h" #include "LTE_DL-DCCH-Message.h"
#include "LTE_UE-EUTRA-Capability.h" #include "LTE_UE-EUTRA-Capability.h"
#include "LTE_UL-CCCH-Message.h" #include "LTE_UL-CCCH-Message.h"
#include "LTE_UL-DCCH-Message.h" #include "LTE_UL-DCCH-Message.h"
typedef BCCH_DL_SCH_Message_t RrcDlBcchMessage; typedef BCCH_DL_SCH_Message_t RrcDlBcchMessage;
typedef DL_CCCH_Message_t RrcDlCcchMessage; typedef DL_CCCH_Message_t RrcDlCcchMessage;
typedef DL_DCCH_Message_t RrcDlDcchMessage; typedef DL_DCCH_Message_t RrcDlDcchMessage;
typedef UE_EUTRA_Capability_t RrcUeEutraCapability; typedef UE_EUTRA_Capability_t RrcUeEutraCapability;
typedef UL_CCCH_Message_t RrcUlCcchMessage; typedef UL_CCCH_Message_t RrcUlCcchMessage;
typedef UL_DCCH_Message_t RrcUlDcchMessage; typedef UL_DCCH_Message_t RrcUlDcchMessage;
#endif #endif
//-------------------------------------------------------------------------------------------// //-------------------------------------------------------------------------------------------//
...@@ -102,7 +102,8 @@ typedef struct RrcConfigurationReq_s { ...@@ -102,7 +102,8 @@ typedef struct RrcConfigurationReq_s {
uint8_t mnc_digit_length[PLMN_LIST_MAX_SIZE]; uint8_t mnc_digit_length[PLMN_LIST_MAX_SIZE];
uint8_t num_plmn; uint8_t num_plmn;
uint32_t rrc_inactivity_timer_thres; // for testing, maybe change later
paging_drx_t default_drx; paging_drx_t default_drx;
int16_t nb_cc; int16_t nb_cc;
lte_frame_type_t frame_type[MAX_NUM_CCs]; lte_frame_type_t frame_type[MAX_NUM_CCs];
...@@ -124,9 +125,9 @@ typedef struct RrcConfigurationReq_s { ...@@ -124,9 +125,9 @@ typedef struct RrcConfigurationReq_s {
long pucch_delta_shift[MAX_NUM_CCs]; long pucch_delta_shift[MAX_NUM_CCs];
long pucch_nRB_CQI[MAX_NUM_CCs]; long pucch_nRB_CQI[MAX_NUM_CCs];
long pucch_nCS_AN[MAX_NUM_CCs]; long pucch_nCS_AN[MAX_NUM_CCs];
//#if (LTE_RRC_VERSION < MAKE_VERSION(10, 0, 0)) //#if (LTE_RRC_VERSION < MAKE_VERSION(10, 0, 0))
long pucch_n1_AN[MAX_NUM_CCs]; long pucch_n1_AN[MAX_NUM_CCs];
//#endif //#endif
long pdsch_referenceSignalPower[MAX_NUM_CCs]; long pdsch_referenceSignalPower[MAX_NUM_CCs];
long pdsch_p_b[MAX_NUM_CCs]; long pdsch_p_b[MAX_NUM_CCs];
long pusch_n_SB[MAX_NUM_CCs]; long pusch_n_SB[MAX_NUM_CCs];
...@@ -188,7 +189,7 @@ typedef struct RrcConfigurationReq_s { ...@@ -188,7 +189,7 @@ typedef struct RrcConfigurationReq_s {
LTE_SL_OffsetIndicator_r12_PR rxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs]; LTE_SL_OffsetIndicator_r12_PR rxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long rxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs]; long rxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR rxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs]; LTE_SubframeBitmapSL_r12_PR rxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
char* rxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs]; char *rxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long rxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs]; long rxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs]; long rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
...@@ -204,7 +205,7 @@ typedef struct RrcConfigurationReq_s { ...@@ -204,7 +205,7 @@ typedef struct RrcConfigurationReq_s {
LTE_SL_OffsetIndicator_r12_PR discRxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs]; LTE_SL_OffsetIndicator_r12_PR discRxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs]; long discRxPool_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR discRxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs]; LTE_SubframeBitmapSL_r12_PR discRxPool_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
char* discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs]; char *discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long discRxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs]; long discRxPool_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs]; long discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
//for discRxPoolPS //for discRxPoolPS
...@@ -218,7 +219,7 @@ typedef struct RrcConfigurationReq_s { ...@@ -218,7 +219,7 @@ typedef struct RrcConfigurationReq_s {
LTE_SL_OffsetIndicator_r12_PR discRxPoolPS_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs]; LTE_SL_OffsetIndicator_r12_PR discRxPoolPS_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs]; long discRxPoolPS_ResourceConfig_offsetIndicator_choice[MAX_NUM_CCs];
LTE_SubframeBitmapSL_r12_PR discRxPoolPS_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs]; LTE_SubframeBitmapSL_r12_PR discRxPoolPS_ResourceConfig_subframeBitmap_present[MAX_NUM_CCs];
char* discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs]; char *discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_buf[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs]; long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_size[MAX_NUM_CCs];
long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs]; long discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused[MAX_NUM_CCs];
} RrcConfigurationReq; } RrcConfigurationReq;
...@@ -230,69 +231,69 @@ typedef struct NbIoTRrcConfigurationReq_s { ...@@ -230,69 +231,69 @@ typedef struct NbIoTRrcConfigurationReq_s {
uint16_t tac; uint16_t tac;
uint16_t mcc; uint16_t mcc;
uint16_t mnc; uint16_t mnc;
uint8_t mnc_digit_length; uint8_t mnc_digit_length;
lte_frame_type_t frame_type; lte_frame_type_t frame_type;
uint8_t tdd_config; uint8_t tdd_config;
uint8_t tdd_config_s; uint8_t tdd_config_s;
lte_prefix_type_t prefix_type; lte_prefix_type_t prefix_type;
lte_prefix_type_t prefix_type_UL; lte_prefix_type_t prefix_type_UL;
int16_t eutra_band; int16_t eutra_band;
uint32_t downlink_frequency; uint32_t downlink_frequency;
int32_t uplink_frequency_offset; int32_t uplink_frequency_offset;
int16_t Nid_cell;// for testing, change later int16_t Nid_cell;// for testing, change later
int16_t N_RB_DL;// for testing, change later int16_t N_RB_DL;// for testing, change later
//RACH //RACH
long rach_raResponseWindowSize_NB; long rach_raResponseWindowSize_NB;
long rach_macContentionResolutionTimer_NB; long rach_macContentionResolutionTimer_NB;
long rach_powerRampingStep_NB; long rach_powerRampingStep_NB;
long rach_preambleInitialReceivedTargetPower_NB; long rach_preambleInitialReceivedTargetPower_NB;
long rach_preambleTransMax_CE_NB; long rach_preambleTransMax_CE_NB;
//BCCH //BCCH
long bcch_modificationPeriodCoeff_NB; long bcch_modificationPeriodCoeff_NB;
//PCCH //PCCH
long pcch_defaultPagingCycle_NB; long pcch_defaultPagingCycle_NB;
long pcch_nB_NB; long pcch_nB_NB;
long pcch_npdcch_NumRepetitionPaging_NB; long pcch_npdcch_NumRepetitionPaging_NB;
//NPRACH //NPRACH
long nprach_CP_Length; long nprach_CP_Length;
long nprach_rsrp_range; long nprach_rsrp_range;
long nprach_Periodicity[MAX_NUM_NBIOT_CELEVELS]; long nprach_Periodicity[MAX_NUM_NBIOT_CELEVELS];
long nprach_StartTime[MAX_NUM_NBIOT_CELEVELS]; long nprach_StartTime[MAX_NUM_NBIOT_CELEVELS];
long nprach_SubcarrierOffset[MAX_NUM_NBIOT_CELEVELS]; long nprach_SubcarrierOffset[MAX_NUM_NBIOT_CELEVELS];
long nprach_NumSubcarriers[MAX_NUM_NBIOT_CELEVELS]; long nprach_NumSubcarriers[MAX_NUM_NBIOT_CELEVELS];
long numRepetitionsPerPreambleAttempt_NB[MAX_NUM_NBIOT_CELEVELS]; long numRepetitionsPerPreambleAttempt_NB[MAX_NUM_NBIOT_CELEVELS];
long nprach_SubcarrierMSG3_RangeStart; long nprach_SubcarrierMSG3_RangeStart;
long maxNumPreambleAttemptCE_NB; long maxNumPreambleAttemptCE_NB;
long npdcch_NumRepetitions_RA[MAX_NUM_NBIOT_CELEVELS]; long npdcch_NumRepetitions_RA[MAX_NUM_NBIOT_CELEVELS];
long npdcch_StartSF_CSS_RA[MAX_NUM_NBIOT_CELEVELS]; long npdcch_StartSF_CSS_RA[MAX_NUM_NBIOT_CELEVELS];
long npdcch_Offset_RA[MAX_NUM_NBIOT_CELEVELS]; long npdcch_Offset_RA[MAX_NUM_NBIOT_CELEVELS];
//NPDSCH //NPDSCH
long npdsch_nrs_Power; long npdsch_nrs_Power;
//NPUSCH //NPUSCH
long npusch_ack_nack_numRepetitions_NB; long npusch_ack_nack_numRepetitions_NB;
long npusch_srs_SubframeConfig_NB; long npusch_srs_SubframeConfig_NB;
long npusch_threeTone_CyclicShift_r13; long npusch_threeTone_CyclicShift_r13;
long npusch_sixTone_CyclicShift_r13; long npusch_sixTone_CyclicShift_r13;
BOOLEAN_t npusch_groupHoppingEnabled; BOOLEAN_t npusch_groupHoppingEnabled;
long npusch_groupAssignmentNPUSCH_r13; long npusch_groupAssignmentNPUSCH_r13;
//DL_GapConfig //DL_GapConfig
long dl_GapThreshold_NB; long dl_GapThreshold_NB;
long dl_GapPeriodicity_NB; long dl_GapPeriodicity_NB;
long dl_GapDurationCoeff_NB; long dl_GapDurationCoeff_NB;
//Uplink power control Common //Uplink power control Common
long npusch_p0_NominalNPUSCH; long npusch_p0_NominalNPUSCH;
long npusch_alpha; long npusch_alpha;
long deltaPreambleMsg3; long deltaPreambleMsg3;
//UE timers and constants //UE timers and constants
long ue_TimersAndConstants_t300_NB; long ue_TimersAndConstants_t300_NB;
long ue_TimersAndConstants_t301_NB; long ue_TimersAndConstants_t301_NB;
long ue_TimersAndConstants_t310_NB; long ue_TimersAndConstants_t310_NB;
long ue_TimersAndConstants_t311_NB; long ue_TimersAndConstants_t311_NB;
long ue_TimersAndConstants_n310_NB; long ue_TimersAndConstants_n310_NB;
long ue_TimersAndConstants_n311_NB; long ue_TimersAndConstants_n311_NB;
} NbIoTRrcConfigurationReq; } NbIoTRrcConfigurationReq;
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -57,7 +57,7 @@ uint16_t get_adjacent_cell_id(uint8_t Mod_id,uint8_t index); ...@@ -57,7 +57,7 @@ uint16_t get_adjacent_cell_id(uint8_t Mod_id,uint8_t index);
uint8_t get_adjacent_cell_mod_id(uint16_t phyCellId); uint8_t get_adjacent_cell_mod_id(uint16_t phyCellId);
/** /**
\brief Generate configuration for SIB1 (eNB). \brief Generate configuration for MIB (eNB).
@param carrier pointer to Carrier information @param carrier pointer to Carrier information
@param N_RB_DL Number of downlink PRBs @param N_RB_DL Number of downlink PRBs
@param phich_Resource PHICH resoure parameter @param phich_Resource PHICH resoure parameter
...@@ -71,7 +71,7 @@ uint8_t do_MIB(rrc_eNB_carrier_data_t *carrier, uint32_t N_RB_DL, uint32_t phich ...@@ -71,7 +71,7 @@ uint8_t do_MIB(rrc_eNB_carrier_data_t *carrier, uint32_t N_RB_DL, uint32_t phich
@param carrier pointer to Carrier information @param carrier pointer to Carrier information
@param Mod_id Instance of eNB @param Mod_id Instance of eNB
@param Component carrier Component carrier to configure @param Component carrier Component carrier to configure
@param configuration Pointer Configuration Request structure @param configuration Pointer Configuration Request structure
@return size of encoded bit stream in bytes*/ @return size of encoded bit stream in bytes*/
uint8_t do_SIB1(rrc_eNB_carrier_data_t *carrier,int Mod_id,int CC_id, RrcConfigurationReq *configuration uint8_t do_SIB1(rrc_eNB_carrier_data_t *carrier,int Mod_id,int CC_id, RrcConfigurationReq *configuration
...@@ -91,7 +91,7 @@ uint8_t do_SIB1(rrc_eNB_carrier_data_t *carrier,int Mod_id,int CC_id, RrcConfigu ...@@ -91,7 +91,7 @@ uint8_t do_SIB1(rrc_eNB_carrier_data_t *carrier,int Mod_id,int CC_id, RrcConfigu
uint8_t do_SIB23(uint8_t Mod_id, uint8_t do_SIB23(uint8_t Mod_id,
int CC_id int CC_id
#if defined(ENABLE_ITTI) #if defined(ENABLE_ITTI)
, RrcConfigurationReq *configuration , RrcConfigurationReq *configuration
#endif #endif
); );
...@@ -115,16 +115,16 @@ uint8_t do_SidelinkUEInformation(uint8_t Mod_id, uint8_t *buffer, LTE_SL_Destina ...@@ -115,16 +115,16 @@ uint8_t do_SidelinkUEInformation(uint8_t Mod_id, uint8_t *buffer, LTE_SL_Destina
/** \brief Generate an RRCConnectionSetupComplete UL-DCCH-Message (UE) /** \brief Generate an RRCConnectionSetupComplete UL-DCCH-Message (UE)
@param buffer Pointer to PER-encoded ASN.1 description of UL-DCCH-Message PDU @param buffer Pointer to PER-encoded ASN.1 description of UL-DCCH-Message PDU
@returns Size of encoded bit stream in bytes*/ @returns Size of encoded bit stream in bytes*/
uint8_t do_RRCConnectionSetupComplete(uint8_t Mod_id, uint8_t* buffer, const uint8_t Transaction_id, const int dedicatedInfoNASLength, uint8_t do_RRCConnectionSetupComplete(uint8_t Mod_id, uint8_t *buffer, const uint8_t Transaction_id, const int dedicatedInfoNASLength,
const char* dedicatedInfoNAS); const char *dedicatedInfoNAS);
/** \brief Generate an RRCConnectionReconfigurationComplete UL-DCCH-Message (UE) /** \brief Generate an RRCConnectionReconfigurationComplete UL-DCCH-Message (UE)
@param buffer Pointer to PER-encoded ASN.1 description of UL-DCCH-Message PDU @param buffer Pointer to PER-encoded ASN.1 description of UL-DCCH-Message PDU
@returns Size of encoded bit stream in bytes*/ @returns Size of encoded bit stream in bytes*/
uint8_t uint8_t
do_RRCConnectionReconfigurationComplete( do_RRCConnectionReconfigurationComplete(
const protocol_ctxt_t* const ctxt_pP, const protocol_ctxt_t *const ctxt_pP,
uint8_t* buffer, uint8_t *buffer,
const uint8_t Transaction_id const uint8_t Transaction_id
); );
...@@ -143,14 +143,14 @@ PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting ...@@ -143,14 +143,14 @@ PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting
@returns Size of encoded bit stream in bytes*/ @returns Size of encoded bit stream in bytes*/
uint8_t uint8_t
do_RRCConnectionSetup( do_RRCConnectionSetup(
const protocol_ctxt_t* const ctxt_pP, const protocol_ctxt_t *const ctxt_pP,
rrc_eNB_ue_context_t* const ue_context_pP, rrc_eNB_ue_context_t *const ue_context_pP,
int CC_id, int CC_id,
uint8_t* const buffer, uint8_t *const buffer,
const uint8_t transmission_mode, const uint8_t transmission_mode,
const uint8_t Transaction_id, const uint8_t Transaction_id,
LTE_SRB_ToAddModList_t** SRB_configList, LTE_SRB_ToAddModList_t **SRB_configList,
struct LTE_PhysicalConfigDedicated** physicalConfigDedicated struct LTE_PhysicalConfigDedicated **physicalConfigDedicated
); );
/** /**
...@@ -177,31 +177,31 @@ do_RRCConnectionSetup( ...@@ -177,31 +177,31 @@ do_RRCConnectionSetup(
uint16_t uint16_t
do_RRCConnectionReconfiguration( do_RRCConnectionReconfiguration(
const protocol_ctxt_t* const ctxt_pP, const protocol_ctxt_t *const ctxt_pP,
uint8_t *buffer, uint8_t *buffer,
uint8_t Transaction_id, uint8_t Transaction_id,
LTE_SRB_ToAddModList_t *SRB_list, LTE_SRB_ToAddModList_t *SRB_list,
LTE_DRB_ToAddModList_t *DRB_list, LTE_DRB_ToAddModList_t *DRB_list,
LTE_DRB_ToReleaseList_t *DRB_list2, LTE_DRB_ToReleaseList_t *DRB_list2,
struct LTE_SPS_Config *sps_Config, struct LTE_SPS_Config *sps_Config,
struct LTE_PhysicalConfigDedicated *physicalConfigDedicated, struct LTE_PhysicalConfigDedicated *physicalConfigDedicated,
LTE_MeasObjectToAddModList_t *MeasObj_list, LTE_MeasObjectToAddModList_t *MeasObj_list,
LTE_ReportConfigToAddModList_t *ReportConfig_list, LTE_ReportConfigToAddModList_t *ReportConfig_list,
LTE_QuantityConfig_t *quantityConfig, LTE_QuantityConfig_t *quantityConfig,
LTE_MeasIdToAddModList_t *MeasId_list, LTE_MeasIdToAddModList_t *MeasId_list,
LTE_MAC_MainConfig_t *mac_MainConfig, LTE_MAC_MainConfig_t *mac_MainConfig,
LTE_MeasGapConfig_t *measGapConfig, LTE_MeasGapConfig_t *measGapConfig,
LTE_MobilityControlInfo_t *mobilityInfo, LTE_MobilityControlInfo_t *mobilityInfo,
struct LTE_MeasConfig__speedStatePars *speedStatePars, struct LTE_MeasConfig__speedStatePars *speedStatePars,
LTE_RSRP_Range_t *rsrp, LTE_RSRP_Range_t *rsrp,
LTE_C_RNTI_t *cba_rnti, LTE_C_RNTI_t *cba_rnti,
struct LTE_RRCConnectionReconfiguration_r8_IEs__dedicatedInfoNASList* dedicatedInfoNASList, struct LTE_RRCConnectionReconfiguration_r8_IEs__dedicatedInfoNASList *dedicatedInfoNASList,
LTE_SL_CommConfig_r12_t *sl_CommConfig, LTE_SL_CommConfig_r12_t *sl_CommConfig,
LTE_SL_DiscConfig_r12_t *sl_DiscConfig LTE_SL_DiscConfig_r12_t *sl_DiscConfig
#if (LTE_RRC_VERSION >= MAKE_VERSION(10, 0, 0)) #if (LTE_RRC_VERSION >= MAKE_VERSION(10, 0, 0))
, LTE_SCellToAddMod_r10_t *SCell_config , LTE_SCellToAddMod_r10_t *SCell_config
#endif #endif
); );
/** /**
\brief Generate an RRCConnectionReestablishment DL-CCCH-Message (eNB). This routine configures SRB_ToAddMod (SRB1/SRB2) and \brief Generate an RRCConnectionReestablishment DL-CCCH-Message (eNB). This routine configures SRB_ToAddMod (SRB1/SRB2) and
PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting (PUCCH format 2/2a/2b) or SRS. PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting (PUCCH format 2/2a/2b) or SRS.
...@@ -216,10 +216,10 @@ PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting ...@@ -216,10 +216,10 @@ PhysicalConfigDedicated IEs. The latter does not enable periodic CQI reporting
@returns Size of encoded bit stream in bytes*/ @returns Size of encoded bit stream in bytes*/
uint8_t uint8_t
do_RRCConnectionReestablishment( do_RRCConnectionReestablishment(
const protocol_ctxt_t* const ctxt_pP, const protocol_ctxt_t *const ctxt_pP,
rrc_eNB_ue_context_t* const ue_context_pP, rrc_eNB_ue_context_t *const ue_context_pP,
int CC_id, int CC_id,
uint8_t* const buffer, uint8_t *const buffer,
const uint8_t transmission_mode, const uint8_t transmission_mode,
const uint8_t Transaction_id, const uint8_t Transaction_id,
LTE_SRB_ToAddModList_t **SRB_configList, LTE_SRB_ToAddModList_t **SRB_configList,
...@@ -232,8 +232,8 @@ do_RRCConnectionReestablishment( ...@@ -232,8 +232,8 @@ do_RRCConnectionReestablishment(
@returns Size of encoded bit stream in bytes*/ @returns Size of encoded bit stream in bytes*/