Commit 4e7ac9ad authored by Kirill Smelkov's avatar Kirill Smelkov

.

parent 39bf72b2
......@@ -25,7 +25,7 @@
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
enb_id: 0x10012,
enb_id: 0x1A2D0,
// LTE cells
cell_list: [
......@@ -50,7 +50,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001202, // -> CELL__b
cell_id: 0x1A2D002, // -> CELL__b
n_id_cell: 1,
dl_earfcn: 3050,
tac: 0x1234,
......@@ -152,7 +152,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001201, // -> CELL__a
cell_id: 0x1A2D001, // -> CELL__a
n_id_cell: 1,
dl_earfcn: 3350,
tac: 0x1234,
......@@ -237,7 +237,7 @@
cell_default: {
plmn_list: [
{
plmn: "31415",
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
......
......@@ -32,9 +32,9 @@
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
xn_peers: ["55.1.1.1", "55.1.1.2"],
enb_id: 0x10012,
enb_id: 0x1A2D0,
gnb_id_bits: 28,
gnb_id: 0x54321,
gnb_id: 0x12345,
en_dc_support: true,
// LTE cells
......@@ -60,7 +60,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001202, // -> CELL__b
cell_id: 0x1A2D002, // -> CELL__b
n_id_cell: 2,
dl_earfcn: 38100,
tac: 0x1234,
......@@ -177,7 +177,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001201, // -> CELL__a
cell_id: 0x1A2D001, // -> CELL__a
n_id_cell: 1,
dl_earfcn: 38050,
tac: 0x1234,
......@@ -277,7 +277,7 @@
cell_default: {
plmn_list: [
{
plmn: "31415",
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
......@@ -393,7 +393,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001201, // -> CELL__a
cell_id: 0x1A2D001, // -> CELL__a
n_id_cell: 1,
dl_earfcn: 38050,
tac: 0x1234,
......@@ -402,7 +402,7 @@
},
{
rat: "eutra",
cell_id: 0x1001202, // -> CELL__b
cell_id: 0x1A2D002, // -> CELL__b
n_id_cell: 2,
dl_earfcn: 38100,
tac: 0x1234,
......@@ -588,8 +588,8 @@
plmn_list: [
{
plmn: "51413",
tac: 123,
plmn: "00101",
tac: 100,
reserved: false,
nssai: [
{
......
......@@ -32,7 +32,7 @@
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
enb_id: 0x10012,
enb_id: 0x1A2D0,
// LTE cells
cell_list: [
......@@ -57,7 +57,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001222, // -> CELL4
cell_id: 0x1A2D022, // -> CELL4
n_id_cell: 22,
dl_earfcn: 500,
tac: 0x1234,
......@@ -159,7 +159,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001221, // -> CELL2
cell_id: 0x1A2D021, // -> CELL2
n_id_cell: 21,
dl_earfcn: 100,
tac: 0x1234,
......@@ -244,7 +244,7 @@
cell_default: {
plmn_list: [
{
plmn: "31415",
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
......
......@@ -39,9 +39,9 @@
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
xn_peers: ["55.1.1.1", "55.1.1.2"],
enb_id: 0x10012,
enb_id: 0x1A2D0,
gnb_id_bits: 28,
gnb_id: 0x54321,
gnb_id: 0x12345,
en_dc_support: true,
// LTE cells
......@@ -149,7 +149,7 @@
cell_default: {
plmn_list: [
{
plmn: "31415",
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
......@@ -265,7 +265,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001221, // -> CELL__a
cell_id: 0x1A2D021, // -> CELL__a
n_id_cell: 21,
dl_earfcn: 3350,
tac: 0x1234,
......@@ -438,8 +438,8 @@
plmn_list: [
{
plmn: "51413",
tac: 123,
plmn: "00101",
tac: 100,
reserved: false,
nssai: [
{
......
......@@ -33,9 +33,9 @@
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
xn_peers: ["55.1.1.1", "55.1.1.2"],
enb_id: 0x10012,
enb_id: 0x1A2D0,
gnb_id_bits: 28,
gnb_id: 0x54321,
gnb_id: 0x12345,
en_dc_support: true,
// LTE cells
......@@ -146,7 +146,7 @@
cell_default: {
plmn_list: [
{
plmn: "31415",
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
......@@ -262,7 +262,7 @@
// Intra-ENB HO
{
rat: "eutra",
cell_id: 0x1001201, // -> CELL__a
cell_id: 0x1A2D001, // -> CELL__a
n_id_cell: 1,
dl_earfcn: 38050,
tac: 0x1234,
......@@ -445,8 +445,8 @@
plmn_list: [
{
plmn: "51413",
tac: 123,
plmn: "00101",
tac: 100,
reserved: false,
nssai: [
{
......
// DRB configuration for LTE cell CELL @ RU.
// DRB configuration vary in beteen FDD and TDD modes.
// TDD T_REORDERING=65
[
{
qci: 1,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_Size: 7,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 12,
pdcp_SN_SizeDL: 12,
statusReportRequired: false,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 5,
},
dl_um: {
sn_FieldLength: 5,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 2,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 150,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 150,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 9,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 3,
pdcp_config: {
discardTimer: 100,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 8,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 4,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 10,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 65,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_Size: 7,
},
nr_pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 12,
pdcp_SN_SizeDL: 12,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 5,
},
dl_um: {
sn_FieldLength: 5,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 5,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 66,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 150,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 150,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 67,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 6,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 5,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 6,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 6,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 12,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 7,
pdcp_config: {
discardTimer: 100,
pdcp_SN_Size: 12,
},
nr_pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_um: {
sn_FieldLength: 10,
},
dl_um: {
sn_FieldLength: 10,
t_Reordering: 65,
},
},
logical_channel_config: {
priority: 13,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 8,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 14,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 9,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
en_dc_split: {
type: "scg",
ul_data_threshold: 0
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 15,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 3,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 69,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 4,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
{
qci: 70,
pdcp_config: {
discardTimer: 0,
statusReportRequired: true,
},
nr_pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
restrict_to_ng_enb: true,
},
rlc_config: {
ul_am: {
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 32,
},
dl_am: {
t_Reordering: 65,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 11,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
logicalChannelSR_Mask: false,
logicalChannelSR_Prohibit: false,
},
},
]
\ No newline at end of file
/* SIB2/SIB3 for LTE cell CELL @ RU. */
{
message c1: systemInformation: {
criticalExtensions systemInformation-r8: {
sib-TypeAndInfo {
sib2: {
radioResourceConfigCommon {
rach-ConfigCommon {
preambleInfo {
numberOfRA-Preambles n52
},
powerRampingParameters {
powerRampingStep dB2,
preambleInitialReceivedTargetPower dBm-104
},
ra-SupervisionInfo {
preambleTransMax n10,
ra-ResponseWindowSize sf10,
mac-ContentionResolutionTimer sf40
},
maxHARQ-Msg3Tx 5
},
bcch-Config {
modificationPeriodCoeff n4
},
pcch-Config {
defaultPagingCycle rf128,
nB oneT
},
prach-Config {
rootSequenceIndex 0, /* patched by eNB */
prach-ConfigInfo {
prach-ConfigIndex 4, /* patched by eNB */
highSpeedFlag FALSE,
zeroCorrelationZoneConfig 11,
prach-FreqOffset 4 /* patched by eNB */
}
},
pdsch-ConfigCommon {
referenceSignalPower -8, /* patched by eNB */
p-b 1 /* patched by eNB */
},
pusch-ConfigCommon {
pusch-ConfigBasic {
n-SB 1,
hoppingMode interSubFrame,
pusch-HoppingOffset 8, /* patched by eNB */
enable64QAM FALSE /* patched by eNB */
},
ul-ReferenceSignalsPUSCH {
groupHoppingEnabled FALSE,
groupAssignmentPUSCH 0,
sequenceHoppingEnabled FALSE,
cyclicShift 0
}
},
pucch-ConfigCommon {
deltaPUCCH-Shift ds2,
nRB-CQI 4, /* patched by eNB */
nCS-AN 0,
n1PUCCH-AN 12 /* patched by eNB */
},
soundingRS-UL-ConfigCommon setup: {
srs-BandwidthConfig bw2, /* patched by eNB */
srs-SubframeConfig sc3, /* patched by eNB */
ackNackSRS-SimultaneousTransmission TRUE
},
uplinkPowerControlCommon {
p0-NominalPUSCH -85,
alpha al1,
p0-NominalPUCCH -117,
deltaFList-PUCCH {
deltaF-PUCCH-Format1 deltaF0,
deltaF-PUCCH-Format1b deltaF3,
deltaF-PUCCH-Format2 deltaF1,
deltaF-PUCCH-Format2a deltaF2,
deltaF-PUCCH-Format2b deltaF2
},
deltaPreambleMsg3 4
},
ul-CyclicPrefixLength len1
},
ue-TimersAndConstants {
t300 ms200,
t301 ms200,
t310 ms200,
n310 n6,
t311 ms10000,
n311 n5
},
freqInfo {
additionalSpectrumEmission 1
},
timeAlignmentTimerCommon infinity
},
sib3: {
cellReselectionInfoCommon {
q-Hyst dB2
},
cellReselectionServingFreqInfo {
s-NonIntraSearch 3,
threshServingLow 2,
cellReselectionPriority 6
},
intraFreqCellReselectionInfo {
q-RxLevMin -61,
p-Max 23,
s-IntraSearch 5,
presenceAntennaPort1 TRUE,
neighCellConfig '01'B,
t-ReselectionEUTRA 1
}
}
}
}
}
}
\ No newline at end of file
{
log_options: "all.level=error,all.max_size=0,nas.level=debug,nas.max_size=1,s1ap.level=debug,s1ap.max_size=1,x2ap.level=debug,x2ap.max_size=1,rrc.level=debug,rrc.max_size=1,ngap.level=debug,ngap.max_size=1,xnap.level=debug,xnap.max_size=1,phy.level=info,file.rotate=1G,file.path=/dev/null",
log_filename: "log/enb.log",
// Radio Units
rf_driver: {
// RU 2T2R (sdr)
name: "dummy",
args: "dev0=/dev/sdr0",
rx_antenna:"tx_rx",
tdd_tx_mod: 1,
},
tx_gain: [-1000, -1000],
rx_gain: [43, 43],
com_addr: "127.0.1.2:9001",
// LTE core network
mme_list: [
{
mme_addr: "127.0.1.100",
},
],
gtp_addr: "127.0.1.1",
x2_peers: ["44.1.1.1", "44.1.1.2"],
enb_id: 0x1A2D0,
// LTE cells
cell_list: [
// CELL (RU)
{
rf_port: 0,
n_antenna_dl: 2,
n_antenna_ul: 2,
cell_id: 0x01,
tac: 0x0001,
n_id_cell: 1,
dl_earfcn: 36100,
ul_earfcn: 36100,
root_sequence_index: 204,
inactivity_timer: 10000,
// Handover
ncell_list: [
// Intra-ENB HO
// Inter-ENB HO
{
rat: "eutra",
cell_id: 0x12345, // -> PEERCELL1
n_id_cell: 35,
dl_earfcn: 700,
tac: 123,
allowed_meas_bandwidth: 6, // (minimum possible bw)
antenna_port_1: false, // (conservative stub)
},
{
rat: "nr",
nr_cell_id: 0x77712, // -> PEERCELL2
gnb_id_bits: 22,
n_id_cell: 75,
dl_nr_arfcn: 520000,
band: 38,
ssb_nr_arfcn: 520090,
ul_nr_arfcn: 520000,
tac: 321,
ssb_subcarrier_spacing: 30,
ssb_period: 20,
ssb_offset: 0,
ssb_duration: 1,
},
],
// Carrier Aggregation: LTE + LTE
scell_list: [
],
// tune LTE parameters for the cell
manual_ref_signal_power: true,
uldl_config: 6,
sp_config: 7,
n_rb_dl: 50,
si_coderate: 0.2,
pdsch_dedicated: {
p_a: -3,
p_b: -1,
},
pdcch_format: 2,
prach_config_index: 4,
initial_cqi: 3,
pucch_dedicated: {
n1_pucch_sr_count: 11,
cqi_pucch_n_rb: 1,
tdd_ack_nack_feedback_mode: "multiplexing", /* TDD only */
},
m_ri: 8,
transmission_mode: 3,
srs_dedicated: {
srs_bandwidth_config: 2,
srs_bandwidth: 2,
srs_subframe_config: 3,
srs_period: 40,
srs_hopping_bandwidth: 0,
},
drb_config: "CELL-drb.cfg",
sib_sched_list: [
{
filename: "CELL-sib23.asn",
si_periodicity: 16,
},
],
},
],
cell_default: {
plmn_list: [
{
plmn: "00101",
reserved: false,
attach_without_pdn: false,
},
],
cyclic_prefix: "normal",
phich_duration: "normal",
phich_resource: "1",
si_value_tag: 0,
cell_barred: false,
intra_freq_reselection: true,
q_rx_lev_min: -70,
si_window_length: 40,
si_pdcch_format: 2,
n_symb_cch: 0,
prach_freq_offset: -1,
pusch_dedicated: {
beta_offset_ack_index: 9,
beta_offset_ri_index: 6,
beta_offset_cqi_index: 6,
},
pusch_hopping_offset: -1,
pusch_msg3_mcs: 0,
dl_256qam: true,
ul_64qam: true,
sr_period: 20,
cqi_period: 40,
mac_config: {
ul_max_harq_tx: 5,
dl_max_harq_tx: 5,
},
pusch_max_its: 6,
dpc: true,
dpc_pusch_snr_target: 25,
dpc_pucch_snr_target: 25,
cipher_algo_pref: [],
integ_algo_pref: [2, 1],
srb_config: [
{
id: 1,
maxRetxThreshold: 32,
t_Reordering: 45,
t_PollRetransmit: 60,
},
{
id: 2 ,
maxRetxThreshold: 32,
t_Reordering: 45,
t_PollRetransmit: 60,
}
],
meas_config_desc: {
a1_report_type: "rsrp",
a1_rsrp: -70,
a1_hysteresis: 0,
a1_time_to_trigger: 640,
a2_report_type: "rsrp",
a2_rsrp: -80,
a2_hysteresis: 0,
a2_time_to_trigger: 640,
a3_report_type: "rsrp",
a3_offset: 6,
a3_hysteresis: 0,
a3_time_to_trigger: 480,
},
meas_gap_config: "gp0",
ho_from_meas: true,
},
}
\ No newline at end of file
// DRB configuration for NR cell CELL @ RU.
[
{
qci: 1,
use_for_mr_dc_scg: false,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 12,
pdcp_SN_SizeDL: 12,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 6,
},
dl_um: {
sn_FieldLength: 6,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
},
},
{
qci: 2,
use_for_mr_dc_scg: false,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 150,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 12,
},
dl_um: {
sn_FieldLength: 12,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 8,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 1,
},
},
{
qci: 3,
pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 12,
},
dl_um: {
sn_FieldLength: 12,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 2,
},
},
{
qci: 4,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 9,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 3,
},
},
{
qci: 65,
use_for_mr_dc_scg: false,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 12,
pdcp_SN_SizeDL: 12,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 6,
},
dl_um: {
sn_FieldLength: 6,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 5,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 4,
},
},
{
qci: 66,
use_for_mr_dc_scg: false,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 150,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 12,
},
dl_um: {
sn_FieldLength: 12,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 7,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 4,
},
},
{
qci: 67,
use_for_mr_dc_scg: false,
ims_dedicated_bearer: true,
pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 12,
},
dl_um: {
sn_FieldLength: 12,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 6,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 5,
},
},
{
qci: 5,
use_for_mr_dc_scg: false,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 6,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 4,
},
},
{
qci: 6,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 10,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 5,
},
},
{
qci: 7,
pdcp_config: {
discardTimer: 100,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: false,
outOfOrderDelivery: false,
t_Reordering: 0,
},
rlc_config: {
ul_um: {
sn_FieldLength: 12,
},
dl_um: {
sn_FieldLength: 12,
t_Reassembly: 50,
},
},
logical_channel_config: {
priority: 11,
prioritisedBitRate: 0,
bucketSizeDuration: 100,
logicalChannelGroup: 6,
},
},
{
qci: 8,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 12,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 7,
},
},
{
qci: 9,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 13,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 7,
},
},
{
qci: 69,
use_for_mr_dc_scg: false,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 4,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 4,
},
},
{
qci: 70,
pdcp_config: {
discardTimer: 0,
pdcp_SN_SizeUL: 18,
pdcp_SN_SizeDL: 18,
statusReportRequired: true,
outOfOrderDelivery: false,
},
rlc_config: {
ul_am: {
sn_FieldLength: 18,
t_PollRetransmit: 80,
pollPDU: 64,
pollByte: 125,
maxRetxThreshold: 4,
},
dl_am: {
sn_FieldLength: 18,
t_Reassembly: 80,
t_StatusProhibit: 10,
},
},
logical_channel_config: {
priority: 11,
prioritisedBitRate: 8,
bucketSizeDuration: 100,
logicalChannelGroup: 5,
},
},
]
\ No newline at end of file
/* SIB2/SIB3 for NR cell CELL @ RU. */
{
message c1: systemInformation: {
criticalExtensions systemInformation-r8: {
sib-TypeAndInfo {
sib2: {
radioResourceConfigCommon {
rach-ConfigCommon {
preambleInfo {
numberOfRA-Preambles n52
},
powerRampingParameters {
powerRampingStep dB2,
preambleInitialReceivedTargetPower dBm-104
},
ra-SupervisionInfo {
preambleTransMax n10,
ra-ResponseWindowSize sf10,
mac-ContentionResolutionTimer sf40
},
maxHARQ-Msg3Tx 5
},
bcch-Config {
modificationPeriodCoeff n4
},
pcch-Config {
defaultPagingCycle rf128,
nB oneT
},
prach-Config {
rootSequenceIndex 0, /* patched by eNB */
prach-ConfigInfo {
prach-ConfigIndex 4, /* patched by eNB */
highSpeedFlag FALSE,
zeroCorrelationZoneConfig 11,
prach-FreqOffset 4 /* patched by eNB */
}
},
pdsch-ConfigCommon {
referenceSignalPower -8, /* patched by eNB */
p-b 1 /* patched by eNB */
},
pusch-ConfigCommon {
pusch-ConfigBasic {
n-SB 1,
hoppingMode interSubFrame,
pusch-HoppingOffset 8, /* patched by eNB */
enable64QAM FALSE /* patched by eNB */
},
ul-ReferenceSignalsPUSCH {
groupHoppingEnabled FALSE,
groupAssignmentPUSCH 0,
sequenceHoppingEnabled FALSE,
cyclicShift 0
}
},
pucch-ConfigCommon {
deltaPUCCH-Shift ds2,
nRB-CQI 4, /* patched by eNB */
nCS-AN 0,
n1PUCCH-AN 12 /* patched by eNB */
},
soundingRS-UL-ConfigCommon setup: {
srs-BandwidthConfig bw2, /* patched by eNB */
srs-SubframeConfig sc3, /* patched by eNB */
ackNackSRS-SimultaneousTransmission TRUE
},
uplinkPowerControlCommon {
p0-NominalPUSCH -85,
alpha al1,
p0-NominalPUCCH -117,
deltaFList-PUCCH {
deltaF-PUCCH-Format1 deltaF0,
deltaF-PUCCH-Format1b deltaF3,
deltaF-PUCCH-Format2 deltaF1,
deltaF-PUCCH-Format2a deltaF2,
deltaF-PUCCH-Format2b deltaF2
},
deltaPreambleMsg3 4
},
ul-CyclicPrefixLength len1
},
ue-TimersAndConstants {
t300 ms200,
t301 ms200,
t310 ms200,
n310 n6,
t311 ms10000,
n311 n5
},
freqInfo {
additionalSpectrumEmission 1
},
timeAlignmentTimerCommon infinity
},
sib3: {
cellReselectionInfoCommon {
q-Hyst dB2
},
cellReselectionServingFreqInfo {
s-NonIntraSearch 3,
threshServingLow 2,
cellReselectionPriority 6
},
intraFreqCellReselectionInfo {
q-RxLevMin -61,
p-Max 23,
s-IntraSearch 5,
presenceAntennaPort1 TRUE,
neighCellConfig '01'B,
t-ReselectionEUTRA 1
}
}
}
}
}
}
\ No newline at end of file
{
log_options: "all.level=error,all.max_size=0,nas.level=debug,nas.max_size=1,s1ap.level=debug,s1ap.max_size=1,x2ap.level=debug,x2ap.max_size=1,rrc.level=debug,rrc.max_size=1,ngap.level=debug,ngap.max_size=1,xnap.level=debug,xnap.max_size=1,phy.level=info,file.rotate=1G,file.path=/dev/null",
log_filename: "log/enb.log",
// Radio Units
rf_driver: {
// RU 2T2R (sdr)
name: "dummy",
args: "dev0=/dev/sdr0",
rx_antenna:"tx_rx",
tdd_tx_mod: 1,
},
tx_gain: [-1000, -1000],
rx_gain: [43, 43],
com_addr: "127.0.1.2:9001",
// NR core network
amf_list: [
{
amf_addr: "127.0.1.100",
},
],
gtp_addr: "127.0.1.1",
xn_peers: ["55.1.1.1", "55.1.1.2"],
gnb_id_bits: 28,
gnb_id: 0x12345,
en_dc_support: true,
// LTE cells
cell_list: [
],
// NR cells
nr_cell_list: [
// CELL (RU)
{
rf_port: 0,
n_antenna_dl: 2,
n_antenna_ul: 2,
cell_id: 0x01,
n_id_cell: 500,
band: 39,
dl_nr_arfcn: 380000,
ul_nr_arfcn: 380000,
bandwidth: 40,
subcarrier_spacing: 30,
ssb_nr_arfcn: 379970,
ssb_pos_bitmap: "10000000",
root_sequence_index: 1,
inactivity_timer: 10000,
// Handover
ncell_list: [
// Intra-ENB HO
// Inter-ENB HO
{
rat: "eutra",
cell_id: 0x12345, // -> PEERCELL1
n_id_cell: 35,
dl_earfcn: 700,
tac: 123,
allowed_meas_bandwidth: 6, // (minimum possible bw)
antenna_port_1: false, // (conservative stub)
},
{
rat: "nr",
nr_cell_id: 0x77712, // -> PEERCELL2
gnb_id_bits: 22,
n_id_cell: 75,
dl_nr_arfcn: 520000,
band: 38,
ssb_nr_arfcn: 520090,
ul_nr_arfcn: 520000,
tac: 321,
ssb_subcarrier_spacing: 30,
ssb_period: 20,
ssb_offset: 0,
ssb_duration: 1,
},
],
// Carrier Aggregation: NR + NR
scell_list: [
],
// tune NR parameters for the cell
manual_ref_signal_power: true,
ss_pbch_block_power: 8,
tdd_ul_dl_config: {
pattern1: {
period: 5, /* in ms */
dl_slots: 1,
dl_symbols: 10,
ul_slots: 8,
ul_symbols: 2,
},
},
prach: {
ra_response_window: 20,
},
pdcch: {
uss: {
n_candidates: [ 0, 8, 1, 0, 0 ],
dci_0_1_and_1_1: true,
},
},
pdsch: {
k1: [4, 11],
},
pusch: {
k2: [11, 12, 4, 5, 6, 7, 7, 8],
msg3_k2: 7,
},
csi_rs: {
nzp_csi_rs_resource: [
{
n_ports: 2,
frequency_domain_allocation: "other",
bitmap: "100000",
cdm_type: "fd_cdm2",
},
],
nzp_csi_rs_resource_set: [
{},
],
csi_resource_config: [
{},
{},
],
csi_report_config: [
{
codebook_config: {
codebook_type: "type1",
sub_type: "typeI_SinglePanel",
},
},
],
},
drb_config: "CELL-drb.cfg",
},
],
nr_cell_default: {
ssb_period: 20,
plmn_list: [
{
plmn: "00101",
tac: 100,
reserved: false,
nssai: [
{
sst: 1,
},
],
},
],
si_window_length: 40,
cell_barred: false,
intra_freq_reselection: true,
q_rx_lev_min: -70,
q_qual_min: -20,
sr_period: 40,
dmrs_type_a_pos: 2,
prach: {
prach_config_index: 160, // XXX TDD only & TDD_CONFIG != 4
msg1_subcarrier_spacing: 30,
msg1_fdm: 1,
msg1_frequency_start: -1,
zero_correlation_zone_config: 15,
preamble_received_target_power: -110,
preamble_trans_max: 7,
power_ramping_step: 4,
restricted_set_config: "unrestricted_set",
ra_contention_resolution_timer: 64,
ssb_per_prach_occasion: 1,
cb_preambles_per_ssb: 8,
},
pdcch: {
search_space0_index: 0,
dedicated_coreset: {
rb_start: -1,
l_crb: -1,
duration: 0,
precoder_granularity: "sameAsREG_bundle",
},
css: {
n_candidates: [ 0, 0, 4, 0, 0 ],
},
rar_al_index: 2,
si_al_index: 2,
al_index: 1,
},
pdsch: {
mapping_type: "typeA",
dmrs_add_pos: 1,
dmrs_type: 1,
dmrs_max_len: 1,
mcs_table: "qam256",
rar_mcs: 2,
si_mcs: 6,
},
csi_rs: {
nzp_csi_rs_resource: [
{
csi_rs_id: 0,
density: 1,
first_symb: 4,
rb_start: 0,
l_crb: -1,
power_control_offset: 0,
power_control_offset_ss: 0,
period: 80,
offset: 1,
qcl_info_periodic_csi_rs: 0,
},
],
nzp_csi_rs_resource_set: [
{
csi_rs_set_id: 0,
nzp_csi_rs_resources: [ 0 ],
repetition: false,
},
],
csi_im_resource: [
{
csi_im_id: 0,
pattern: 1,
subcarrier_location: 8,
symbol_location: 8,
rb_start: 0,
l_crb: -1,
period: 80,
offset: 1,
},
],
csi_im_resource_set: [
{
csi_im_set_id: 0,
csi_im_resources: [ 0 ],
}
],
zp_csi_rs_resource: [
{
csi_rs_id: 0,
frequency_domain_allocation: "row4",
bitmap: "100",
n_ports: 4,
cdm_type: "fd_cdm2",
first_symb: 8,
density: 1,
rb_start: 0,
l_crb: -1,
period: 80,
offset: 1,
},
],
p_zp_csi_rs_resource_set: [
{
zp_csi_rs_resources: [ 0 ],
},
],
csi_resource_config: [
{
csi_rsc_config_id: 0,
nzp_csi_rs_resource_set_list: [ 0 ],
resource_type: "periodic",
},
{
csi_rsc_config_id: 1,
csi_im_resource_set_list: [ 0 ],
resource_type: "periodic",
},
],
csi_report_config: [
{
resources_for_channel_measurement: 0,
csi_im_resources_for_interference: 1,
report_config_type: "periodic",
period: 80,
report_quantity: "CRI_RI_PMI_CQI",
cqi_table: 2,
subband_size: "value1",
},
],
},
pucch: {
dpc_snr_target: 25,
pucch_group_hopping: "neither",
hopping_id: -1,
p0_nominal: -90,
pucch1: {
n_cs: 3,
n_occ: 3,
freq_hopping: true,
},
pucch2: {
n_symb: 2,
n_prb: 1,
freq_hopping: true,
simultaneous_harq_ack_csi: false,
max_code_rate: 0.25,
},
},
pusch: {
dpc_snr_target: 25,
mapping_type: "typeA",
n_symb: 14,
dmrs_add_pos: 1,
dmrs_type: 1,
dmrs_max_len: 1,
tf_precoding: false,
mcs_table: "qam256",
mcs_table_tp: "qam256",
ldpc_max_its: 5,
p0_nominal_with_grant: -84,
msg3_mcs: 4,
msg3_delta_power: 0,
beta_offset_ack_index: 9,
},
mac_config: {
msg3_max_harq_tx: 5,
ul_max_harq_tx: 5,
dl_max_harq_tx: 5,
ul_max_consecutive_retx: 30,
dl_max_consecutive_retx: 30,
periodic_bsr_timer: 20,
retx_bsr_timer: 320,
periodic_phr_timer: 500,
prohibit_phr_timer: 200,
phr_tx_power_factor_change: "dB3",
sr_prohibit_timer: 0,
sr_trans_max: 64,
},
cipher_algo_pref: [],
integ_algo_pref: [2, 1],
meas_config_desc: {
a1_report_type: "rsrp",
a1_rsrp: -60,
a1_hysteresis: 10,
a1_time_to_trigger: 100,
a2_report_type: "rsrp",
a2_rsrp: -70,
a2_hysteresis: 0,
a2_time_to_trigger: 100,
a3_report_type: "rsrp",
a3_offset: 6,
a3_hysteresis: 0,
a3_time_to_trigger: 100,
ssb_rsrq_filter_coeff: 3,
ssb_sinr_filter_coeff: 5
},
meas_gap_config: {
pattern_id: 0
},
},
}
\ No newline at end of file
......@@ -22,8 +22,7 @@ def j2render(src, out, jcfg):
ctx = json.loads(jcfg)
assert '_standalone' not in ctx
ctx['_standalone'] = True
assert 'ors' not in ctx
ctx['ors'] = False
ctx.setdefault('ors', False)
textctx = ''
for k, v in ctx.items():
textctx += 'json %s %s\n' % (k, json.dumps(v))
......@@ -364,18 +363,76 @@ def iRU2_LOPCOMM_fLTE2(ienb):
}
})
# ORS_eNB and ORS_gNB mimic what instance-ors-enb.jinja2.cfg does.
ORS_ru = {
'ru_type': 'sdr',
'ru_link_type': 'sdr',
'sdr_dev_list': [0],
'n_antenna_dl': 2,
'n_antenna_ul': 2,
'tx_gain': 62,
'rx_gain': 43,
}
ORS_json = """
"ors": {"one-watt": true},
"""
def ORS_enb(ienb):
ienb.ishared('RU', ORS_ru)
ienb.ishared('CELL', {
'cell_type': 'lte',
'cell_kind': 'enb',
'rf_mode': 'tdd',
'dl_earfcn': 36100,
'bandwidth': 10,
'tac': '0x0001',
'root_sequence_index': 204,
'pci': 1,
'cell_id': '0x01',
"tdd_ul_dl_config": "[Configuration 6] 5ms 5UL 3DL (maximum uplink)",
'inactivity_timer': 10000,
'ru': {
'ru_type': 'ru_ref',
'ru_ref': 'RU',
},
})
return {'out': 'ors/enb', 'jextra': ORS_json}
def ORS_gnb(ienb):
ienb.ishared('RU', ORS_ru)
ienb.ishared('CELL', {
'cell_type': 'nr',
'cell_kind': 'enb',
'rf_mode': 'tdd',
'dl_nr_arfcn': 380000,
'nr_band': 39,
'bandwidth': 40,
'ssb_pos_bitmap': "10000000",
'root_sequence_index': 1,
'pci': 500,
'cell_id': '0x01',
"tdd_ul_dl_config": "5ms 8UL 1DL 2/10 (maximum uplink)",
'inactivity_timer': 10000,
'ru': {
'ru_type': 'ru_ref',
'ru_ref': 'RU',
},
})
return {'out': 'ors/gnb', 'jextra': ORS_json}
def do_enb():
for f in (iRU1_SDR_tLTE2_tNR,
iRU2_SDR_tLTE_tNR,
iRU2_LOPCOMM_fLTE_fNR,
iRU1_SDR1_fLTE2,
iRU2_LOPCOMM_fLTE2):
iRU2_LOPCOMM_fLTE2,
ORS_enb,
ORS_gnb):
_do_enb_with(f)
def _do_enb_with(iru_icell_func):
ienb = Instance('enb')
iru_icell_func(ienb)
out = 'enb/%s' % iru_icell_func.__name__
x = iru_icell_func(ienb) or {}
out = x.get('out', 'enb/%s' % iru_icell_func.__name__)
# add 4 peer nodes
if 1:
......@@ -418,7 +475,9 @@ def _do_enb_with(iru_icell_func):
})
jshared_instance_list = json.dumps(ienb.shared_instance_list)
jextra = x.get('jextra', '')
json_params = """{
%(jextra)s
"sib23_file": "sib2_3.asn",
"slap_configuration": {
"tap-name": "slaptap9",
......@@ -431,16 +490,16 @@ def _do_enb_with(iru_icell_func):
"var": "var"
},
"slapparameter_dict": {
"enb_id": "0x10012",
"gnb_id": "0x54321",
"enb_id": "0x1A2D0",
"gnb_id": "0x12345",
"gnb_id_bits": 28,
"com_ws_port": 9001,
"com_addr": "127.0.1.2",
"gtp_addr": "127.0.1.1",
"mme_list": {"1": {"mme_addr": "127.0.1.100"}},
"amf_list": {"1": {"amf_addr": "127.0.1.100"}},
"plmn_list": {"1": {"plmn": "31415"}},
"plmn_list_5g": {"1": {"plmn": "51413", "tac": 123}},
"plmn_list": {"1": {"plmn": "00101"}},
"plmn_list_5g": {"1": {"plmn": "00101", "tac": 100}},
"nssai": {"1": {"sst": 1}}
}
}""" % locals()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment