sib1 =
{
    intra_freq_reselection = "Allowed";
    q_rx_lev_min = -65;
    //p_max = 3;
    cell_barred = "NotBarred"
    si_window_length = 20;
    sched_info =
    (
        {
            si_periodicity = 16;
            si_mapping_info = []; // comma-separated array of SIB-indexes (from 3 to 13).
            // Leave empty or commented to just scheduler sib2
        }
    );
    system_info_value_tag = 0;
};

sib2 =
{
    rr_config_common_sib =
    {
        rach_cnfg =
        {
            num_ra_preambles = 52;
            preamble_init_rx_target_pwr = -104;
            pwr_ramping_step = 6;  // in dB
            preamble_trans_max = 10;
            ra_resp_win_size = 10;  // in ms
            mac_con_res_timer = 64; // in ms
            max_harq_msg3_tx = 4;
        };
        bcch_cnfg =
        {
            modification_period_coeff = 16; // in ms
        };
        pcch_cnfg =
        {
            default_paging_cycle = 32; // in rf
            nB = "1";
        };
        prach_cnfg =
        {
            root_sequence_index = 128;
            prach_cnfg_info =
            {
                high_speed_flag = false;
                prach_config_index = 3;
% if int(enb['num_prb']) <= 6:
                prach_freq_offset = 0;
% else:
                prach_freq_offset = 2;
% endif
                zero_correlation_zone_config = 5;
            };
        };
        pdsch_cnfg =
        {
            /* Warning: Currently disabled and forced to p_b=1 for TM2/3/4 and p_b=0 for TM1
             */
            p_b = 1;
            rs_power = 0;
        };
        pusch_cnfg =
        {
            n_sb = 1;
            hopping_mode = "inter-subframe";
            pusch_hopping_offset = 2;
            enable_64_qam = false; // 64QAM PUSCH is not currently enabled
            ul_rs =
            {
                cyclic_shift = 0;
                group_assignment_pusch = 0;
                group_hopping_enabled = false;
                sequence_hopping_enabled = false;
            };
        };
        pucch_cnfg =
        {
            delta_pucch_shift = 2;
            n_rb_cqi = 2;
            n_cs_an = 0;
            n1_pucch_an = 12;
        };
        ul_pwr_ctrl =
        {
            p0_nominal_pusch = -85;
            alpha = 0.7;
            p0_nominal_pucch = -107;
            delta_flist_pucch =
            {
                format_1  = 0;
                format_1b = 3;
                format_2  = 1;
                format_2a = 2;
                format_2b = 2;
            };
            delta_preamble_msg3 = 6;
        };
        ul_cp_length = "len1";
    };

    ue_timers_and_constants =
    {
        t300 = 2000; // in ms
        t301 = 100;  // in ms
        t310 = 1000; // in ms
        n310 = 1;
        t311 = 10000; // in ms
        n311 = 1;
    };

    freqInfo =
    {
        ul_carrier_freq_present = true;
        ul_bw_present = true;
        additional_spectrum_emission = 1;
    };

    time_alignment_timer = "INFINITY"; // use "sf500", "sf750", etc.
};
