rf_driver: {
    name: "${trx.rf_dev_type}",
    args: "${trx.rf_dev_args}",
    sync: "${trx.rf_dev_sync}",
% if trx.get('rx_ant', None) != None:
    rx_antenna: "${trx.rx_ant}",
% endif

% if trx.rf_dev_type == 'zmq':
    dl_sample_bits: 16,
    ul_sample_bits: 16,
% endif
},

tx_gain: ${trx.tx_gain}, /* TX gain (in dB) B2x0: 0 to 89.8 dB */
rx_gain: ${trx.rx_gain}, /* RX gain (in dB) B2x0: 0 to 73 dB */

// Only SDR and ZMQ devices require dedicated rf_port parameters
% if trx.rf_dev_type != 'uhd':

rf_ports: [
  % if trx.rf_dev_type == 'sdr':
    // NSA specific configuration
    {
        sample_rate: 23.04,
    },
    {
        sample_rate: 61.44,
        dl_freq: 3502.8, // Moves NR DL LO frequency -5.76 MHz
        ul_freq: 3502.8, // Moves NR UL LO frequency -5.76 MHz
    }
  % else:
    // default case for UHD and ZMQ usage
    <%
       # determine ports and sample rate from either eNB or UE object
       num_ports = 1
       try:
         obj_sample_rate = enb.sample_rate
         num_ports = int(enb.num_cells) + int(enb.num_nr_cells)
       except AttributeError:
         obj_sample_rate = ue.sample_rate
    %>

    %for port in range(num_ports):
    {
      sample_rate: ${obj_sample_rate},
    },
    %endfor

 % endif
],

% endif

// only the B210 requires a sample offset
% if "b200" in trx.rf_dev_args:
tx_time_offset: -150,
% else:
tx_time_offset: 0,
% endif