Merge remote-tracking branch 'origin/develop' into enhancement-ltem
Conflicts: openair1/PHY/LTE_TRANSPORT/dci_tools.c openair1/SCHED/fapi_l1.c openair1/SCHED/phy_procedures_lte_eNb.c openair2/COMMON/rrc_messages_types.h openair2/ENB_APP/enb_config.c openair2/LAYER2/MAC/eNB_scheduler_dlsch.c openair2/LAYER2/MAC/eNB_scheduler_fairRR.c openair2/LAYER2/MAC/eNB_scheduler_primitives.c openair2/LAYER2/MAC/eNB_scheduler_ulsch.c openair2/LAYER2/MAC/mac.h openair2/RRC/LTE/L2_interface.c openair2/RRC/LTE/MESSAGES/asn1_msg.c openair2/RRC/LTE/MESSAGES/asn1_msg.h openair2/RRC/LTE/rrc_eNB.c openair2/RRC/LTE/rrc_eNB_S1AP.c targets/RT/USER/lte-enb.c
This commit is contained in:
@@ -31,7 +31,7 @@
|
||||
# define __PLATFORM_TYPES_H__
|
||||
|
||||
#if !defined(NAS_NETLINK)
|
||||
#include <stdint.h>
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -42,19 +42,19 @@
|
||||
* let's protect potential redefinition
|
||||
*/
|
||||
#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)
|
||||
#define TRUE (boolean_t)0x01
|
||||
#endif
|
||||
#if !defined(TRUE)
|
||||
#define TRUE (boolean_t)0x01
|
||||
#endif
|
||||
|
||||
#if !defined(FALSE)
|
||||
#define FALSE (boolean_t)0x00
|
||||
#endif
|
||||
#if !defined(FALSE)
|
||||
#define FALSE (boolean_t)0x00
|
||||
#endif
|
||||
|
||||
#define BOOL_NOT(b) (b^TRUE)
|
||||
#define BOOL_NOT(b) (b^TRUE)
|
||||
|
||||
#endif /* _BOOLEAN_T_DEFINED_ */
|
||||
|
||||
@@ -65,7 +65,7 @@ typedef int32_t sdu_size_t;
|
||||
typedef uint32_t frame_t;
|
||||
typedef int32_t sframe_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 eNB_index_t;
|
||||
typedef uint16_t ue_id_t;
|
||||
@@ -102,19 +102,19 @@ typedef enum rb_type_e {
|
||||
} rb_type_t;
|
||||
|
||||
typedef enum {
|
||||
CR_ROUND = 0,
|
||||
CR_SRB12 = 1,
|
||||
CR_HOL = 2,
|
||||
CR_LC = 3,
|
||||
CR_CQI = 4,
|
||||
CR_LCP = 5,
|
||||
CR_NUM = 6
|
||||
CR_ROUND = 0,
|
||||
CR_SRB12 = 1,
|
||||
CR_HOL = 2,
|
||||
CR_LC = 3,
|
||||
CR_CQI = 4,
|
||||
CR_LCP = 5,
|
||||
CR_NUM = 6
|
||||
} sorting_criterion_t;
|
||||
|
||||
typedef enum {
|
||||
POL_FAIR = 0,
|
||||
POL_GREEDY = 1,
|
||||
POL_NUM = 2
|
||||
POL_FAIR = 0,
|
||||
POL_GREEDY = 1,
|
||||
POL_NUM = 2
|
||||
} accounting_policy_t;
|
||||
//-----------------------------------------------------------------------------
|
||||
// PHY TYPES
|
||||
@@ -188,19 +188,19 @@ typedef uint32_t m_tmsi_t;
|
||||
|
||||
//Random UE identity length = 40 bits
|
||||
#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
|
||||
#if ! defined(NOT_A_RNTI)
|
||||
#define NOT_A_RNTI (rnti_t)0
|
||||
#define NOT_A_RNTI (rnti_t)0
|
||||
#endif
|
||||
#if ! defined(M_RNTI)
|
||||
#define M_RNTI (rnti_t)0xFFFD
|
||||
#define M_RNTI (rnti_t)0xFFFD
|
||||
#endif
|
||||
#if ! defined(P_RNTI)
|
||||
#define P_RNTI (rnti_t)0xFFFE
|
||||
#define P_RNTI (rnti_t)0xFFFE
|
||||
#endif
|
||||
#if ! defined(SI_RNTI)
|
||||
#define SI_RNTI (rnti_t)0xFFFF
|
||||
#define SI_RNTI (rnti_t)0xFFFF
|
||||
#endif
|
||||
typedef enum config_action_e {
|
||||
CONFIG_ACTION_NULL = 0,
|
||||
@@ -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,
|
||||
#if !defined(instance_t)
|
||||
typedef uint16_t instance_t;
|
||||
typedef uint16_t instance_t;
|
||||
#endif
|
||||
typedef struct protocol_ctxt_s {
|
||||
module_id_t module_id; /*!< \brief Virtualized module identifier */
|
||||
@@ -250,51 +250,51 @@ typedef struct protocol_ctxt_s {
|
||||
|
||||
|
||||
#define MODULE_ID_TO_INSTANCE(mODULE_iD, iNSTANCE, eNB_fLAG) \
|
||||
if(eNB_fLAG == ENB_FLAG_YES) \
|
||||
iNSTANCE = ENB_MODULE_ID_TO_INSTANCE(mODULE_iD); \
|
||||
else \
|
||||
iNSTANCE = UE_MODULE_ID_TO_INSTANCE(mODULE_iD)
|
||||
if(eNB_fLAG == ENB_FLAG_YES) \
|
||||
iNSTANCE = ENB_MODULE_ID_TO_INSTANCE(mODULE_iD); \
|
||||
else \
|
||||
iNSTANCE = UE_MODULE_ID_TO_INSTANCE(mODULE_iD)
|
||||
|
||||
#define INSTANCE_TO_MODULE_ID(iNSTANCE, mODULE_iD, eNB_fLAG) \
|
||||
if(eNB_fLAG == ENB_FLAG_YES) \
|
||||
mODULE_iD = ENB_INSTANCE_TO_MODULE_ID(iNSTANCE); \
|
||||
else \
|
||||
mODULE_iD = UE_INSTANCE_TO_MODULE_ID(iNSTANCE)
|
||||
if(eNB_fLAG == ENB_FLAG_YES) \
|
||||
mODULE_iD = ENB_INSTANCE_TO_MODULE_ID(iNSTANCE); \
|
||||
else \
|
||||
mODULE_iD = UE_INSTANCE_TO_MODULE_ID(iNSTANCE)
|
||||
|
||||
#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) \
|
||||
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) \
|
||||
(Ctxt_Pp)->module_id = mODULE_iD; \
|
||||
(Ctxt_Pp)->enb_flag = eNB_fLAG; \
|
||||
(Ctxt_Pp)->rnti = rNTI; \
|
||||
(Ctxt_Pp)->frame = fRAME; \
|
||||
(Ctxt_Pp)->subframe = sUBfRAME; \
|
||||
(Ctxt_Pp)->eNB_index = eNB_iNDEX; \
|
||||
PROTOCOL_CTXT_COMPUTE_INSTANCE(Ctxt_Pp)
|
||||
(Ctxt_Pp)->module_id = mODULE_iD; \
|
||||
(Ctxt_Pp)->enb_flag = eNB_fLAG; \
|
||||
(Ctxt_Pp)->rnti = rNTI; \
|
||||
(Ctxt_Pp)->frame = fRAME; \
|
||||
(Ctxt_Pp)->subframe = sUBfRAME; \
|
||||
(Ctxt_Pp)->eNB_index = eNB_iNDEX; \
|
||||
PROTOCOL_CTXT_COMPUTE_INSTANCE(Ctxt_Pp)
|
||||
|
||||
#define PROTOCOL_CTXT_SET_BY_INSTANCE(Ctxt_Pp, iNSTANCE, eNB_fLAG, rNTI, fRAME, sUBfRAME) \
|
||||
(Ctxt_Pp)->instance = iNSTANCE; \
|
||||
(Ctxt_Pp)->enb_flag = eNB_fLAG; \
|
||||
(Ctxt_Pp)->rnti = rNTI; \
|
||||
(Ctxt_Pp)->frame = fRAME; \
|
||||
(Ctxt_Pp)->subframe = sUBfRAME; \
|
||||
PROTOCOL_CTXT_COMPUTE_MODULE_ID(Ctxt_Pp)
|
||||
(Ctxt_Pp)->instance = iNSTANCE; \
|
||||
(Ctxt_Pp)->enb_flag = eNB_fLAG; \
|
||||
(Ctxt_Pp)->rnti = rNTI; \
|
||||
(Ctxt_Pp)->frame = fRAME; \
|
||||
(Ctxt_Pp)->subframe = sUBfRAME; \
|
||||
PROTOCOL_CTXT_COMPUTE_MODULE_ID(Ctxt_Pp)
|
||||
|
||||
#define PROTOCOL_CTXT_FMT "[FRAME %05u][%s][MOD %02u][RNTI %" PRIx16 "]"
|
||||
#define PROTOCOL_CTXT_ARGS(CTXT_Pp) \
|
||||
(CTXT_Pp)->frame, \
|
||||
((CTXT_Pp)->enb_flag == ENB_FLAG_YES) ? "eNB":" UE", \
|
||||
(CTXT_Pp)->module_id, \
|
||||
(CTXT_Pp)->rnti
|
||||
(CTXT_Pp)->frame, \
|
||||
((CTXT_Pp)->enb_flag == ENB_FLAG_YES) ? "eNB":" UE", \
|
||||
(CTXT_Pp)->module_id, \
|
||||
(CTXT_Pp)->rnti
|
||||
|
||||
#define CHECK_CTXT_ARGS(CTXT_Pp)
|
||||
|
||||
#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
|
||||
|
||||
@@ -33,9 +33,9 @@
|
||||
#include "rrc_types.h"
|
||||
#include "s1ap_messages_types.h"
|
||||
#ifdef CMAKER
|
||||
#include "LTE_SystemInformationBlockType2.h"
|
||||
#include "LTE_SystemInformationBlockType2.h"
|
||||
#else
|
||||
#include "RRC/LTE/MESSAGES/LTE_SystemInformationBlockType2.h"
|
||||
#include "RRC/LTE/MESSAGES/LTE_SystemInformationBlockType2.h"
|
||||
#endif
|
||||
#include "LTE_SL-OffsetIndicator-r12.h"
|
||||
#include "LTE_SubframeBitmapSL-r12.h"
|
||||
@@ -47,19 +47,19 @@
|
||||
//-------------------------------------------------------------------------------------------//
|
||||
// Messages for RRC logging
|
||||
#if defined(DISABLE_ITTI_XER_PRINT)
|
||||
#include "LTE_BCCH-DL-SCH-Message.h"
|
||||
#include "LTE_DL-CCCH-Message.h"
|
||||
#include "LTE_DL-DCCH-Message.h"
|
||||
#include "LTE_UE-EUTRA-Capability.h"
|
||||
#include "LTE_UL-CCCH-Message.h"
|
||||
#include "LTE_UL-DCCH-Message.h"
|
||||
#include "LTE_BCCH-DL-SCH-Message.h"
|
||||
#include "LTE_DL-CCCH-Message.h"
|
||||
#include "LTE_DL-DCCH-Message.h"
|
||||
#include "LTE_UE-EUTRA-Capability.h"
|
||||
#include "LTE_UL-CCCH-Message.h"
|
||||
#include "LTE_UL-DCCH-Message.h"
|
||||
|
||||
typedef LTE_BCCH_DL_SCH_Message_t RrcDlBcchMessage;
|
||||
typedef LTE_DL_CCCH_Message_t RrcDlCcchMessage;
|
||||
typedef LTE_DL_DCCH_Message_t RrcDlDcchMessage;
|
||||
typedef LTE_UE_EUTRA_Capability_t RrcUeEutraCapability;
|
||||
typedef LTE_UL_CCCH_Message_t RrcUlCcchMessage;
|
||||
typedef LTE_UL_DCCH_Message_t RrcUlDcchMessage;
|
||||
typedef BCCH_DL_SCH_Message_t RrcDlBcchMessage;
|
||||
typedef DL_CCCH_Message_t RrcDlCcchMessage;
|
||||
typedef DL_DCCH_Message_t RrcDlDcchMessage;
|
||||
typedef UE_EUTRA_Capability_t RrcUeEutraCapability;
|
||||
typedef UL_CCCH_Message_t RrcUlCcchMessage;
|
||||
typedef UL_DCCH_Message_t RrcUlDcchMessage;
|
||||
#endif
|
||||
|
||||
//-------------------------------------------------------------------------------------------//
|
||||
@@ -172,7 +172,8 @@ typedef struct RrcConfigurationReq_s {
|
||||
uint8_t mnc_digit_length[PLMN_LIST_MAX_SIZE];
|
||||
uint8_t num_plmn;
|
||||
|
||||
|
||||
uint32_t rrc_inactivity_timer_thres; // for testing, maybe change later
|
||||
|
||||
paging_drx_t default_drx;
|
||||
int16_t nb_cc;
|
||||
lte_frame_type_t frame_type[MAX_NUM_CCs];
|
||||
@@ -194,26 +195,18 @@ typedef struct RrcConfigurationReq_s {
|
||||
RadioResourceConfig radioresourceconfig_BR[MAX_NUM_CCs];
|
||||
|
||||
#if (LTE_RRC_VERSION >= MAKE_VERSION(13, 0, 0))
|
||||
|
||||
|
||||
|
||||
//MIB
|
||||
long schedulingInfoSIB1_BR_r13[MAX_NUM_CCs];
|
||||
//SIB1 BR options
|
||||
|
||||
|
||||
uint16_t* hyperSFN_r13 [MAX_NUM_CCs];
|
||||
long* eDRX_Allowed_r13 [MAX_NUM_CCs];
|
||||
BOOLEAN_t cellSelectionInfoCE_r13 [MAX_NUM_CCs];
|
||||
long q_RxLevMinCE_r13 [MAX_NUM_CCs];
|
||||
long* q_QualMinRSRQ_CE_r13 [MAX_NUM_CCs];
|
||||
BOOLEAN_t bandwidthReducedAccessRelatedInfo_r13 [MAX_NUM_CCs];
|
||||
|
||||
long si_Narrowband_r13 [MAX_NUM_CCs][32];
|
||||
long si_TBS_r13 [MAX_NUM_CCs][32];
|
||||
int scheduling_info_br_size [MAX_NUM_CCs];
|
||||
|
||||
|
||||
long si_WindowLength_BR_r13 [MAX_NUM_CCs];
|
||||
long si_RepetitionPattern_r13 [MAX_NUM_CCs];
|
||||
BOOLEAN_t * fdd_DownlinkOrTddSubframeBitmapBR_r13 [MAX_NUM_CCs];
|
||||
@@ -222,11 +215,8 @@ typedef struct RrcConfigurationReq_s {
|
||||
long startSymbolBR_r13 [MAX_NUM_CCs];
|
||||
long si_HoppingConfigCommon_r13 [MAX_NUM_CCs];
|
||||
long* si_ValidityTime_r13 [MAX_NUM_CCs];
|
||||
|
||||
|
||||
long systemInfoValueTagSi_r13 [MAX_NUM_CCs][10];
|
||||
int system_info_value_tag_SI_size [MAX_NUM_CCs];
|
||||
|
||||
BOOLEAN_t freqHoppingParametersDL_r13 [MAX_NUM_CCs];
|
||||
long* mpdcch_pdsch_HoppingNB_r13 [MAX_NUM_CCs];
|
||||
BOOLEAN_t interval_DLHoppingConfigCommonModeA_r13 [MAX_NUM_CCs];
|
||||
@@ -234,24 +224,15 @@ typedef struct RrcConfigurationReq_s {
|
||||
BOOLEAN_t interval_DLHoppingConfigCommonModeB_r13 [MAX_NUM_CCs];
|
||||
long interval_DLHoppingConfigCommonModeB_r13_val [MAX_NUM_CCs];
|
||||
long* mpdcch_pdsch_HoppingOffset_r13 [MAX_NUM_CCs];
|
||||
|
||||
|
||||
long firstPreamble_r13 [MAX_NUM_CCs][4];
|
||||
long lastPreamble_r13 [MAX_NUM_CCs][4];
|
||||
long ra_ResponseWindowSize_r13 [MAX_NUM_CCs][4];
|
||||
long mac_ContentionResolutionTimer_r13 [MAX_NUM_CCs][4];
|
||||
long rar_HoppingConfig_r13 [MAX_NUM_CCs][4];
|
||||
int rach_CE_LevelInfoList_r13_size [MAX_NUM_CCs];
|
||||
|
||||
|
||||
// long pcch_defaultPagingCycle_br;
|
||||
|
||||
|
||||
long rsrp_range [MAX_NUM_CCs][3];
|
||||
int rsrp_range_list_size [MAX_NUM_CCs];
|
||||
|
||||
|
||||
|
||||
long prach_config_index [MAX_NUM_CCs][4];
|
||||
long prach_freq_offset [MAX_NUM_CCs][4];
|
||||
long *prach_StartingSubframe_r13 [MAX_NUM_CCs][4];
|
||||
@@ -262,50 +243,33 @@ typedef struct RrcConfigurationReq_s {
|
||||
int prach_parameters_list_size [MAX_NUM_CCs];
|
||||
long max_available_narrow_band [MAX_NUM_CCs][4][2];
|
||||
int max_available_narrow_band_size [MAX_NUM_CCs][4];
|
||||
|
||||
|
||||
|
||||
|
||||
long pucch_info_value [MAX_NUM_CCs][4];
|
||||
int pucch_info_value_size [MAX_NUM_CCs];
|
||||
|
||||
|
||||
bool pcch_config_v1310 [MAX_NUM_CCs];
|
||||
long paging_narrowbands_r13 [MAX_NUM_CCs];
|
||||
long mpdcch_numrepetition_paging_r13 [MAX_NUM_CCs];
|
||||
long *nb_v1310 [MAX_NUM_CCs];
|
||||
|
||||
long *pucch_NumRepetitionCE_Msg4_Level0_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level1_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level2_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level3_r13 [MAX_NUM_CCs];
|
||||
|
||||
|
||||
bool sib2_freq_hoppingParameters_r13_exists [MAX_NUM_CCs];
|
||||
long *sib2_mpdcch_pdsch_hoppingNB_r13 [MAX_NUM_CCs];
|
||||
long *sib2_interval_DLHoppingConfigCommonModeA_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_DLHoppingConfigCommonModeA_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_DLHoppingConfigCommonModeB_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_DLHoppingConfigCommonModeB_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_ULHoppingConfigCommonModeA_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_ULHoppingConfigCommonModeA_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_ULHoppingConfigCommonModeB_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_ULHoppingConfigCommonModeB_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_mpdcch_pdsch_hoppingOffset_r13 [MAX_NUM_CCs];
|
||||
|
||||
|
||||
long *pdsch_maxNumRepetitionCEmodeA_r13 [MAX_NUM_CCs];
|
||||
long *pdsch_maxNumRepetitionCEmodeB_r13 [MAX_NUM_CCs];
|
||||
|
||||
long *pusch_maxNumRepetitionCEmodeA_r13 [MAX_NUM_CCs];
|
||||
long *pusch_maxNumRepetitionCEmodeB_r13 [MAX_NUM_CCs];
|
||||
long *pusch_HoppingOffset_v1310 [MAX_NUM_CCs];
|
||||
|
||||
|
||||
|
||||
long pucch_info_value [MAX_NUM_CCs][4];
|
||||
int pucch_info_value_size [MAX_NUM_CCs];
|
||||
bool pcch_config_v1310 [MAX_NUM_CCs];
|
||||
long paging_narrowbands_r13 [MAX_NUM_CCs];
|
||||
long mpdcch_numrepetition_paging_r13 [MAX_NUM_CCs];
|
||||
long *nb_v1310 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level0_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level1_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level2_r13 [MAX_NUM_CCs];
|
||||
long *pucch_NumRepetitionCE_Msg4_Level3_r13 [MAX_NUM_CCs];
|
||||
bool sib2_freq_hoppingParameters_r13_exists [MAX_NUM_CCs];
|
||||
long *sib2_mpdcch_pdsch_hoppingNB_r13 [MAX_NUM_CCs];
|
||||
long *sib2_interval_DLHoppingConfigCommonModeA_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_DLHoppingConfigCommonModeA_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_DLHoppingConfigCommonModeB_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_DLHoppingConfigCommonModeB_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_ULHoppingConfigCommonModeA_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_ULHoppingConfigCommonModeA_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_interval_ULHoppingConfigCommonModeB_r13 [MAX_NUM_CCs];
|
||||
long sib2_interval_ULHoppingConfigCommonModeB_r13_val [MAX_NUM_CCs];
|
||||
long *sib2_mpdcch_pdsch_hoppingOffset_r13 [MAX_NUM_CCs];
|
||||
long *pdsch_maxNumRepetitionCEmodeA_r13 [MAX_NUM_CCs];
|
||||
long *pdsch_maxNumRepetitionCEmodeB_r13 [MAX_NUM_CCs];
|
||||
long *pusch_maxNumRepetitionCEmodeA_r13 [MAX_NUM_CCs];
|
||||
long *pusch_maxNumRepetitionCEmodeB_r13 [MAX_NUM_CCs];
|
||||
long *pusch_HoppingOffset_v1310 [MAX_NUM_CCs];
|
||||
#endif
|
||||
|
||||
|
||||
//SIB18
|
||||
e_LTE_SL_CP_Len_r12 rxPool_sc_CP_Len[MAX_NUM_CCs];
|
||||
e_LTE_SL_PeriodComm_r12 rxPool_sc_Period[MAX_NUM_CCs];
|
||||
@@ -316,7 +280,7 @@ typedef struct RrcConfigurationReq_s {
|
||||
LTE_SL_OffsetIndicator_r12_PR rxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
|
||||
long rxPool_ResourceConfig_offsetIndicator_choice[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_bits_unused[MAX_NUM_CCs];
|
||||
|
||||
@@ -332,7 +296,7 @@ typedef struct RrcConfigurationReq_s {
|
||||
LTE_SL_OffsetIndicator_r12_PR discRxPool_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
|
||||
long discRxPool_ResourceConfig_offsetIndicator_choice[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_bits_unused[MAX_NUM_CCs];
|
||||
//for discRxPoolPS
|
||||
@@ -346,7 +310,7 @@ typedef struct RrcConfigurationReq_s {
|
||||
LTE_SL_OffsetIndicator_r12_PR discRxPoolPS_ResourceConfig_offsetIndicator_present[MAX_NUM_CCs];
|
||||
long discRxPoolPS_ResourceConfig_offsetIndicator_choice[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_bits_unused[MAX_NUM_CCs];
|
||||
} RrcConfigurationReq;
|
||||
@@ -355,72 +319,70 @@ typedef struct RrcConfigurationReq_s {
|
||||
|
||||
typedef struct NbIoTRrcConfigurationReq_s {
|
||||
uint32_t cell_identity;
|
||||
|
||||
uint16_t tac;
|
||||
|
||||
uint16_t mcc;
|
||||
uint16_t mnc;
|
||||
uint8_t mnc_digit_length;
|
||||
lte_frame_type_t frame_type;
|
||||
uint16_t mcc;
|
||||
uint16_t mnc;
|
||||
uint8_t mnc_digit_length;
|
||||
lte_frame_type_t frame_type;
|
||||
uint8_t tdd_config;
|
||||
uint8_t tdd_config_s;
|
||||
lte_prefix_type_t prefix_type;
|
||||
lte_prefix_type_t prefix_type_UL;
|
||||
lte_prefix_type_t prefix_type_UL;
|
||||
int16_t eutra_band;
|
||||
uint32_t downlink_frequency;
|
||||
int32_t uplink_frequency_offset;
|
||||
int16_t Nid_cell;// for testing, change later
|
||||
int16_t N_RB_DL;// for testing, change later
|
||||
//RACH
|
||||
long rach_raResponseWindowSize_NB;
|
||||
long rach_macContentionResolutionTimer_NB;
|
||||
long rach_powerRampingStep_NB;
|
||||
long rach_preambleInitialReceivedTargetPower_NB;
|
||||
long rach_preambleTransMax_CE_NB;
|
||||
long rach_raResponseWindowSize_NB;
|
||||
long rach_macContentionResolutionTimer_NB;
|
||||
long rach_powerRampingStep_NB;
|
||||
long rach_preambleInitialReceivedTargetPower_NB;
|
||||
long rach_preambleTransMax_CE_NB;
|
||||
//BCCH
|
||||
long bcch_modificationPeriodCoeff_NB;
|
||||
long bcch_modificationPeriodCoeff_NB;
|
||||
//PCCH
|
||||
long pcch_defaultPagingCycle_NB;
|
||||
long pcch_nB_NB;
|
||||
long pcch_npdcch_NumRepetitionPaging_NB;
|
||||
long pcch_defaultPagingCycle_NB;
|
||||
long pcch_nB_NB;
|
||||
long pcch_npdcch_NumRepetitionPaging_NB;
|
||||
//NPRACH
|
||||
long nprach_CP_Length;
|
||||
long nprach_rsrp_range;
|
||||
long nprach_Periodicity[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_StartTime[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_SubcarrierOffset[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_NumSubcarriers[MAX_NUM_NBIOT_CELEVELS];
|
||||
long numRepetitionsPerPreambleAttempt_NB[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_SubcarrierMSG3_RangeStart;
|
||||
long maxNumPreambleAttemptCE_NB;
|
||||
long npdcch_NumRepetitions_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
long npdcch_StartSF_CSS_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
long npdcch_Offset_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_CP_Length;
|
||||
long nprach_rsrp_range;
|
||||
long nprach_Periodicity[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_StartTime[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_SubcarrierOffset[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_NumSubcarriers[MAX_NUM_NBIOT_CELEVELS];
|
||||
long numRepetitionsPerPreambleAttempt_NB[MAX_NUM_NBIOT_CELEVELS];
|
||||
long nprach_SubcarrierMSG3_RangeStart;
|
||||
long maxNumPreambleAttemptCE_NB;
|
||||
long npdcch_NumRepetitions_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
long npdcch_StartSF_CSS_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
long npdcch_Offset_RA[MAX_NUM_NBIOT_CELEVELS];
|
||||
//NPDSCH
|
||||
long npdsch_nrs_Power;
|
||||
long npdsch_nrs_Power;
|
||||
//NPUSCH
|
||||
long npusch_ack_nack_numRepetitions_NB;
|
||||
long npusch_srs_SubframeConfig_NB;
|
||||
long npusch_threeTone_CyclicShift_r13;
|
||||
long npusch_sixTone_CyclicShift_r13;
|
||||
BOOLEAN_t npusch_groupHoppingEnabled;
|
||||
long npusch_groupAssignmentNPUSCH_r13;
|
||||
long npusch_ack_nack_numRepetitions_NB;
|
||||
long npusch_srs_SubframeConfig_NB;
|
||||
long npusch_threeTone_CyclicShift_r13;
|
||||
long npusch_sixTone_CyclicShift_r13;
|
||||
BOOLEAN_t npusch_groupHoppingEnabled;
|
||||
long npusch_groupAssignmentNPUSCH_r13;
|
||||
|
||||
//DL_GapConfig
|
||||
long dl_GapThreshold_NB;
|
||||
long dl_GapPeriodicity_NB;
|
||||
long dl_GapDurationCoeff_NB;
|
||||
long dl_GapThreshold_NB;
|
||||
long dl_GapPeriodicity_NB;
|
||||
long dl_GapDurationCoeff_NB;
|
||||
//Uplink power control Common
|
||||
long npusch_p0_NominalNPUSCH;
|
||||
long npusch_alpha;
|
||||
long deltaPreambleMsg3;
|
||||
long npusch_p0_NominalNPUSCH;
|
||||
long npusch_alpha;
|
||||
long deltaPreambleMsg3;
|
||||
//UE timers and constants
|
||||
long ue_TimersAndConstants_t300_NB;
|
||||
long ue_TimersAndConstants_t301_NB;
|
||||
long ue_TimersAndConstants_t310_NB;
|
||||
long ue_TimersAndConstants_t311_NB;
|
||||
long ue_TimersAndConstants_n310_NB;
|
||||
long ue_TimersAndConstants_n311_NB;
|
||||
long ue_TimersAndConstants_t300_NB;
|
||||
long ue_TimersAndConstants_t301_NB;
|
||||
long ue_TimersAndConstants_t310_NB;
|
||||
long ue_TimersAndConstants_t311_NB;
|
||||
long ue_TimersAndConstants_n310_NB;
|
||||
long ue_TimersAndConstants_n311_NB;
|
||||
} NbIoTRrcConfigurationReq;
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user