regular LTE functional (simulation)
This commit is contained in:
@@ -950,11 +950,12 @@ void schedule_response(Sched_Rsp_t *Sched_INFO)
|
||||
|
||||
switch (hi_dci0_req_pdu->pdu_type) {
|
||||
|
||||
case NFAPI_HI_DCI0_DCI_PDU_TYPE:
|
||||
|
||||
handle_nfapi_hi_dci0_dci_pdu(eNB,NFAPI_SFNSF2SFN(HI_DCI0_req->sfn_sf),NFAPI_SFNSF2SF(HI_DCI0_req->sfn_sf),proc,hi_dci0_req_pdu);
|
||||
|
||||
|
||||
case NFAPI_HI_DCI0_DCI_PDU_TYPE:
|
||||
|
||||
handle_nfapi_hi_dci0_dci_pdu(eNB,NFAPI_SFNSF2SFN(HI_DCI0_req->sfn_sf),NFAPI_SFNSF2SF(HI_DCI0_req->sfn_sf),proc,hi_dci0_req_pdu);
|
||||
eNB->pdcch_vars[NFAPI_SFNSF2SF(HI_DCI0_req->sfn_sf)&1].num_dci++;
|
||||
break;
|
||||
|
||||
case NFAPI_HI_DCI0_MPDCCH_DCI_PDU_TYPE:
|
||||
handle_nfapi_hi_dci0_mpdcch_dci_pdu(eNB,proc,hi_dci0_req_pdu);
|
||||
eNB->mpdcch_vars[subframe&1].num_dci++;
|
||||
|
||||
+1300
-1770
File diff suppressed because it is too large
Load Diff
+169
-138
@@ -19,7 +19,7 @@
|
||||
* contact@openairinterface.org
|
||||
*/
|
||||
|
||||
/*! \file openair2/ENB_APP/enb_paramdef.f
|
||||
/*! \file openair2/ENB_APP/enb_paramdef.h
|
||||
* \brief definition of configuration parameters for all eNodeB modules
|
||||
* \author Francois TABURET
|
||||
* \date 2017
|
||||
@@ -341,11 +341,6 @@ typedef enum {
|
||||
#define ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2A "pucch_deltaF_Format2a"
|
||||
#define ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2B "pucch_deltaF_Format2b"
|
||||
|
||||
#define ENB_CONFIG_STRING_PRACH_CONFIG_COMMON_V1310 "prach_ConfigCommon_v1310"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13 "mpdcch_startSF_CSS_RA_r13"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13_VAL "mpdcch_startSF_CSS_RA_r13_val"
|
||||
#define ENB_CONFIG_STRING_PRACH_HOPPING_OFFSET_R13 "prach_HoppingOffset_r13"
|
||||
|
||||
#define ENB_CONFIG_STRING_RACH_NUM_RA_PREAMBLES "rach_numberOfRA_Preambles"
|
||||
#define ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG "rach_preamblesGroupAConfig"
|
||||
#define ENB_CONFIG_STRING_RACH_SIZEOFRA_PREAMBLESGROUPA "rach_sizeOfRA_PreamblesGroupA"
|
||||
@@ -428,6 +423,86 @@ typedef enum {
|
||||
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
/* init for checkedparam_t structure */
|
||||
|
||||
typedef struct ccparams_lte_s {
|
||||
char *frame_type;
|
||||
int32_t tdd_config;
|
||||
int32_t tdd_config_s;
|
||||
char *prefix_type;
|
||||
char *pbch_repetition;
|
||||
int32_t eutra_band;
|
||||
long long int downlink_frequency;
|
||||
int32_t uplink_frequency_offset;
|
||||
int32_t Nid_cell;
|
||||
int32_t Nid_cell_mbsfn;
|
||||
int32_t N_RB_DL;
|
||||
int32_t nb_antenna_ports;
|
||||
int32_t prach_root;
|
||||
int32_t prach_config_index;
|
||||
char *prach_high_speed;
|
||||
int32_t prach_zero_correlation;
|
||||
int32_t prach_freq_offset;
|
||||
int32_t pucch_delta_shift;
|
||||
int32_t pucch_nRB_CQI;
|
||||
int32_t pucch_nCS_AN;
|
||||
int32_t pucch_n1_AN;
|
||||
int32_t pdsch_referenceSignalPower;
|
||||
int32_t pdsch_p_b;
|
||||
int32_t pusch_n_SB;
|
||||
char *pusch_hoppingMode;
|
||||
int32_t pusch_hoppingOffset;
|
||||
char *pusch_enable64QAM;
|
||||
char *pusch_groupHoppingEnabled;
|
||||
int32_t pusch_groupAssignment;
|
||||
char *pusch_sequenceHoppingEnabled;
|
||||
int32_t pusch_nDMRS1;
|
||||
char *phich_duration;
|
||||
char *phich_resource;
|
||||
char *srs_enable;
|
||||
int32_t srs_BandwidthConfig;
|
||||
int32_t srs_SubframeConfig;
|
||||
char *srs_ackNackST;
|
||||
char *srs_MaxUpPts;
|
||||
int32_t pusch_p0_Nominal;
|
||||
char *pusch_alpha;
|
||||
int32_t pucch_p0_Nominal;
|
||||
int32_t msg3_delta_Preamble;
|
||||
int32_t ul_CyclicPrefixLength;
|
||||
char *pucch_deltaF_Format1;
|
||||
char *pucch_deltaF_Format1a;
|
||||
char *pucch_deltaF_Format1b;
|
||||
char *pucch_deltaF_Format2;
|
||||
char *pucch_deltaF_Format2a;
|
||||
char *pucch_deltaF_Format2b;
|
||||
int32_t rach_numberOfRA_Preambles;
|
||||
char *rach_preamblesGroupAConfig;
|
||||
int32_t rach_sizeOfRA_PreamblesGroupA;
|
||||
int32_t rach_messageSizeGroupA;
|
||||
char *rach_messagePowerOffsetGroupB;
|
||||
int32_t rach_powerRampingStep;
|
||||
int32_t rach_preambleInitialReceivedTargetPower;
|
||||
int32_t rach_preambleTransMax;
|
||||
int32_t rach_raResponseWindowSize;
|
||||
int32_t rach_macContentionResolutionTimer;
|
||||
int32_t rach_maxHARQ_Msg3Tx;
|
||||
int32_t pcch_defaultPagingCycle;
|
||||
char *pcch_nB;
|
||||
int32_t bcch_modificationPeriodCoeff;
|
||||
int32_t ue_TimersAndConstants_t300;
|
||||
int32_t ue_TimersAndConstants_t301;
|
||||
int32_t ue_TimersAndConstants_t310;
|
||||
int32_t ue_TimersAndConstants_t311;
|
||||
int32_t ue_TimersAndConstants_n310;
|
||||
int32_t ue_TimersAndConstants_n311;
|
||||
int32_t ue_TransmissionMode;
|
||||
int32_t ue_multiple_max;
|
||||
int32_t srb1_timer_poll_retransmit;
|
||||
int32_t srb1_timer_reordering;
|
||||
int32_t srb1_timer_status_prohibit;
|
||||
int32_t srb1_poll_pdu;
|
||||
int32_t srb1_poll_byte;
|
||||
int32_t srb1_max_retx_threshold;
|
||||
} ccparams_lte_t;
|
||||
|
||||
#define CCPARAMS_CHECK { \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
@@ -535,133 +610,83 @@ typedef enum {
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} , \
|
||||
{ .s5= {NULL }} \
|
||||
{ .s5= {NULL }} \
|
||||
}
|
||||
/*---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
/* component carriers configuration parameters */
|
||||
/* optname helpstr paramflags XXXptr defXXXval type numelt checked_param */
|
||||
/*---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
|
||||
#define CCPARAMS_DESC { \
|
||||
{ENB_CONFIG_STRING_FRAME_TYPE, NULL, 0, strptr:&frame_type, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_TDD_CONFIG, NULL, 0, iptr:&tdd_config, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_TDD_CONFIG_S, NULL, 0, iptr:&tdd_config_s, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PREFIX_TYPE, NULL, 0, strptr:&prefix_type, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PBCH_REPETITION, NULL, 0, strptr:&pbch_repetition, defstrval:"FALSE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_EUTRA_BAND, NULL, 0, iptr:&eutra_band, defintval:7, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DOWNLINK_FREQUENCY, NULL, 0, i64ptr:(int64_t *)&downlink_frequency, defint64val:2680000000, TYPE_UINT64, 0}, \
|
||||
{ENB_CONFIG_STRING_UPLINK_FREQUENCY_OFFSET, NULL, 0, iptr:&uplink_frequency_offset, defintval:-120000000, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_NID_CELL, NULL, 0, iptr:&Nid_cell, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_N_RB_DL, NULL, 0, iptr:&N_RB_DL, defintval:25, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_CELL_MBSFN, NULL, 0, iptr:&Nid_cell_mbsfn, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_NB_ANT_PORTS, NULL, 0, iptr:&nb_antenna_ports, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ROOT, NULL, 0, iptr:&prach_root, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX, NULL, 0, iptr:&prach_config_index, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HIGH_SPEED, NULL, 0, strptr:&prach_high_speed, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ZERO_CORRELATION, NULL, 0, iptr:&prach_zero_correlation, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET, NULL, 0, iptr:&prach_freq_offset, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTA_SHIFT, NULL, 0, iptr:&pucch_delta_shift, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NRB_CQI, NULL, 0, iptr:&pucch_nRB_CQI, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NCS_AN, NULL, 0, iptr:&pucch_nCS_AN, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_N1_AN, NULL, 0, iptr:&pucch_n1_AN, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_RS_EPRE, NULL, 0, iptr:&pdsch_referenceSignalPower, defintval:-29, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_PB, NULL, 0, iptr:&pdsch_p_b, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_N_SB, NULL, 0, iptr:&pusch_n_SB, defintval:1, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGMODE, NULL, 0, strptr:&pusch_hoppingMode, defstrval:"interSubFrame", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGOFFSET, NULL, 0, iptr:&pusch_hoppingOffset, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ENABLE64QAM, NULL, 0, strptr:&pusch_enable64QAM, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_HOPPING_EN, NULL, 0, strptr:&pusch_groupHoppingEnabled, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_ASSIGNMENT, NULL, 0, iptr:&pusch_groupAssignment, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_SEQUENCE_HOPPING_EN, NULL, 0, strptr:&pusch_sequenceHoppingEnabled, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_NDMRS1, NULL, 0, iptr:&pusch_nDMRS1, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_DURATION, NULL, 0, strptr:&phich_duration, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_RESOURCE, NULL, 0, strptr:&phich_resource, defstrval:"ONESIXTH", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ENABLE, NULL, 0, strptr:&srs_enable, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_BANDWIDTH_CONFIG, NULL, 0, iptr:&srs_BandwidthConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_SUBFRAME_CONFIG, NULL, 0, iptr:&srs_SubframeConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ACKNACKST_CONFIG, NULL, 0, strptr:&srs_ackNackST, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_MAXUPPTS, NULL, 0, strptr:&srs_MaxUpPts, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_PO_NOMINAL, NULL, 0, iptr:&pusch_p0_Nominal, defintval:-90, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ALPHA, NULL, 0, strptr:&pusch_alpha, defstrval:"AL1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_PO_NOMINAL, NULL, 0, iptr:&pucch_p0_Nominal, defintval:-96, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_MSG3_DELTA_PREAMBLE, NULL, 0, iptr:&msg3_delta_Preamble, defintval:6, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1, NULL, 0, strptr:&pucch_deltaF_Format1, defstrval:"DELTAF2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1b, NULL, 0, strptr:&pucch_deltaF_Format1b, defstrval:"deltaF3", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2, NULL, 0, strptr:&pucch_deltaF_Format2, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2A, NULL, 0, strptr:&pucch_deltaF_Format2a, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2B, NULL, 0, strptr:&pucch_deltaF_Format2b, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_NUM_RA_PREAMBLES, NULL, 0, iptr:&rach_numberOfRA_Preambles, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&rach_preamblesGroupAConfig, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_SIZEOFRA_PREAMBLESGROUPA, NULL, 0, iptr:&rach_sizeOfRA_PreamblesGroupA, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGESIZEGROUPA, NULL, 0, iptr:&rach_messageSizeGroupA, defintval:56, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGEPOWEROFFSETGROUPB, NULL, 0, strptr:&rach_messagePowerOffsetGroupB, defstrval:"minusinfinity", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_POWERRAMPINGSTEP, NULL, 0, iptr:&rach_powerRampingStep, defintval:4, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLEINITIALRECEIVEDTARGETPOWER, NULL, 0, iptr:&rach_preambleInitialReceivedTargetPower, defintval:-100, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLETRANSMAX, NULL, 0, iptr:&rach_preambleTransMax, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_RARESPONSEWINDOWSIZE, NULL, 0, iptr:&rach_raResponseWindowSize, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MACCONTENTIONRESOLUTIONTIMER, NULL, 0, iptr:&rach_macContentionResolutionTimer, defintval:48, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MAXHARQMSG3TX, NULL, 0, iptr:&rach_maxHARQ_Msg3Tx, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_DEFAULT_PAGING_CYCLE, NULL, 0, iptr:&pcch_defaultPagingCycle, defintval:128, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_NB, NULL, 0, strptr:&pcch_nB, defstrval:"oneT", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_BCCH_MODIFICATIONPERIODCOEFF, NULL, 0, iptr:&bcch_modificationPeriodCoeff, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T300, NULL, 0, iptr:&ue_TimersAndConstants_t300, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T301, NULL, 0, iptr:&ue_TimersAndConstants_t301, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T310, NULL, 0, iptr:&ue_TimersAndConstants_t310, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T311, NULL, 0, iptr:&ue_TimersAndConstants_t311, defintval:10000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N310, NULL, 0, iptr:&ue_TimersAndConstants_n310, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N311, NULL, 0, iptr:&ue_TimersAndConstants_n311, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_TRANSMISSION_MODE, NULL, 0, iptr:&ue_TransmissionMode, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_MULTIPLE_MAX, NULL, 0, iptr:&ue_multiple_max, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_SC_CP_LEN, NULL, 0, strptr:(char **)&rxPool_sc_CP_Len, defstrval:"normal", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_SC_PRIOD, NULL, 0, strptr:(char **)&rxPool_sc_Period, defstrval:"sf40", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_DATA_CP_LEN, NULL, 0, strptr:(char **)&rxPool_data_CP_Len, defstrval:"normal", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_PRB_NUM, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_prb_Num, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_PRB_START, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_prb_Start, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_PRB_END, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_prb_End, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_OFFSETIND_PRESENT, NULL, 0, strptr:(char **)&rxPool_ResourceConfig_offsetIndicator_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_OFFSETIND_CHOICE, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_offsetIndicator_choice, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_SFBITMAP_PRESENT, NULL, 0, strptr:(char **)&rxPool_ResourceConfig_subframeBitmap_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_SFBITMAP_CHOICE_BS_BUF, NULL, 0, strptr:(char **)&rxPool_ResourceConfig_subframeBitmap_choice_bs_buf, defstrval:"001001", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_SFBITMAP_CHOICE_BS_SIZE, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_subframeBitmap_choice_bs_size, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RXPOOL_RC_SFBITMAP_CHOICE_BS_ASN_BITS_UNUSED, NULL, 0, iptr:(int32_t *)&rxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_CP_LEN, NULL, 0, strptr:(char **)&discRxPool_cp_Len, defstrval:"normal", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_DISCPERIOD, NULL, 0, strptr:(char **)&discRxPool_discPeriod, defstrval:"rf32", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_NUMRETX, NULL, 0, iptr:(int32_t *)&discRxPool_numRetx, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_NUMREPETITION, NULL, 0, iptr:(int32_t *)&discRxPool_numRepetition, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_PRB_NUM, NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_prb_Num, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_PRB_START, NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_prb_Start, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_PRB_END, NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_prb_End, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_OFFSETIND_PRESENT, NULL, 0, strptr:(char **)&discRxPool_ResourceConfig_offsetIndicator_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_OFFSETIND_CHOICE, NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_offsetIndicator_choice, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_SFBITMAP_PRESENT, NULL, 0, strptr:(char **)&discRxPool_ResourceConfig_subframeBitmap_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_SFBITMAP_CHOICE_BS_BUF, NULL, 0, strptr:(char **)&discRxPool_ResourceConfig_subframeBitmap_choice_bs_buf, defstrval:"001001", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_SFBITMAP_CHOICE_BS_SIZE, NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_subframeBitmap_choice_bs_size, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOL_RC_SFBITMAP_CHOICE_BS_ASN_BITS_UNUSED,NULL, 0, iptr:(int32_t *)&discRxPool_ResourceConfig_subframeBitmap_choice_bs_bits_unused, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_CP_LEN, NULL, 0, strptr:(char **)&discRxPoolPS_cp_Len, defstrval:"normal", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_DISCPERIOD, NULL, 0, strptr:(char **)&discRxPoolPS_discPeriod, defstrval:"rf32", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_NUMRETX, NULL, 0, iptr:(int32_t *)&discRxPoolPS_numRetx, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_NUMREPETITION, NULL, 0, iptr:(int32_t *)&discRxPoolPS_numRepetition, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_PRB_NUM, NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_prb_Num, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_PRB_START, NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_prb_Start, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_PRB_END, NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_prb_End, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_OFFSETIND_PRESENT, NULL, 0, strptr:(char **)&discRxPoolPS_ResourceConfig_offsetIndicator_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_OFFSETIND_CHOICE, NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_offsetIndicator_choice, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_PRESENT, NULL, 0, strptr:(char **)&discRxPoolPS_ResourceConfig_subframeBitmap_present, defstrval:"prNothing", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_BUF, NULL, 0, strptr:(char **)&discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_buf, defstrval:"001001", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_SIZE, NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_size, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DISCRXPOOLPS_RC_SFBITMAP_CHOICE_BS_ASN_BITS_UNUSED,NULL, 0, iptr:(int32_t *)&discRxPoolPS_ResourceConfig_subframeBitmap_choice_bs_bits_unused, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_COMMON_V1310, NULL, 0, strptr:&prach_ConfigCommon_v1310, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13, NULL, 0, strptr:&mpdcch_startSF_CSS_RA_r13, defstrval:"fdd-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13_VAL, NULL, 0, strptr:&mpdcch_startSF_CSS_RA_r13_val, defstrval:"v1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HOPPING_OFFSET_R13, NULL, 0, iptr:&prach_HoppingOffset_r13, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_MAX_NUM_REPETITION_CE_MODE_A_R13, NULL, 0, strptr:&pdsch_maxNumRepetitionCEmodeA_r13, defstrval:"r16", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_MAX_NUM_REPETITION_CE_MODE_A_R13, NULL, 0, strptr:&pusch_maxNumRepetitionCEmodeA_r13, defstrval:"r8", TYPE_STRING, 0} \
|
||||
#define CCPARAMS_DESC(ccparams) { \
|
||||
{ENB_CONFIG_STRING_FRAME_TYPE, NULL, 0, strptr:&ccparams.frame_type, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_TDD_CONFIG, NULL, 0, iptr:&ccparams.tdd_config, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_TDD_CONFIG_S, NULL, 0, iptr:&ccparams.tdd_config_s, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PREFIX_TYPE, NULL, 0, strptr:&ccparams.prefix_type, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PBCH_REPETITION, NULL, 0, strptr:&ccparams.pbch_repetition, defstrval:"FALSE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_EUTRA_BAND, NULL, 0, iptr:&ccparams.eutra_band, defintval:7, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_DOWNLINK_FREQUENCY, NULL, 0, i64ptr:(int64_t *)&ccparams.downlink_frequency, defint64val:2680000000, TYPE_UINT64, 0}, \
|
||||
{ENB_CONFIG_STRING_UPLINK_FREQUENCY_OFFSET, NULL, 0, iptr:&ccparams.uplink_frequency_offset, defintval:-120000000, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_NID_CELL, NULL, 0, iptr:&ccparams.Nid_cell, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_N_RB_DL, NULL, 0, iptr:&ccparams.N_RB_DL, defintval:25, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_CELL_MBSFN, NULL, 0, iptr:&ccparams.Nid_cell_mbsfn, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_NB_ANT_PORTS, NULL, 0, iptr:&ccparams.nb_antenna_ports, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ROOT, NULL, 0, iptr:&ccparams.prach_root, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX, NULL, 0, iptr:&ccparams.prach_config_index, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HIGH_SPEED, NULL, 0, strptr:&ccparams.prach_high_speed, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ZERO_CORRELATION, NULL, 0, iptr:&ccparams.prach_zero_correlation, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET, NULL, 0, iptr:&ccparams.prach_freq_offset, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTA_SHIFT, NULL, 0, iptr:&ccparams.pucch_delta_shift, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NRB_CQI, NULL, 0, iptr:&ccparams.pucch_nRB_CQI, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NCS_AN, NULL, 0, iptr:&ccparams.pucch_nCS_AN, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_N1_AN, NULL, 0, iptr:&ccparams.pucch_n1_AN, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_RS_EPRE, NULL, 0, iptr:&ccparams.pdsch_referenceSignalPower, defintval:-29, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_PB, NULL, 0, iptr:&ccparams.pdsch_p_b, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_N_SB, NULL, 0, iptr:&ccparams.pusch_n_SB, defintval:1, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGMODE, NULL, 0, strptr:&ccparams.pusch_hoppingMode, defstrval:"interSubFrame", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGOFFSET, NULL, 0, iptr:&ccparams.pusch_hoppingOffset, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ENABLE64QAM, NULL, 0, strptr:&ccparams.pusch_enable64QAM, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_HOPPING_EN, NULL, 0, strptr:&ccparams.pusch_groupHoppingEnabled, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_ASSIGNMENT, NULL, 0, iptr:&ccparams.pusch_groupAssignment, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_SEQUENCE_HOPPING_EN, NULL, 0, strptr:&ccparams.pusch_sequenceHoppingEnabled, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_NDMRS1, NULL, 0, iptr:&ccparams.pusch_nDMRS1, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_DURATION, NULL, 0, strptr:&ccparams.phich_duration, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_RESOURCE, NULL, 0, strptr:&ccparams.phich_resource, defstrval:"ONESIXTH", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ENABLE, NULL, 0, strptr:&ccparams.srs_enable, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_BANDWIDTH_CONFIG, NULL, 0, iptr:&ccparams.srs_BandwidthConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_SUBFRAME_CONFIG, NULL, 0, iptr:&ccparams.srs_SubframeConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ACKNACKST_CONFIG, NULL, 0, strptr:&ccparams.srs_ackNackST, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_MAXUPPTS, NULL, 0, strptr:&ccparams.srs_MaxUpPts, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_PO_NOMINAL, NULL, 0, iptr:&ccparams.pusch_p0_Nominal, defintval:-90, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ALPHA, NULL, 0, strptr:&ccparams.pusch_alpha, defstrval:"AL1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_PO_NOMINAL, NULL, 0, iptr:&ccparams.pucch_p0_Nominal, defintval:-96, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_MSG3_DELTA_PREAMBLE, NULL, 0, iptr:&ccparams.msg3_delta_Preamble, defintval:6, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1, NULL, 0, strptr:&ccparams.pucch_deltaF_Format1, defstrval:"DELTAF2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1b, NULL, 0, strptr:&ccparams.pucch_deltaF_Format1b, defstrval:"deltaF3", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2, NULL, 0, strptr:&ccparams.pucch_deltaF_Format2, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2A, NULL, 0, strptr:&ccparams.pucch_deltaF_Format2a, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2B, NULL, 0, strptr:&ccparams.pucch_deltaF_Format2b, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_NUM_RA_PREAMBLES, NULL, 0, iptr:&ccparams.rach_numberOfRA_Preambles, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&ccparams.rach_preamblesGroupAConfig, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_SIZEOFRA_PREAMBLESGROUPA, NULL, 0, iptr:&ccparams.rach_sizeOfRA_PreamblesGroupA, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGESIZEGROUPA, NULL, 0, iptr:&ccparams.rach_messageSizeGroupA, defintval:56, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGEPOWEROFFSETGROUPB, NULL, 0, strptr:&ccparams.rach_messagePowerOffsetGroupB, defstrval:"minusinfinity", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_POWERRAMPINGSTEP, NULL, 0, iptr:&ccparams.rach_powerRampingStep, defintval:4, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLEINITIALRECEIVEDTARGETPOWER, NULL, 0, iptr:&ccparams.rach_preambleInitialReceivedTargetPower, defintval:-100, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLETRANSMAX, NULL, 0, iptr:&ccparams.rach_preambleTransMax, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_RARESPONSEWINDOWSIZE, NULL, 0, iptr:&ccparams.rach_raResponseWindowSize, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MACCONTENTIONRESOLUTIONTIMER, NULL, 0, iptr:&ccparams.rach_macContentionResolutionTimer, defintval:48, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MAXHARQMSG3TX, NULL, 0, iptr:&ccparams.rach_maxHARQ_Msg3Tx, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_DEFAULT_PAGING_CYCLE, NULL, 0, iptr:&ccparams.pcch_defaultPagingCycle, defintval:128, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_NB, NULL, 0, strptr:&ccparams.pcch_nB, defstrval:"oneT", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_BCCH_MODIFICATIONPERIODCOEFF, NULL, 0, iptr:&ccparams.bcch_modificationPeriodCoeff, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T300, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_t300, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T301, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_t301, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T310, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_t310, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T311, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_t311, defintval:10000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N310, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_n310, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N311, NULL, 0, iptr:&ccparams.ue_TimersAndConstants_n311, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_TRANSMISSION_MODE, NULL, 0, iptr:&ccparams.ue_TransmissionMode, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_MULTIPLE_MAX, NULL, 0, iptr:&ccparams.ue_multiple_max, defintval:4, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
|
||||
@@ -735,7 +760,6 @@ typedef enum {
|
||||
#define ENB_CONFIG_UETIMERS_N311_IDX 66
|
||||
#define ENB_CONFIG_UE_TRANSMISSION_MODE_IDX 67
|
||||
|
||||
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
/*------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
/* SRB1 configuration parameters section name */
|
||||
#define ENB_CONFIG_STRING_SRB1 "srb1_parameters"
|
||||
@@ -752,21 +776,27 @@ typedef enum {
|
||||
/* SRB1 configuration parameters */
|
||||
/* optname helpstr paramflags XXXptr defXXXval type numelt */
|
||||
/*-----------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
#define SRB1PARAMS_DESC { \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_POLL_RETRANSMIT, NULL, 0, iptr:&srb1_timer_poll_retransmit, defintval:80, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_REORDERING, NULL, 0, iptr:&srb1_timer_reordering, defintval:35, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_STATUS_PROHIBIT, NULL, 0, iptr:&srb1_timer_status_prohibit, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_POLL_PDU, NULL, 0, iptr:&srb1_poll_pdu, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_POLL_BYTE, NULL, 0, iptr:&srb1_poll_byte, defintval:99999, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_MAX_RETX_THRESHOLD, NULL, 0, iptr:&srb1_max_retx_threshold, defintval:4, TYPE_UINT, 0} \
|
||||
typedef struct srb1_params_s {
|
||||
int32_t srb1_timer_poll_retransmit;
|
||||
int32_t srb1_timer_reordering;
|
||||
int32_t srb1_timer_status_prohibit;
|
||||
int32_t srb1_poll_pdu;
|
||||
int32_t srb1_poll_byte;
|
||||
int32_t srb1_max_retx_threshold;
|
||||
} srb1_params_t;
|
||||
|
||||
#define SRB1PARAMS_DESC(srb1_params) { \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_POLL_RETRANSMIT, NULL, 0, iptr:&srb1_params.srb1_timer_poll_retransmit, defintval:80, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_REORDERING, NULL, 0, iptr:&srb1_params.srb1_timer_reordering, defintval:35, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_TIMER_STATUS_PROHIBIT, NULL, 0, iptr:&srb1_params.srb1_timer_status_prohibit, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_POLL_PDU, NULL, 0, iptr:&srb1_params.srb1_poll_pdu, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_POLL_BYTE, NULL, 0, iptr:&srb1_params.srb1_poll_byte, defintval:99999, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRB1_MAX_RETX_THRESHOLD, NULL, 0, iptr:&srb1_params.srb1_max_retx_threshold, defintval:4, TYPE_UINT, 0} \
|
||||
}
|
||||
/*-----------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
|
||||
/* MME configuration parameters section name */
|
||||
#define ENB_CONFIG_STRING_MME_IP_ADDRESS "mme_ip_address"
|
||||
|
||||
/* SRB1 configuration parameters names */
|
||||
|
||||
|
||||
#define ENB_CONFIG_STRING_MME_IPV4_ADDRESS "ipv4"
|
||||
#define ENB_CONFIG_STRING_MME_IPV6_ADDRESS "ipv6"
|
||||
@@ -1000,3 +1030,4 @@ typedef enum {
|
||||
/*-------------------------------------------------------------------------------------------------------------------------------------------------------------*/
|
||||
|
||||
#include "enb_paramdef_emtc.h"
|
||||
#include "enb_paramdef_sidelink.h"
|
||||
|
||||
@@ -33,10 +33,13 @@
|
||||
#include "common/config/config_paramdesc.h"
|
||||
#include "RRC_paramsvalues.h"
|
||||
|
||||
#define ENB_CONFIG_STRING_SCHEDULING_INFO_LIST "scheduling_info_br"
|
||||
|
||||
|
||||
|
||||
#define ENB_CONFIG_STRING_EMTC_PARAMETERS "emtc_parameters"
|
||||
#define ENB_CONFIG_STRING_SCHEDULING_INFO_BR "scheduling_info_br"
|
||||
#define ENB_CONFIG_STRING_RSRP_RANGE_LIST "rsrp_range_list"
|
||||
#define ENB_CONFIG_STRING_PRACH_CONFIG_COMMON_V1310 "prach_ConfigCommon_v1310"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13 "mpdcch_startSF_CSS_RA_r13"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13_VAL "mpdcch_startSF_CSS_RA_r13_val"
|
||||
#define ENB_CONFIG_STRING_PRACH_HOPPING_OFFSET_R13 "prach_HoppingOffset_r13"
|
||||
#define ENB_CONFIG_STRING_SCHEDULING_INFO_SIB1_BR_R13 "schedulingInfoSIB1_BR_r13"
|
||||
#define ENB_CONFIG_STRING_CELL_SELECTION_INFO_CE_R13 "cellSelectionInfoCE_r13"
|
||||
#define ENB_CONFIG_STRING_Q_RX_LEV_MIN_CE_R13 "q_RxLevMinCE_r13"
|
||||
@@ -57,175 +60,250 @@
|
||||
#define ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_OFFSET_R13 "mpdcch_pdsch_HoppingOffset_r13"
|
||||
#define ENB_CONFIG_STRING_PREAMBLE_TRANSMAX_CE_R13 "preamble_TransMax_ce_r13"
|
||||
#define ENB_CONFIG_STRING_PREAMBLE_TRANSMAX_CE_R13_VAL "preamble_TransMax_ce_r13_val"
|
||||
#define ENB_CONFIG_STRING_PDSCH_MAX_NUM_REPETITION_CE_MODE_A_R13 "pdsch_maxNumRepetitionCEmodeA_r13"
|
||||
#define ENB_CONFIG_STRING_PUSCH_MAX_NUM_REPETITION_CE_MODE_A_R13 "pusch_maxNumRepetitionCEmodeA_r13"
|
||||
#define ENB_CONFIG_STRING_SYSTEM_INFO_VALUE_TAG_LIST "system_info_value_tag_SI"
|
||||
#define ENB_CONFIG_STRING_FIRST_PREAMBLE_R13 "firstPreamble_r13"
|
||||
#define ENB_CONFIG_STRING_LAST_PREAMBLE_R13 "lastPreamble_r13"
|
||||
#define ENB_CONFIG_STRING_RA_RESPONSE_WINDOW_SIZE_R13 "ra_ResponseWindowSize_r13"
|
||||
#define ENB_CONFIG_STRING_MAC_CONTENTION_RESOLUTION_TIMER_R13 "mac_ContentionResolutionTimer_r13"
|
||||
#define ENB_CONFIG_STRING_RAR_HOPPING_CONFIG_R13 "rar_HoppingConfig_r13 "
|
||||
#define ENB_CONFIG_STRING_RACH_CE_LEVELINFOLIST_R13 "rach_CE_LevelInfoList_r13"
|
||||
#define ENB_CONFIG_STRING_PRACH_CONFIG_INDEX_BR "prach_config_index_br"
|
||||
#define ENB_CONFIG_STRING_PRACH_FREQ_OFFSET_BR "prach_freq_offset_br"
|
||||
#define ENB_CONFIG_STRING_PRACH_STARTING_SUBFRAME_R13 "prach_StartingSubframe_r13"
|
||||
#define ENB_CONFIG_STRING_MAX_NUM_PER_PREAMBLE_ATTEMPT_CE_R13 "maxNumPreambleAttemptCE_r13"
|
||||
#define ENB_CONFIG_STRING_NUM_REPETITION_PER_PREAMBLE_ATTEMPT_R13 "numRepetitionPerPreambleAttempt_r13"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_NUM_REPETITION_RA_R13 "mpdcch_NumRepetition_RA_r13"
|
||||
#define ENB_CONFIG_STRING_PRACH_HOPPING_CONFIG_R13 "prach_HoppingConfig_r13"
|
||||
#define ENB_CONFIG_SRING_MAX_AVAILABLE_NARROW_BAND "max_available_narrow_band"
|
||||
#define ENB_CONFIG_STRING_PRACH_PARAMETERS_CE_R13 "prach_parameters_ce_r13"
|
||||
#define ENB_CONFIG_STRING_PUCCH_INFO_VALUE "pucch_info_value"
|
||||
#define ENB_CONFIG_STRING_N1PUCCH_AN_INFOLIST_R13 "n1PUCCH_AN_InfoList_r13"
|
||||
#define ENB_CONFIG_STRING_PCCH_CONFIG_V1310 "pcch_config_v1310"
|
||||
#define ENB_CONFIG_STRING_SIB2_FREQ_HOPPINGPARAMETERS_R13 "sib2_freq_hoppingParameters_r13"
|
||||
|
||||
#define ENB_CONFIG_STRING_PDSCH_MAX_NUM_REPETITION_CE_MODE_A_R13 "pdsch_maxNumRepetitionCEmodeA_r13"
|
||||
#define ENB_CONFIG_STRING_PUSCH_MAX_NUM_REPETITION_CE_MODE_A_R13 "pusch_maxNumRepetitionCEmodeA_r13"
|
||||
typedef struct ccparams_eMTC_s {
|
||||
/// indicator that eMTC is configured for this cell
|
||||
int32_t eMTC_configured;
|
||||
/// the SIB2 parameters for eMTC SIB2
|
||||
ccparams_lte_t ccparams;
|
||||
int si_Narrowband_r13;
|
||||
int si_TBS_r13;
|
||||
int systemInfoValueTagSi_r13;
|
||||
int firstPreamble_r13;
|
||||
int lastPreamble_r13;
|
||||
int ra_ResponseWindowSize_r13;
|
||||
int mac_ContentionResolutionTimer_r13;
|
||||
int rar_HoppingConfig_r13;
|
||||
int rsrp_range_br;
|
||||
int prach_config_index_br;
|
||||
int prach_freq_offset_br;
|
||||
int prach_StartingSubframe_r13;
|
||||
int maxNumPreambleAttemptCE_r13;
|
||||
int numRepetitionPerPreambleAttempt_r13;
|
||||
int mpdcch_NumRepetition_RA_r13;
|
||||
int prach_HoppingConfig_r13;
|
||||
int *maxavailablenarrowband;
|
||||
int pucch_info_value;
|
||||
int paging_narrowbands_r13;
|
||||
int mpdcch_numrepetition_paging_r13;
|
||||
int nb_v1310;
|
||||
char *pucch_NumRepetitionCE_Msg4_Level0_r13;
|
||||
char *pucch_NumRepetitionCE_Msg4_Level1_r13;
|
||||
char *pucch_NumRepetitionCE_Msg4_Level2_r13;
|
||||
char *pucch_NumRepetitionCE_Msg4_Level3_r13;
|
||||
int sib2_mpdcch_pdsch_hoppingNB_r13;
|
||||
char *sib2_interval_DLHoppingConfigCommonModeA_r13;
|
||||
int sib2_interval_DLHoppingConfigCommonModeA_r13_val;
|
||||
char *sib2_interval_DLHoppingConfigCommonModeB_r13;
|
||||
int sib2_interval_DLHoppingConfigCommonModeB_r13_val;
|
||||
char *sib2_interval_ULHoppingConfigCommonModeA_r13;
|
||||
int sib2_interval_ULHoppingConfigCommonModeA_r13_val;
|
||||
char *sib2_interval_ULHoppingConfigCommonModeB_r13;
|
||||
int sib2_interval_ULHoppingConfigCommonModeB_r13_val;
|
||||
int sib2_mpdcch_pdsch_hoppingOffset_r13;
|
||||
int pusch_HoppingOffset_v1310;
|
||||
int hyperSFN_r13;
|
||||
int eDRX_Allowed_r13;
|
||||
int q_RxLevMinCE_r13;
|
||||
int q_QualMinRSRQ_CE_r13;
|
||||
char *si_WindowLength_BR_r13;
|
||||
char *si_RepetitionPattern_r13;
|
||||
int startSymbolBR_r13;
|
||||
char *si_HoppingConfigCommon_r13;
|
||||
char *si_ValidityTime_r13;
|
||||
char *mpdcch_pdsch_HoppingNB_r13;
|
||||
int interval_DLHoppingConfigCommonModeA_r13_val;
|
||||
int interval_DLHoppingConfigCommonModeB_r13_val;
|
||||
int mpdcch_pdsch_HoppingOffset_r13;
|
||||
char *preambleTransMax_CE_r13;
|
||||
int prach_HoppingOffset_r13;
|
||||
int schedulingInfoSIB1_BR_r13;
|
||||
int64_t fdd_DownlinkOrTddSubframeBitmapBR_val_r13;
|
||||
char *cellSelectionInfoCE_r13;
|
||||
char *bandwidthReducedAccessRelatedInfo_r13;
|
||||
char *fdd_DownlinkOrTddSubframeBitmapBR_r13;
|
||||
char *fdd_UplinkSubframeBitmapBR_r13;
|
||||
char *freqHoppingParametersDL_r13;
|
||||
char *interval_DLHoppingConfigCommonModeA_r13;
|
||||
char *interval_DLHoppingConfigCommonModeB_r13;
|
||||
char *prach_ConfigCommon_v1310;
|
||||
char *mpdcch_startSF_CSS_RA_r13;
|
||||
char *mpdcch_startSF_CSS_RA_r13_val;
|
||||
char *pdsch_maxNumRepetitionCEmodeA_r13;
|
||||
char *pdsch_maxNumRepetitionCEmodeB_r13;
|
||||
char *pusch_maxNumRepetitionCEmodeA_r13;
|
||||
char *pusch_maxNumRepetitionCEmodeB_r13;
|
||||
} ccparams_eMTC_t;
|
||||
|
||||
|
||||
#define EMTCPARAMS_DESC(eMTCconfig) { \
|
||||
{"eMTC_configured", NULL, 0, iptr:&eMTCconfig.eMTC_configured, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ROOT, NULL, 0, iptr:&eMTCconfig.ccparams.prach_root, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX, NULL, 0, iptr:&eMTCconfig.ccparams.prach_config_index, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HIGH_SPEED, NULL, 0, strptr:&eMTCconfig.ccparams.prach_high_speed, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ZERO_CORRELATION, NULL, 0, iptr:&eMTCconfig.ccparams.prach_zero_correlation, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET, NULL, 0, iptr:&eMTCconfig.ccparams.prach_freq_offset, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTA_SHIFT, NULL, 0, iptr:&eMTCconfig.ccparams.pucch_delta_shift, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NRB_CQI, NULL, 0, iptr:&eMTCconfig.ccparams.pucch_nRB_CQI, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NCS_AN, NULL, 0, iptr:&eMTCconfig.ccparams.pucch_nCS_AN, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_N1_AN, NULL, 0, iptr:&eMTCconfig.ccparams.pucch_n1_AN, defintval:32, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_RS_EPRE, NULL, 0, iptr:&eMTCconfig.ccparams.pdsch_referenceSignalPower, defintval:-29, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_PB, NULL, 0, iptr:&eMTCconfig.ccparams.pdsch_p_b, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_N_SB, NULL, 0, iptr:&eMTCconfig.ccparams.pusch_n_SB, defintval:1, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGMODE, NULL, 0, strptr:&eMTCconfig.ccparams.pusch_hoppingMode, defstrval:"interSubFrame", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGOFFSET, NULL, 0, iptr:&eMTCconfig.ccparams.pusch_hoppingOffset, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ENABLE64QAM, NULL, 0, strptr:&eMTCconfig.ccparams.pusch_enable64QAM, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_HOPPING_EN, NULL, 0, strptr:&eMTCconfig.ccparams.pusch_groupHoppingEnabled, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_ASSIGNMENT, NULL, 0, iptr:&eMTCconfig.ccparams.pusch_groupAssignment, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_SEQUENCE_HOPPING_EN, NULL, 0, strptr:&eMTCconfig.ccparams.pusch_sequenceHoppingEnabled, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_NDMRS1, NULL, 0, iptr:&eMTCconfig.ccparams.pusch_nDMRS1, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_DURATION, NULL, 0, strptr:&eMTCconfig.ccparams.phich_duration, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_RESOURCE, NULL, 0, strptr:&eMTCconfig.ccparams.phich_resource, defstrval:"ONESIXTH", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ENABLE, NULL, 0, strptr:&eMTCconfig.ccparams.srs_enable, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_BANDWIDTH_CONFIG, NULL, 0, iptr:&eMTCconfig.ccparams.srs_BandwidthConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_SUBFRAME_CONFIG, NULL, 0, iptr:&eMTCconfig.ccparams.srs_SubframeConfig, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ACKNACKST_CONFIG, NULL, 0, strptr:&eMTCconfig.ccparams.srs_ackNackST, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_MAXUPPTS, NULL, 0, strptr:&eMTCconfig.ccparams.srs_MaxUpPts, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_PO_NOMINAL, NULL, 0, iptr:&eMTCconfig.ccparams.pusch_p0_Nominal, defintval:-90, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ALPHA, NULL, 0, strptr:&eMTCconfig.ccparams.pusch_alpha, defstrval:"AL1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_PO_NOMINAL, NULL, 0, iptr:&eMTCconfig.ccparams.pucch_p0_Nominal, defintval:-96, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_MSG3_DELTA_PREAMBLE, NULL, 0, iptr:&eMTCconfig.ccparams.msg3_delta_Preamble, defintval:6, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1, NULL, 0, strptr:&eMTCconfig.ccparams.pucch_deltaF_Format1, defstrval:"DELTAF2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1b, NULL, 0, strptr:&eMTCconfig.ccparams.pucch_deltaF_Format1b, defstrval:"deltaF3", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2, NULL, 0, strptr:&eMTCconfig.ccparams.pucch_deltaF_Format2, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2A, NULL, 0, strptr:&eMTCconfig.ccparams.pucch_deltaF_Format2a, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2B, NULL, 0, strptr:&eMTCconfig.ccparams.pucch_deltaF_Format2b, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_NUM_RA_PREAMBLES, NULL, 0, iptr:&eMTCconfig.ccparams.rach_numberOfRA_Preambles, defstrval:"n4", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&eMTCconfig.ccparams.rach_preamblesGroupAConfig, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_SIZEOFRA_PREAMBLESGROUPA, NULL, 0, iptr:&eMTCconfig.ccparams.rach_sizeOfRA_PreamblesGroupA, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGESIZEGROUPA, NULL, 0, iptr:&eMTCconfig.ccparams.rach_messageSizeGroupA, defintval:56, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGEPOWEROFFSETGROUPB, NULL, 0, strptr:&eMTCconfig.ccparams.rach_messagePowerOffsetGroupB, defstrval:"minusinfinity", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_POWERRAMPINGSTEP, NULL, 0, iptr:&eMTCconfig.ccparams.rach_powerRampingStep, defintval:4, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLEINITIALRECEIVEDTARGETPOWER, NULL, 0, iptr:&eMTCconfig.ccparams.rach_preambleInitialReceivedTargetPower, defintval:-100, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLETRANSMAX, NULL, 0, iptr:&eMTCconfig.ccparams.rach_preambleTransMax, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_RARESPONSEWINDOWSIZE, NULL, 0, iptr:&eMTCconfig.ccparams.rach_raResponseWindowSize, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MACCONTENTIONRESOLUTIONTIMER, NULL, 0, iptr:&eMTCconfig.ccparams.rach_macContentionResolutionTimer, defintval:48, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MAXHARQMSG3TX, NULL, 0, iptr:&eMTCconfig.ccparams.rach_maxHARQ_Msg3Tx, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_DEFAULT_PAGING_CYCLE, NULL, 0, iptr:&eMTCconfig.ccparams.pcch_defaultPagingCycle, defintval:128, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_NB, NULL, 0, strptr:&eMTCconfig.ccparams.pcch_nB, defstrval:"oneT", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_BCCH_MODIFICATIONPERIODCOEFF, NULL, 0, iptr:&eMTCconfig.ccparams.bcch_modificationPeriodCoeff, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&eMTCconfig.ccparams.rach_preamblesGroupAConfig, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T300, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_t300, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T301, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_t301, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T310, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_t310, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T311, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_t311, defintval:10000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N310, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_n310, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N311, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TimersAndConstants_n311, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_TRANSMISSION_MODE, NULL, 0, iptr:&eMTCconfig.ccparams.ue_TransmissionMode, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SCHEDULING_INFO_SIB1_BR_R13, NULL, 0, iptr:&eMTCconfig.schedulingInfoSIB1_BR_r13, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_COMMON_V1310, NULL, 0, strptr:&eMTCconfig.prach_ConfigCommon_v1310, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13, NULL, 0, strptr:&eMTCconfig.mpdcch_startSF_CSS_RA_r13, defstrval:"fdd-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_START_SF_CSS_RA_R13_VAL, NULL, 0, strptr:&eMTCconfig.mpdcch_startSF_CSS_RA_r13_val, defstrval:"v1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HOPPING_OFFSET_R13, NULL, 0, iptr:&eMTCconfig.prach_HoppingOffset_r13, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_MAX_NUM_REPETITION_CE_MODE_A_R13, NULL, 0, strptr:&eMTCconfig.pdsch_maxNumRepetitionCEmodeA_r13, defstrval:"r16", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_MAX_NUM_REPETITION_CE_MODE_A_R13, NULL, 0, strptr:&eMTCconfig.pusch_maxNumRepetitionCEmodeA_r13, defstrval:"r8", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_CELL_SELECTION_INFO_CE_R13, NULL, 0, strptr:&eMTCconfig.cellSelectionInfoCE_r13, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_Q_RX_LEV_MIN_CE_R13, NULL, 0, iptr:&eMTCconfig.q_RxLevMinCE_r13, defintval:-70, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_BANDWIDTH_REDUCED_ACCESS_RELATED_INFO_R13, NULL, 0, strptr:&eMTCconfig.bandwidthReducedAccessRelatedInfo_r13, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_WINDOW_LENGTH_BR_R13, NULL, 0, strptr:&eMTCconfig.si_WindowLength_BR_r13, defstrval:"ms20", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_REPETITION_PATTERN_R13, NULL, 0, strptr:&eMTCconfig.si_RepetitionPattern_r13, defstrval:"everyRF", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FDD_DOWNLINK_OR_TDD_SUBFRAME_BITMAP_BR_R13, NULL, 0, strptr:&eMTCconfig.fdd_DownlinkOrTddSubframeBitmapBR_r13, defstrval:"subframePattern40-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FDD_DOWNLINK_OR_TDD_SUBFRAME_BITMAP_BR_VAL_R13, NULL, 0, i64ptr:&eMTCconfig.fdd_DownlinkOrTddSubframeBitmapBR_val_r13, defint64val:0xFFFFFFFFFF, TYPE_UINT64, 0}, \
|
||||
{ENB_CONFIG_STRING_START_SYMBOL_BR_R13, NULL, 0, iptr:&eMTCconfig.startSymbolBR_r13, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_HOPPING_CONFIG_COMMON_R13, NULL, 0, strptr:&eMTCconfig.si_HoppingConfigCommon_r13 , defstrval:"off", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_VALIDITY_TIME_R13, NULL, 0, strptr:&eMTCconfig.si_ValidityTime_r13, defstrval:"true", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FREQ_HOPPING_PARAMETERS_DL_R13, NULL, 0, strptr:&eMTCconfig.freqHoppingParametersDL_r13, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_NB_R13, NULL, 0, strptr:&eMTCconfig.mpdcch_pdsch_HoppingNB_r13, defstrval:"nb2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_A_R13, NULL, 0, strptr:&eMTCconfig.interval_DLHoppingConfigCommonModeA_r13, defstrval:"interval-FDD-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_A_R13_VAL, NULL, 0, iptr:&eMTCconfig.interval_DLHoppingConfigCommonModeA_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_B_R13, NULL, 0, strptr:&eMTCconfig.interval_DLHoppingConfigCommonModeB_r13, defstrval:"interval-FDD-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_B_R13_VAL, NULL, 0, iptr:&eMTCconfig.interval_DLHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_OFFSET_R13, NULL, 0, iptr:&eMTCconfig.mpdcch_pdsch_HoppingOffset_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PREAMBLE_TRANSMAX_CE_R13, NULL, 0, strptr:&eMTCconfig.preambleTransMax_CE_r13, defstrval:"n10", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL0, NULL, 0, strptr:&eMTCconfig.pucch_NumRepetitionCE_Msg4_Level0_r13, defstrval:"n1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL1, NULL, 0, strptr:&eMTCconfig.pucch_NumRepetitionCE_Msg4_Level1_r13, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL2, NULL, 0, strptr:&eMTCconfig.pucch_NumRepetitionCE_Msg4_Level2_r13, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL3, NULL, 0, strptr:&eMTCconfig.pucch_NumRepetitionCE_Msg4_Level3_r13, defstrval:"", TYPE_STRING, 0} \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_BR_PARAMETERS "br_parameters"
|
||||
#define BRPARAMS_DESC { \
|
||||
{"eMTC_configured", NULL, 0, iptr:&eMTC_configured, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SCHEDULING_INFO_SIB1_BR_R13, NULL, 0, iptr:&schedulingInfoSIB1_BR_r13, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_CELL_SELECTION_INFO_CE_R13, NULL, 0, strptr:&cellSelectionInfoCE_r13, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_Q_RX_LEV_MIN_CE_R13, NULL, 0, iptr:&q_RxLevMinCE_r13, defintval:-70, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_BANDWIDTH_REDUCED_ACCESS_RELATED_INFO_R13, NULL, 0, strptr:&bandwidthReducedAccessRelatedInfo_r13, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_WINDOW_LENGTH_BR_R13, NULL, 0, strptr:&si_WindowLength_BR_r13, defstrval:"ms20", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_REPETITION_PATTERN_R13, NULL, 0, strptr:&si_RepetitionPattern_r13, defstrval:"everyRF", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FDD_DOWNLINK_OR_TDD_SUBFRAME_BITMAP_BR_R13, NULL, 0, strptr:&fdd_DownlinkOrTddSubframeBitmapBR_r13, defstrval:"subframePattern40-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FDD_DOWNLINK_OR_TDD_SUBFRAME_BITMAP_BR_VAL_R13, NULL, 0, i64ptr:&fdd_DownlinkOrTddSubframeBitmapBR_val_r13, defint64val:0xFFFFFFFFFF, TYPE_UINT64, 0}, \
|
||||
{ENB_CONFIG_STRING_START_SYMBOL_BR_R13, NULL, 0, iptr:&startSymbolBR_r13, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_HOPPING_CONFIG_COMMON_R13, NULL, 0, strptr:&si_HoppingConfigCommon_r13 , defstrval:"off", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SI_VALIDITY_TIME_R13, NULL, 0, strptr:&si_ValidityTime_r13, defstrval:"true", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_FREQ_HOPPING_PARAMETERS_DL_R13, NULL, 0, strptr:&freqHoppingParametersDL_r13, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_NB_R13, NULL, 0, strptr:&mpdcch_pdsch_HoppingNB_r13, defstrval:"nb2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_A_R13, NULL, 0, strptr:&interval_DLHoppingConfigCommonModeA_r13, defstrval:"interval-FDD-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_A_R13_VAL, NULL, 0, iptr:&interval_DLHoppingConfigCommonModeA_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_B_R13, NULL, 0, strptr:&interval_DLHoppingConfigCommonModeB_r13, defstrval:"interval-FDD-r13", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_INTERVAL_DL_HOPPING_CONFIG_COMMON_MODE_B_R13_VAL, NULL, 0, iptr:&interval_DLHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_OFFSET_R13, NULL, 0, iptr:&mpdcch_pdsch_HoppingOffset_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PREAMBLE_TRANSMAX_CE_R13, NULL, 0, strptr:&preambleTransMax_CE_r13, defstrval:"n10", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ROOT, NULL, 0, iptr:&prach_root_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX, NULL, 0, iptr:&prach_config_index_emtc, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HIGH_SPEED, NULL, 0, strptr:&prach_high_speed_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_ZERO_CORRELATION, NULL, 0, iptr:&prach_zero_correlation_emtc, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET, NULL, 0, iptr:&prach_freq_offset_emtc, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTA_SHIFT, NULL, 0, iptr:&pucch_delta_shift_emtc, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NRB_CQI, NULL, 0, iptr:&pucch_nRB_CQI_emtc, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NCS_AN, NULL, 0, iptr:&pucch_nCS_AN_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_N1_AN, NULL, 0, iptr:&pucch_n1_AN_emtc, defintval:32, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_RS_EPRE, NULL, 0, iptr:&pdsch_referenceSignalPower_emtc, defintval:-29, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PDSCH_PB, NULL, 0, iptr:&pdsch_p_b_emtc, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_N_SB, NULL, 0, iptr:&pusch_n_SB_emtc, defintval:1, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGMODE, NULL, 0, strptr:&pusch_hoppingMode_emtc, defstrval:"interSubFrame", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_HOPPINGOFFSET, NULL, 0, iptr:&pusch_hoppingOffset_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ENABLE64QAM, NULL, 0, strptr:&pusch_enable64QAM_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_HOPPING_EN, NULL, 0, strptr:&pusch_groupHoppingEnabled_emtc, defstrval:"ENABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_GROUP_ASSIGNMENT, NULL, 0, iptr:&pusch_groupAssignment_emtc, defintval:0, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_SEQUENCE_HOPPING_EN, NULL, 0, strptr:&pusch_sequenceHoppingEnabled_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_NDMRS1, NULL, 0, iptr:&pusch_nDMRS1_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_DURATION, NULL, 0, strptr:&phich_duration_emtc, defstrval:"NORMAL", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PHICH_RESOURCE, NULL, 0, strptr:&phich_resource_emtc, defstrval:"ONESIXTH", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ENABLE, NULL, 0, strptr:&srs_enable_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_BANDWIDTH_CONFIG, NULL, 0, iptr:&srs_BandwidthConfig_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_SUBFRAME_CONFIG, NULL, 0, iptr:&srs_SubframeConfig_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_ACKNACKST_CONFIG, NULL, 0, strptr:&srs_ackNackST_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_SRS_MAXUPPTS, NULL, 0, strptr:&srs_MaxUpPts_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_PO_NOMINAL, NULL, 0, iptr:&pusch_p0_Nominal_emtc, defintval:-90, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUSCH_ALPHA, NULL, 0, strptr:&pusch_alpha_emtc, defstrval:"AL1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_PO_NOMINAL, NULL, 0, iptr:&pucch_p0_Nominal_emtc, defintval:-96, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_MSG3_DELTA_PREAMBLE, NULL, 0, iptr:&msg3_delta_Preamble_emtc, defintval:6, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1, NULL, 0, strptr:&pucch_deltaF_Format1_emtc, defstrval:"DELTAF2", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT1b, NULL, 0, strptr:&pucch_deltaF_Format1b_emtc, defstrval:"deltaF3", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2, NULL, 0, strptr:&pucch_deltaF_Format2_emtc, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2A, NULL, 0, strptr:&pucch_deltaF_Format2a_emtc, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_DELTAF_FORMAT2B, NULL, 0, strptr:&pucch_deltaF_Format2b_emtc, defstrval:"deltaF0", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_NUM_RA_PREAMBLES, NULL, 0, iptr:&rach_numberOfRA_Preambles_emtc, defstrval:"n4", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&rach_preamblesGroupAConfig_emtc, defstrval:"DISABLE", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_SIZEOFRA_PREAMBLESGROUPA, NULL, 0, iptr:&rach_sizeOfRA_PreamblesGroupA_emtc, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGESIZEGROUPA, NULL, 0, iptr:&rach_messageSizeGroupA_emtc, defintval:56, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MESSAGEPOWEROFFSETGROUPB, NULL, 0, strptr:&rach_messagePowerOffsetGroupB_emtc, defstrval:"minusinfinity", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_POWERRAMPINGSTEP, NULL, 0, iptr:&rach_powerRampingStep_emtc, defintval:4, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLEINITIALRECEIVEDTARGETPOWER, NULL, 0, iptr:&rach_preambleInitialReceivedTargetPower_emtc, defintval:-100, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLETRANSMAX, NULL, 0, iptr:&rach_preambleTransMax_emtc, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_RARESPONSEWINDOWSIZE, NULL, 0, iptr:&rach_raResponseWindowSize_emtc, defintval:10, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MACCONTENTIONRESOLUTIONTIMER, NULL, 0, iptr:&rach_macContentionResolutionTimer_emtc, defintval:48, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_MAXHARQMSG3TX, NULL, 0, iptr:&rach_maxHARQ_Msg3Tx_emtc, defintval:4, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_DEFAULT_PAGING_CYCLE, NULL, 0, iptr:&pcch_defaultPagingCycle_emtc, defintval:128, TYPE_INT, 0}, \
|
||||
{ENB_CONFIG_STRING_PCCH_NB, NULL, 0, strptr:&pcch_nB_emtc, defstrval:"oneT", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_BCCH_MODIFICATIONPERIODCOEFF, NULL, 0, iptr:&bcch_modificationPeriodCoeff_emtc, defintval:2, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T300, NULL, 0, iptr:&ue_TimersAndConstants_t300_emtc, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T301, NULL, 0, iptr:&ue_TimersAndConstants_t301_emtc, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T310, NULL, 0, iptr:&ue_TimersAndConstants_t310_emtc, defintval:1000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_T311, NULL, 0, iptr:&ue_TimersAndConstants_t311_emtc, defintval:10000, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N310, NULL, 0, iptr:&ue_TimersAndConstants_n310_emtc, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UETIMERS_N311, NULL, 0, iptr:&ue_TimersAndConstants_n311_emtc, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_UE_TRANSMISSION_MODE, NULL, 0, iptr:&ue_TransmissionMode_emtc, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL0, NULL, 0, strptr:&pucch_NumRepetitionCE_Msg4_Level0_r13, defstrval:"n1", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL1, NULL, 0, strptr:&pucch_NumRepetitionCE_Msg4_Level1_r13, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL2, NULL, 0, strptr:&pucch_NumRepetitionCE_Msg4_Level2_r13, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_PUCCH_NUM_REPETITION_CE_MSG4_LEVEL3, NULL, 0, strptr:&pucch_NumRepetitionCE_Msg4_Level3_r13, defstrval:"", TYPE_STRING, 0}, \
|
||||
{ENB_CONFIG_STRING_RACH_PREAMBLESGROUPACONFIG, NULL, 0, strptr:&rach_preamblesGroupAConfig_emtc, defstrval:"", TYPE_STRING, 0}, \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_SYSTEM_INFO_VALUE_TAG_LIST "system_info_value_tag_SI"
|
||||
#define SYSTEM_INFO_VALUE_TAG_SI_DESC { \
|
||||
{"systemInfoValueTagSi_r13", NULL, 0, iptr:&systemInfoValueTagSi_r13, defintval:0, TYPE_UINT, 0} \
|
||||
#define SYSTEM_INFO_VALUE_TAG_SI_DESC(eMTCconfig) { \
|
||||
{"systemInfoValueTagSi_r13", NULL, 0, iptr:&eMTCconfig.systemInfoValueTagSi_r13, defintval:0, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
|
||||
#define ENB_CONFIG_STRING_SCHEDULING_INFO_BR "scheduling_info_br"
|
||||
#define SI_INFO_BR_DESC { \
|
||||
{"si_Narrowband_r13", NULL, 0, iptr:&si_Narrowband_r13, defintval:5, TYPE_UINT, 0}, \
|
||||
{"si_TBS_r13", NULL, 0, iptr:&si_TBS_r13, defintval:5, TYPE_UINT, 0} \
|
||||
#define SI_INFO_BR_DESC(eMTCconfig) { \
|
||||
{"si_Narrowband_r13", NULL, 0, iptr:&eMTCconfig.si_Narrowband_r13, defintval:5, TYPE_UINT, 0}, \
|
||||
{"si_TBS_r13", NULL, 0, iptr:&eMTCconfig.si_TBS_r13, defintval:5, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_RSRP_RANGE_LIST "rsrp_range_list"
|
||||
#define RSRP_RANGE_LIST_DESC { \
|
||||
{"rsrp_range_br", NULL, 0, iptr:&rsrp_range_br, defintval:0, TYPE_UINT, 0} \
|
||||
#define RSRP_RANGE_LIST_DESC(eMTCconfig) { \
|
||||
{"rsrp_range_br", NULL, 0, iptr:&eMTCconfig.rsrp_range_br, defintval:0, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
|
||||
#define ENB_CONFIG_STRING_FIRST_PREAMBLE_R13 "firstPreamble_r13"
|
||||
#define ENB_CONFIG_STRING_LAST_PREAMBLE_R13 "lastPreamble_r13"
|
||||
#define ENB_CONFIG_STRING_RA_RESPONSE_WINDOW_SIZE_R13 "ra_ResponseWindowSize_r13"
|
||||
#define ENB_CONFIG_STRING_MAC_CONTENTION_RESOLUTION_TIMER_R13 "mac_ContentionResolutionTimer_r13"
|
||||
#define ENB_CONFIG_STRING_RAR_HOPPING_CONFIG_R13 "rar_HoppingConfig_r13 "
|
||||
|
||||
#define ENB_CONFIG_STRING_RACH_CE_LEVELINFOLIST_R13 "rach_CE_LevelInfoList_r13"
|
||||
#define RACH_CE_LEVELINFOLIST_R13_DESC { \
|
||||
{ENB_CONFIG_STRING_FIRST_PREAMBLE_R13, NULL, 0, iptr:&firstPreamble_r13, defintval:60, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_LAST_PREAMBLE_R13, NULL, 0, iptr:&lastPreamble_r13, defintval:63, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RA_RESPONSE_WINDOW_SIZE_R13, NULL, 0, iptr:&ra_ResponseWindowSize_r13, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MAC_CONTENTION_RESOLUTION_TIMER_R13, NULL, 0, iptr:&mac_ContentionResolutionTimer_r13, defintval:80, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RAR_HOPPING_CONFIG_R13, NULL, 0, iptr:&rar_HoppingConfig_r13, defintval:0, TYPE_UINT, 0}\
|
||||
#define RACH_CE_LEVELINFOLIST_R13_DESC(eMTCconfig) { \
|
||||
{ENB_CONFIG_STRING_FIRST_PREAMBLE_R13, NULL, 0, iptr:&eMTCconfig.firstPreamble_r13, defintval:60, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_LAST_PREAMBLE_R13, NULL, 0, iptr:&eMTCconfig.lastPreamble_r13, defintval:63, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RA_RESPONSE_WINDOW_SIZE_R13, NULL, 0, iptr:&eMTCconfig.ra_ResponseWindowSize_r13, defintval:20, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MAC_CONTENTION_RESOLUTION_TIMER_R13, NULL, 0, iptr:&eMTCconfig.mac_ContentionResolutionTimer_r13, defintval:80, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_RAR_HOPPING_CONFIG_R13, NULL, 0, iptr:&eMTCconfig.rar_HoppingConfig_r13, defintval:0, TYPE_UINT, 0}\
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_PRACH_CONFIG_INDEX_BR "prach_config_index_br"
|
||||
#define ENB_CONFIG_STRING_PRACH_FREQ_OFFSET_BR "prach_freq_offset_br"
|
||||
#define ENB_CONFIG_STRING_PRACH_STARTING_SUBFRAME_R13 "prach_StartingSubframe_r13"
|
||||
#define ENB_CONFIG_STRING_MAX_NUM_PER_PREAMBLE_ATTEMPT_CE_R13 "maxNumPreambleAttemptCE_r13"
|
||||
#define ENB_CONFIG_STRING_NUM_REPETITION_PER_PREAMBLE_ATTEMPT_R13 "numRepetitionPerPreambleAttempt_r13"
|
||||
#define ENB_CONFIG_STRING_MPDCCH_NUM_REPETITION_RA_R13 "mpdcch_NumRepetition_RA_r13"
|
||||
#define ENB_CONFIG_STRING_PRACH_HOPPING_CONFIG_R13 "prach_HoppingConfig_r13"
|
||||
#define ENB_CONFIG_SRING_MAX_AVAILABLE_NARROW_BAND "max_available_narrow_band"
|
||||
|
||||
#define ENB_CONFIG_STRING_PRACH_PARAMETERS_CE_R13 "prach_parameters_ce_r13"
|
||||
#define PRACH_PARAMS_CE_R13_DESC { \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX_BR, NULL, 0, iptr:&prach_config_index_br, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET_BR, NULL, 0, iptr:&prach_freq_offset_br, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_STARTING_SUBFRAME_R13, NULL, 0, iptr:&prach_StartingSubframe_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MAX_NUM_PER_PREAMBLE_ATTEMPT_CE_R13, NULL, 0, iptr:&maxNumPreambleAttemptCE_r13, defintval:10, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_NUM_REPETITION_PER_PREAMBLE_ATTEMPT_R13, NULL, 0, iptr:&numRepetitionPerPreambleAttempt_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_NUM_REPETITION_RA_R13, NULL, 0, iptr:&mpdcch_NumRepetition_RA_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HOPPING_CONFIG_R13, NULL, 0, iptr:&prach_HoppingConfig_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
#define PRACH_PARAMS_CE_R13_DESC(eMTCconfig) { \
|
||||
{ENB_CONFIG_STRING_PRACH_CONFIG_INDEX_BR, NULL, 0, iptr:&eMTCconfig.prach_config_index_br, defintval:3, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_FREQ_OFFSET_BR, NULL, 0, iptr:&eMTCconfig.prach_freq_offset_br, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_STARTING_SUBFRAME_R13, NULL, 0, iptr:&eMTCconfig.prach_StartingSubframe_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MAX_NUM_PER_PREAMBLE_ATTEMPT_CE_R13, NULL, 0, iptr:&eMTCconfig.maxNumPreambleAttemptCE_r13, defintval:10, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_NUM_REPETITION_PER_PREAMBLE_ATTEMPT_R13, NULL, 0, iptr:&eMTCconfig.numRepetitionPerPreambleAttempt_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_NUM_REPETITION_RA_R13, NULL, 0, iptr:&eMTCconfig.mpdcch_NumRepetition_RA_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_PRACH_HOPPING_CONFIG_R13, NULL, 0, iptr:&eMTCconfig.prach_HoppingConfig_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_SRING_MAX_AVAILABLE_NARROW_BAND, NULL, 0, uptr:NULL, defintarrayval:NULL, TYPE_INTARRAY, 0} \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_PUCCH_INFO_VALUE "pucch_info_value"
|
||||
|
||||
#define ENB_CONFIG_STRING_N1PUCCH_AN_INFOLIST_R13 "n1PUCCH_AN_InfoList_r13"
|
||||
#define N1PUCCH_AN_INFOLIST_R13_DESC { \
|
||||
{ENB_CONFIG_STRING_PUCCH_INFO_VALUE, NULL, 0, iptr:&pucch_info_value, defintval:0, TYPE_UINT, 0} \
|
||||
#define N1PUCCH_AN_INFOLIST_R13_DESC(eMTCconfig) { \
|
||||
{ENB_CONFIG_STRING_PUCCH_INFO_VALUE, NULL, 0, iptr:&eMTCconfig.pucch_info_value, defintval:0, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_PCCH_CONFIG_V1310 "pcch_config_v1310"
|
||||
#define PCCH_CONFIG_V1310_DESC { \
|
||||
{ENB_CONFIG_STRING_PAGING_NARROWBANDS_R13, NULL, 0, iptr:&paging_narrowbands_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_NUMREPETITION_PAGING_R13, NULL, 0, iptr:&mpdcch_numrepetition_paging_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_NB_V1310, NULL, 0, iptr:&nb_v1310, defintval:256, TYPE_UINT, 0} \
|
||||
|
||||
#define PCCH_CONFIG_V1310_DESC(eMTCconfig) { \
|
||||
{ENB_CONFIG_STRING_PAGING_NARROWBANDS_R13, NULL, 0, iptr:&eMTCconfig.paging_narrowbands_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_MPDCCH_NUMREPETITION_PAGING_R13, NULL, 0, iptr:&eMTCconfig.mpdcch_numrepetition_paging_r13, defintval:1, TYPE_UINT, 0}, \
|
||||
{ENB_CONFIG_STRING_NB_V1310, NULL, 0, iptr:&eMTCconfig.nb_v1310, defintval:256, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
#define ENB_CONFIG_STRING_SIB2_FREQ_HOPPINGPARAMETERS_R13 "sib2_freq_hoppingParameters_r13"
|
||||
#define SIB2_FREQ_HOPPING_R13_DESC { \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_NB_R13, NULL, 0, iptr:&sib2_mpdcch_pdsch_hoppingNB_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeA_r13", NULL, 0, strptr:&sib2_interval_DLHoppingConfigCommonModeA_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeA_r13_val", NULL, 0, iptr:&sib2_interval_DLHoppingConfigCommonModeA_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeB_r13", NULL, 0, strptr:&sib2_interval_DLHoppingConfigCommonModeB_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeB_r13_val", NULL, 0, iptr:&sib2_interval_DLHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeA_r13", NULL, 0, strptr:&sib2_interval_ULHoppingConfigCommonModeA_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeA_r13_val", NULL, 0, iptr:&sib2_interval_ULHoppingConfigCommonModeA_r13_val, defintval:4, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeB_r13", NULL, 0, strptr:&sib2_interval_ULHoppingConfigCommonModeB_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeB_r13_val", NULL, 0, iptr:&sib2_interval_ULHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_mpdcch_pdsch_hoppingOffset_r13", NULL, 0, iptr:&sib2_mpdcch_pdsch_hoppingOffset_r13, defintval:1, TYPE_UINT, 0} \
|
||||
|
||||
#define SIB2_FREQ_HOPPING_R13_DESC(eMTCconfig) { \
|
||||
{ENB_CONFIG_STRING_MPDCCH_PDSCH_HOPPING_NB_R13, NULL, 0, iptr:&eMTCconfig.sib2_mpdcch_pdsch_hoppingNB_r13, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeA_r13", NULL, 0, strptr:&eMTCconfig.sib2_interval_DLHoppingConfigCommonModeA_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeA_r13_val", NULL, 0, iptr:&eMTCconfig.sib2_interval_DLHoppingConfigCommonModeA_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeB_r13", NULL, 0, strptr:&eMTCconfig.sib2_interval_DLHoppingConfigCommonModeB_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_DLHoppingConfigCommonModeB_r13_val", NULL, 0, iptr:&eMTCconfig.sib2_interval_DLHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeA_r13", NULL, 0, strptr:&eMTCconfig.sib2_interval_ULHoppingConfigCommonModeA_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeA_r13_val", NULL, 0, iptr:&eMTCconfig.sib2_interval_ULHoppingConfigCommonModeA_r13_val, defintval:4, TYPE_UINT, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeB_r13", NULL, 0, strptr:&eMTCconfig.sib2_interval_ULHoppingConfigCommonModeB_r13, defstrval:"FDD", TYPE_STRING, 0}, \
|
||||
{"sib2_interval_ULHoppingConfigCommonModeB_r13_val", NULL, 0, iptr:&eMTCconfig.sib2_interval_ULHoppingConfigCommonModeB_r13_val, defintval:0, TYPE_UINT, 0}, \
|
||||
{"sib2_mpdcch_pdsch_hoppingOffset_r13", NULL, 0, iptr:&eMTCconfig.sib2_mpdcch_pdsch_hoppingOffset_r13, defintval:1, TYPE_UINT, 0} \
|
||||
}
|
||||
|
||||
@@ -276,7 +276,8 @@ generate_Msg2(module_id_t module_idP, int CC_idP, frame_t frameP,
|
||||
if (absSF > absSF_Msg2)
|
||||
return; // we're not ready yet, need to be to start ==
|
||||
|
||||
if (cc[CC_idP].radioResourceConfigCommon_BR) {
|
||||
if (cc[CC_idP].mib->message.schedulingInfoSIB1_BR_r13 > 0 &&
|
||||
cc[CC_idP].radioResourceConfigCommon_BR) {
|
||||
|
||||
ext4_prach = cc[CC_idP].radioResourceConfigCommon_BR->ext4->prach_ConfigCommon_v1310;
|
||||
prach_ParametersListCE_r13 = &ext4_prach->prach_ParametersListCE_r13;
|
||||
@@ -606,7 +607,8 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP,
|
||||
int pucchreps[4] = { 1, 1, 1, 1 };
|
||||
int n1pucchan[4] = { 0, 0, 0, 0 };
|
||||
|
||||
if (cc[CC_idP].radioResourceConfigCommon_BR) {
|
||||
if (cc[CC_idP].mib->message.schedulingInfoSIB1_BR_r13 > 0 &&
|
||||
cc[CC_idP].radioResourceConfigCommon_BR) {
|
||||
|
||||
ext4_prach = cc[CC_idP].radioResourceConfigCommon_BR->ext4->prach_ConfigCommon_v1310;
|
||||
ext4_pucch = cc[CC_idP].radioResourceConfigCommon_BR->ext4->pucch_ConfigCommon_v1310;
|
||||
@@ -656,7 +658,7 @@ generate_Msg4(module_id_t module_idP, int CC_idP, frame_t frameP,
|
||||
N_RB_DL = to_prb(cc[CC_idP].mib->message.dl_Bandwidth);
|
||||
|
||||
UE_id = find_UE_id(module_idP, ra->rnti);
|
||||
AssertFatal(UE_id >= 0, "Can't find UE for t-crnti\n");
|
||||
AssertFatal(UE_id >= 0, "Can't find UE for t-crnti %x\n",ra->rnti);
|
||||
|
||||
// set HARQ process round to 0 for this UE
|
||||
|
||||
@@ -1361,18 +1363,21 @@ initiate_ra_proc(module_id_t module_idP,
|
||||
COMMON_channels_t *cc = &RC.mac[module_idP]->common_channels[CC_id];
|
||||
RA_t *ra = &cc->ra[0];
|
||||
|
||||
static uint8_t failure_cnt = 0;
|
||||
|
||||
#if (RRC_VERSION >= MAKE_VERSION(14, 0, 0))
|
||||
|
||||
struct PRACH_ConfigSIB_v1310 *ext4_prach = NULL;
|
||||
PRACH_ParametersListCE_r13_t *prach_ParametersListCE_r13 = NULL;
|
||||
|
||||
static uint8_t failure_cnt = 0;
|
||||
|
||||
if (cc->radioResourceConfigCommon_BR
|
||||
&& cc->radioResourceConfigCommon_BR->ext4) {
|
||||
ext4_prach = cc->radioResourceConfigCommon_BR->ext4->prach_ConfigCommon_v1310;
|
||||
prach_ParametersListCE_r13 = &ext4_prach->prach_ParametersListCE_r13;
|
||||
|
||||
if (cc->mib->message.schedulingInfoSIB1_BR_r13>0) {
|
||||
AssertFatal(cc->radioResourceConfigCommon_BR != NULL,"radioResourceConfigCommon_BR is null\n");
|
||||
AssertFatal(cc->radioResourceConfigCommon_BR->ext4 != NULL, "radioResourceConfigCommon_BR->ext4 is null\n");
|
||||
ext4_prach = cc->radioResourceConfigCommon_BR->ext4->prach_ConfigCommon_v1310;
|
||||
AssertFatal(ext4_prach!=NULL,"ext4_prach is null\n");
|
||||
prach_ParametersListCE_r13 = &ext4_prach->prach_ParametersListCE_r13;
|
||||
}
|
||||
|
||||
#endif /* #if (RRC_VERSION >= MAKE_VERSION(14, 0, 0)) */
|
||||
|
||||
@@ -2704,7 +2704,7 @@ void dlsch_scheduler_qos_multiplexing(module_id_t Mod_id, int frameP, sub_frame_
|
||||
}
|
||||
|
||||
|
||||
#ifdef Rel14
|
||||
#if (RRC_VERSION >= MAKE_VERSION(14, 0, 0))
|
||||
//------------------------------------------------------------------------------
|
||||
void
|
||||
schedule_ue_spec_br(
|
||||
@@ -2713,9 +2713,9 @@ schedule_ue_spec_br(
|
||||
sub_frame_t subframeP
|
||||
) {
|
||||
int CC_id = 0,UE_id;
|
||||
eNB_MAC_INST *eNB = RC.mac[module_idP];
|
||||
COMMON_channels_t *cc = eNB->common_channels;
|
||||
UE_list_t *UE_list = &eNB->UE_list;
|
||||
eNB_MAC_INST *mac = RC.mac[module_idP];
|
||||
COMMON_channels_t *cc = mac->common_channels;
|
||||
UE_list_t *UE_list = &mac->UE_list;
|
||||
UE_TEMPLATE *UE_template;
|
||||
UE_sched_ctrl *ue_sched_ctl;
|
||||
int32_t tpc=1;
|
||||
@@ -2749,11 +2749,13 @@ schedule_ue_spec_br(
|
||||
uint32_t ackNAK_absSF;
|
||||
int first_rb;
|
||||
|
||||
dl_req = &eNB->DL_req[CC_id].dl_config_request_body;
|
||||
dl_req = &mac->DL_req[CC_id].dl_config_request_body;
|
||||
dl_config_pdu = &dl_req->dl_config_pdu_list[dl_req->number_pdu];
|
||||
|
||||
if ((frameP&1) == 0) return;
|
||||
|
||||
if (cc[CC_id].mib->message.schedulingInfoSIB1_BR_r13 ==0) return;
|
||||
|
||||
if (cc[CC_id].radioResourceConfigCommon_BR) {
|
||||
|
||||
ext4_prach = cc[CC_id].radioResourceConfigCommon_BR->ext4->prach_ConfigCommon_v1310;
|
||||
@@ -3121,7 +3123,7 @@ schedule_ue_spec_br(
|
||||
if (opt_enabled == 1) {
|
||||
trace_pdu(1, (uint8_t *)UE_list->DLSCH_pdu[CC_id][0][UE_id].payload[0],
|
||||
TBS, module_idP, 3, UE_RNTI(module_idP,UE_id),
|
||||
eNB->frame, eNB->subframe,0,0);
|
||||
mac->frame, mac->subframe,0,0);
|
||||
LOG_D(OPT,"[eNB %d][DLSCH] CC_id %d Frame %d rnti %x with size %d\n",
|
||||
module_idP, CC_id, frameP, UE_RNTI(module_idP,UE_id), TBS);
|
||||
}
|
||||
@@ -3134,7 +3136,7 @@ schedule_ue_spec_br(
|
||||
|
||||
/* TODO: fix how we deal with power, unit is not dBm, it's special from nfapi */
|
||||
normalized_rx_power = (5*ue_sched_ctl->pucch1_snr[CC_id]-640)/10+30;
|
||||
target_rx_power = eNB->puCch10xSnr/10+30;
|
||||
target_rx_power = mac->puCch10xSnr/10+30;
|
||||
|
||||
// this assumes accumulated tpc
|
||||
// make sure that we are only sending a tpc update once a frame, otherwise the control loop will freak out
|
||||
@@ -3241,7 +3243,7 @@ schedule_ue_spec_br(
|
||||
memset ((void *) dl_config_pdu, 0, sizeof (nfapi_dl_config_request_pdu_t));
|
||||
dl_config_pdu->pdu_type = NFAPI_DL_CONFIG_DLSCH_PDU_TYPE;
|
||||
dl_config_pdu->pdu_size = (uint8_t) (2 + sizeof (nfapi_dl_config_dlsch_pdu));
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.pdu_index = eNB->pdu_index[CC_id];
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.pdu_index = mac->pdu_index[CC_id];
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.rnti = rnti;
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.resource_allocation_type = 2; // format 1A/1B/1D
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.virtual_resource_block_assignment_flag = 0; // localized
|
||||
@@ -3273,18 +3275,18 @@ schedule_ue_spec_br(
|
||||
dl_req->number_pdu++;
|
||||
|
||||
// DL request
|
||||
eNB->TX_req[CC_id].sfn_sf = (frameP << 4) + subframeP;
|
||||
TX_req = &eNB->TX_req[CC_id].tx_request_body.tx_pdu_list[eNB->TX_req[CC_id].tx_request_body.number_of_pdus];
|
||||
mac->TX_req[CC_id].sfn_sf = (frameP << 4) + subframeP;
|
||||
TX_req = &mac->TX_req[CC_id].tx_request_body.tx_pdu_list[mac->TX_req[CC_id].tx_request_body.number_of_pdus];
|
||||
TX_req->pdu_length = get_TBS_DL(UE_template->mcs[harq_pid],
|
||||
6);
|
||||
TX_req->pdu_index = eNB->pdu_index[CC_id]++;
|
||||
TX_req->pdu_index = mac->pdu_index[CC_id]++;
|
||||
TX_req->num_segments = 1;
|
||||
TX_req->segments[0].segment_length = TX_req->pdu_length;
|
||||
TX_req->segments[0].segment_data = eNB->UE_list.DLSCH_pdu[CC_id][0][(unsigned char) UE_id].payload[0];
|
||||
eNB->TX_req[CC_id].tx_request_body.number_of_pdus++;
|
||||
TX_req->segments[0].segment_data = mac->UE_list.DLSCH_pdu[CC_id][0][(unsigned char) UE_id].payload[0];
|
||||
mac->TX_req[CC_id].tx_request_body.number_of_pdus++;
|
||||
|
||||
ackNAK_absSF = absSF + 4;
|
||||
ul_req = &eNB->UL_req_tmp[CC_id][ackNAK_absSF % 10].ul_config_request_body;
|
||||
ul_req = &mac->UL_req_tmp[CC_id][ackNAK_absSF % 10].ul_config_request_body;
|
||||
ul_config_pdu = &ul_req->ul_config_pdu_list[ul_req->number_of_pdus];
|
||||
|
||||
ul_config_pdu->pdu_type = NFAPI_UL_CONFIG_UCI_HARQ_PDU_TYPE;
|
||||
@@ -3309,10 +3311,10 @@ schedule_ue_spec_br(
|
||||
}
|
||||
ul_req->number_of_pdus++;
|
||||
T (T_ENB_MAC_UE_DL_PDU_WITH_DATA, T_INT (module_idP), T_INT (CC_id), T_INT (rnti), T_INT (frameP), T_INT (subframeP),
|
||||
T_INT (0 /*harq_pid always 0? */ ), T_BUFFER (&eNB->UE_list.DLSCH_pdu[CC_id][0][UE_id].payload[0], TX_req->pdu_length));
|
||||
T_INT (0 /*harq_pid always 0? */ ), T_BUFFER (&mac->UE_list.DLSCH_pdu[CC_id][0][UE_id].payload[0], TX_req->pdu_length));
|
||||
|
||||
if (opt_enabled == 1) {
|
||||
trace_pdu (1, (uint8_t *) eNB->UE_list.DLSCH_pdu[CC_id][0][(unsigned char) UE_id].payload[0], TX_req->pdu_length , UE_id, 3, rnti, frameP, subframeP, 0, 0);
|
||||
trace_pdu (1, (uint8_t *) mac->UE_list.DLSCH_pdu[CC_id][0][(unsigned char) UE_id].payload[0], TX_req->pdu_length , UE_id, 3, rnti, frameP, subframeP, 0, 0);
|
||||
LOG_D (OPT, "[eNB %d][DLSCH] CC_id %d Frame %d trace pdu for rnti %x with size %d\n", module_idP, CC_id, frameP, rnti, TX_req->pdu_length );
|
||||
}
|
||||
|
||||
@@ -3818,6 +3820,7 @@ void schedule_PCH(module_id_t module_idP, frame_t frameP, sub_frame_t subframeP)
|
||||
// dl_config_pdu->dlsch_pdu.dlsch_pdu_rel8.bf_vector = ;
|
||||
|
||||
// Rel10 fields
|
||||
|
||||
#if (RRC_VERSION >= MAKE_VERSION(10, 0, 0))
|
||||
dl_config_pdu->dlsch_pdu.dlsch_pdu_rel10.pdsch_start = 3;
|
||||
#endif
|
||||
|
||||
@@ -31,9 +31,9 @@ log_config = {
|
||||
global_log_verbosity ="medium";
|
||||
hw_log_level ="info";
|
||||
hw_log_verbosity ="medium";
|
||||
phy_log_level ="debug";
|
||||
phy_log_level ="info";
|
||||
phy_log_verbosity ="medium";
|
||||
mac_log_level ="debug";
|
||||
mac_log_level ="info";
|
||||
mac_log_verbosity ="high";
|
||||
rlc_log_level ="info";
|
||||
rlc_log_verbosity ="medium";
|
||||
|
||||
Reference in New Issue
Block a user