1# Firmware configuration file. 2# 3# Global limits (some are hardware limits, others are due to the firmware). 4# nvi = 128 virtual interfaces 5# niqflint = 1023 ingress queues with freelists and/or interrupts 6# nethctrl = 64K Ethernet or ctrl egress queues 7# neq = 64K egress queues of all kinds, including freelists 8# nexactf = 512 MPS TCAM entries, can oversubscribe. 9 10[global] 11 rss_glb_config_mode = basicvirtual 12 rss_glb_config_options = tnlmapen,hashtoeplitz,tnlalllkp 13 14 # PL_TIMEOUT register 15 pl_timeout_value = 200 # the timeout value in units of us 16 17 sge_timer_value = 1, 5, 10, 50, 100, 200 # SGE_TIMER_VALUE* in usecs 18 19 reg[0x10c4] = 0x20000000/0x20000000 # GK_CONTROL, enable 5th thread 20 21 reg[0x7dc0] = 0x0e2f8849 # TP_SHIFT_CNT 22 23 #Tick granularities in kbps 24 tsch_ticks = 100000, 10000, 1000, 10 25 26 filterMode = fragmentation, mpshittype, protocol, vlan, port, fcoe 27 filterMask = port, protocol 28 29 tp_pmrx = 20, 512 30 tp_pmrx_pagesize = 16K 31 32 # TP number of RX channels (0 = auto) 33 tp_nrxch = 0 34 35 tp_pmtx = 40, 512 36 tp_pmtx_pagesize = 64K 37 38 # TP number of TX channels (0 = auto) 39 tp_ntxch = 0 40 41 # TP OFLD MTUs 42 tp_mtus = 88, 256, 512, 576, 808, 1024, 1280, 1488, 1500, 2002, 2048, 4096, 4352, 8192, 9000, 9600 43 44 # enable TP_OUT_CONFIG.IPIDSPLITMODE and CRXPKTENC 45 reg[0x7d04] = 0x00010008/0x00010008 46 47 # TP_GLOBAL_CONFIG 48 reg[0x7d08] = 0x00000800/0x00000800 # set IssFromCplEnable 49 50 # TP_PC_CONFIG 51 reg[0x7d48] = 0x00000000/0x00000400 # clear EnableFLMError 52 53 # TP_PC_CONFIG2 54 reg[0x7d4c] = 0x00010000/0x00010000 # set DisableNewPshFlag 55 56 # TP_PARA_REG0 57 reg[0x7d60] = 0x06000000/0x07000000 # set InitCWND to 6 58 59 # TP_PARA_REG3 60 reg[0x7d6c] = 0x28000000/0x28000000 # set EnableTnlCngHdr 61 # set RxMacCheck (Note: 62 # Only for hash filter, 63 # no tcp offload) 64 65 # LE_DB_CONFIG 66 reg[0x19c04] = 0x00000000/0x02040000 # LE IPv4 compression disabled 67 # EXTN_HASH_IPV4 Disable 68 69 # LE_DB_RSP_CODE_0 70 reg[0x19c74] = 0x00000004/0x0000000f # TCAM_ACTV_HIT = 4 71 72 # LE_DB_RSP_CODE_1 73 reg[0x19c78] = 0x08000000/0x0e000000 # HASH_ACTV_HIT = 4 74 75 # LE_DB_HASH_CONFIG 76 reg[0x19c28] = 0x00800000/0x01f00000 # LE Hash bucket size 8, 77 78 # MC configuration 79 mc_mode_brc[0] = 0 # mc0 - 1: enable BRC, 0: enable RBC 80 81# PFs 0-3. These get 8 MSI/8 MSI-X vectors each. VFs are supported by 82# these 4 PFs only. 83[function "0"] 84 nvf = 4 85 wx_caps = all 86 r_caps = all 87 nvi = 2 88 rssnvi = 2 89 niqflint = 4 90 nethctrl = 4 91 neq = 8 92 nexactf = 4 93 cmask = all 94 pmask = 0x1 95 96[function "1"] 97 nvf = 4 98 wx_caps = all 99 r_caps = all 100 nvi = 2 101 rssnvi = 2 102 niqflint = 4 103 nethctrl = 4 104 neq = 8 105 nexactf = 4 106 cmask = all 107 pmask = 0x2 108 109[function "2"] 110 nvf = 4 111 wx_caps = all 112 r_caps = all 113 nvi = 2 114 rssnvi = 2 115 niqflint = 4 116 nethctrl = 4 117 neq = 8 118 nexactf = 4 119 cmask = all 120 pmask = 0x4 121 122[function "3"] 123 nvf = 4 124 wx_caps = all 125 r_caps = all 126 nvi = 2 127 rssnvi = 2 128 niqflint = 4 129 nethctrl = 4 130 neq = 8 131 nexactf = 4 132 cmask = all 133 pmask = 0x8 134 135# PF4 is the resource-rich PF that the bus/nexus driver attaches to. 136# It gets 32 MSI/128 MSI-X vectors. 137[function "4"] 138 wx_caps = all 139 r_caps = all 140 nvi = 32 141 rssnvi = 8 142 niqflint = 512 143 nethctrl = 1024 144 neq = 2048 145 nqpcq = 8192 146 nexactf = 456 147 cmask = all 148 pmask = all 149 nclip = 320 150 151 # TCAM has 6K cells; each region must start at a multiple of 128 cell. 152 # Each entry in these categories takes 2 cells each. nhash will use the 153 # TCAM iff there is room left (that is, the rest don't add up to 3072). 154 nfilter = 2032 155 nserver = 512 156 nhpfilter = 0 157 nhash = 524288 158 protocol = nic_hashfilter 159 tp_l2t = 4096 160 161# PF5 is the SCSI Controller PF. It gets 32 MSI/40 MSI-X vectors. 162# Not used right now. 163[function "5"] 164 nvi = 1 165 rssnvi = 0 166 167# PF6 is the FCoE Controller PF. It gets 32 MSI/40 MSI-X vectors. 168# Not used right now. 169[function "6"] 170 nvi = 1 171 rssnvi = 0 172 173# The following function, 1023, is not an actual PCIE function but is used to 174# configure and reserve firmware internal resources that come from the global 175# resource pool. 176# 177[function "1023"] 178 wx_caps = all 179 r_caps = all 180 nvi = 4 181 rssnvi = 0 182 cmask = all 183 pmask = all 184 nexactf = 8 185 nfilter = 16 186 187 188# For Virtual functions, we only allow NIC functionality and we only allow 189# access to one port (1 << PF). Note that because of limitations in the 190# Scatter Gather Engine (SGE) hardware which checks writes to VF KDOORBELL 191# and GTS registers, the number of Ingress and Egress Queues must be a power 192# of 2. 193# 194[function "0/*"] 195 wx_caps = 0x82 196 r_caps = 0x86 197 nvi = 1 198 rssnvi = 1 199 niqflint = 2 200 nethctrl = 2 201 neq = 4 202 nexactf = 2 203 cmask = all 204 pmask = 0x1 205 206[function "1/*"] 207 wx_caps = 0x82 208 r_caps = 0x86 209 nvi = 1 210 rssnvi = 1 211 niqflint = 2 212 nethctrl = 2 213 neq = 4 214 nexactf = 2 215 cmask = all 216 pmask = 0x2 217 218[function "2/*"] 219 wx_caps = 0x82 220 r_caps = 0x86 221 nvi = 1 222 rssnvi = 1 223 niqflint = 2 224 nethctrl = 2 225 neq = 4 226 nexactf = 2 227 cmask = all 228 pmask = 0x1 229 230[function "3/*"] 231 wx_caps = 0x82 232 r_caps = 0x86 233 nvi = 1 234 rssnvi = 1 235 niqflint = 2 236 nethctrl = 2 237 neq = 4 238 nexactf = 2 239 cmask = all 240 pmask = 0x2 241 242# MPS has 192K buffer space for ingress packets from the wire as well as 243# loopback path of the L2 switch. 244[port "0"] 245 dcb = none 246 #bg_mem = 25 247 #lpbk_mem = 25 248 hwm = 60 249 lwm = 15 250 dwm = 30 251 252[port "1"] 253 dcb = none 254 #bg_mem = 25 255 #lpbk_mem = 25 256 hwm = 60 257 lwm = 15 258 dwm = 30 259 260[fini] 261 version = 0x1 262 checksum = 0xb577311e 263# 264# $FreeBSD$ 265# 266