1228561Snp# Firmware configuration file. 2228561Snp# 3228561Snp# Global limits (some are hardware limits, others are due to the firmware). 4228561Snp# nvi = 128 virtual interfaces 5228561Snp# niqflint = 1023 ingress queues with freelists and/or interrupts 6228561Snp# nethctrl = 64K Ethernet or ctrl egress queues 7228561Snp# neq = 64K egress queues of all kinds, including freelists 8228561Snp# nexactf = 336 MPS TCAM entries, can oversubscribe. 9228561Snp# 10228561Snp 11228561Snp[global] 12228561Snp rss_glb_config_mode = basicvirtual 13296950Snp rss_glb_config_options = tnlmapen,hashtoeplitz,tnlalllkp 14228561Snp 15228561Snp sge_timer_value = 1, 5, 10, 50, 100, 200 # usecs 16228561Snp 17256459Snp # enable TP_OUT_CONFIG.IPIDSPLITMODE 18256459Snp reg[0x7d04] = 0x00010000/0x00010000 19256459Snp 20296249Snp # disable TP_PARA_REG3.RxFragEn 21296249Snp reg[0x7d6c] = 0x00000000/0x00007000 22296249Snp 23296950Snp reg[0x7dc0] = 0x0e2f8849 # TP_SHIFT_CNT 24228561Snp 25228561Snp filterMode = fragmentation, mpshittype, protocol, vlan, port, fcoe 26256459Snp filterMask = protocol, fcoe 27228561Snp 28296951Snp tp_pmrx = 36, 512 29296950Snp tp_pmrx_pagesize = 64K 30296950Snp 31296950Snp # TP number of RX channels (0 = auto) 32252661Snp tp_nrxch = 0 33252661Snp 34296951Snp tp_pmtx = 46, 512 35228561Snp tp_pmtx_pagesize = 64K 36228561Snp 37296950Snp # TP number of TX channels (0 = auto) 38296950Snp tp_ntxch = 0 39290633Snp 40256459Snp # TP OFLD MTUs 41256459Snp tp_mtus = 88, 256, 512, 576, 808, 1024, 1280, 1488, 1500, 2002, 2048, 4096, 4352, 8192, 9000, 9600 42256459Snp 43296950Snp # cluster, lan, or wan. 44296950Snp tp_tcptuning = lan 45296950Snp 46228561Snp# PFs 0-3. These get 8 MSI/8 MSI-X vectors each. VFs are supported by 47296952Snp# these 4 PFs only. 48228561Snp[function "0"] 49296952Snp wx_caps = all 50296952Snp r_caps = all 51346940Snp nvi = 1 52346940Snp rssnvi = 0 53346940Snp niqflint = 2 54346940Snp nethctrl = 2 55346940Snp neq = 4 56346940Snp nexactf = 2 57296952Snp cmask = all 58296952Snp pmask = 0x1 59228561Snp 60228561Snp[function "1"] 61296952Snp wx_caps = all 62296952Snp r_caps = all 63346940Snp nvi = 1 64346940Snp rssnvi = 0 65346940Snp niqflint = 2 66346940Snp nethctrl = 2 67346940Snp neq = 4 68346940Snp nexactf = 2 69296952Snp cmask = all 70296952Snp pmask = 0x2 71228561Snp 72228561Snp[function "2"] 73296952Snp wx_caps = all 74296952Snp r_caps = all 75346940Snp nvi = 1 76346940Snp rssnvi = 0 77346940Snp niqflint = 2 78346940Snp nethctrl = 2 79346940Snp neq = 4 80346940Snp nexactf = 2 81296952Snp cmask = all 82296952Snp pmask = 0x4 83228561Snp 84228561Snp[function "3"] 85296952Snp wx_caps = all 86296952Snp r_caps = all 87346940Snp nvi = 1 88346940Snp rssnvi = 0 89346940Snp niqflint = 2 90346940Snp nethctrl = 2 91346940Snp neq = 4 92346940Snp nexactf = 2 93296952Snp cmask = all 94296952Snp pmask = 0x8 95228561Snp 96228561Snp# PF4 is the resource-rich PF that the bus/nexus driver attaches to. 97228561Snp# It gets 32 MSI/128 MSI-X vectors. 98228561Snp[function "4"] 99228561Snp wx_caps = all 100228561Snp r_caps = all 101245243Snp nvi = 32 102346940Snp rssnvi = 16 103273615Snp niqflint = 512 104273615Snp nethctrl = 1024 105273615Snp neq = 2048 106296952Snp nexactf = 280 107228561Snp cmask = all 108228561Snp pmask = all 109346940Snp nethofld = 2048 110228561Snp 111228561Snp # driver will mask off features it won't use 112296951Snp protocol = ofld, rddp, rdmac, iscsi_initiator_pdu, iscsi_target_pdu 113228561Snp 114239339Snp tp_l2t = 4096 115239339Snp tp_ddp = 2 116296951Snp tp_ddp_iscsi = 2 117296951Snp tp_stag = 2 118296951Snp tp_pbl = 5 119296951Snp tp_rq = 7 120228561Snp 121228561Snp # TCAM has 8K cells; each region must start at a multiple of 128 cell. 122228561Snp # Each entry in these categories takes 4 cells each. nhash will use the 123228561Snp # TCAM iff there is room left (that is, the rest don't add up to 2048). 124228561Snp nroute = 32 125245243Snp nclip = 32 126245243Snp nfilter = 1456 127228561Snp nserver = 512 128228561Snp nhash = 16384 129228561Snp 130228561Snp# PF5 is the SCSI Controller PF. It gets 32 MSI/40 MSI-X vectors. 131228561Snp# Not used right now. 132228561Snp[function "5"] 133228561Snp nvi = 1 134273615Snp rssnvi = 0 135228561Snp 136228561Snp# PF6 is the FCoE Controller PF. It gets 32 MSI/40 MSI-X vectors. 137228561Snp# Not used right now. 138228561Snp[function "6"] 139228561Snp nvi = 1 140273615Snp rssnvi = 0 141228561Snp 142237436Snp# The following function, 1023, is not an actual PCIE function but is used to 143237436Snp# configure and reserve firmware internal resources that come from the global 144237436Snp# resource pool. 145237436Snp[function "1023"] 146237436Snp wx_caps = all 147237436Snp r_caps = all 148237436Snp nvi = 4 149273615Snp rssnvi = 0 150237436Snp cmask = all 151237436Snp pmask = all 152237436Snp nexactf = 8 153237436Snp nfilter = 16 154237436Snp 155296952Snp# For Virtual functions, we only allow NIC functionality and we only allow 156296952Snp# access to one port (1 << PF). Note that because of limitations in the 157296952Snp# Scatter Gather Engine (SGE) hardware which checks writes to VF KDOORBELL 158296952Snp# and GTS registers, the number of Ingress and Egress Queues must be a power 159296952Snp# of 2. 160296952Snp# 161296952Snp[function "0/*"] 162296952Snp wx_caps = 0x82 163296952Snp r_caps = 0x86 164296952Snp nvi = 1 165346940Snp rssnvi = 0 166296952Snp niqflint = 2 167296952Snp nethctrl = 2 168296952Snp neq = 4 169296952Snp nexactf = 2 170296952Snp cmask = all 171296952Snp pmask = 0x1 172296952Snp 173296952Snp[function "1/*"] 174296952Snp wx_caps = 0x82 175296952Snp r_caps = 0x86 176296952Snp nvi = 1 177346940Snp rssnvi = 0 178296952Snp niqflint = 2 179296952Snp nethctrl = 2 180296952Snp neq = 4 181296952Snp nexactf = 2 182296952Snp cmask = all 183296952Snp pmask = 0x2 184296952Snp 185296952Snp[function "2/*"] 186296952Snp wx_caps = 0x82 187296952Snp r_caps = 0x86 188296952Snp nvi = 1 189346940Snp rssnvi = 0 190296952Snp niqflint = 2 191296952Snp nethctrl = 2 192296952Snp neq = 4 193296952Snp nexactf = 2 194296952Snp cmask = all 195296952Snp pmask = 0x4 196296952Snp 197296952Snp[function "3/*"] 198296952Snp wx_caps = 0x82 199296952Snp r_caps = 0x86 200296952Snp nvi = 1 201346940Snp rssnvi = 0 202296952Snp niqflint = 2 203296952Snp nethctrl = 2 204296952Snp neq = 4 205296952Snp nexactf = 2 206296952Snp cmask = all 207296952Snp pmask = 0x8 208296952Snp 209228561Snp# MPS has 192K buffer space for ingress packets from the wire as well as 210228561Snp# loopback path of the L2 switch. 211228561Snp[port "0"] 212228561Snp dcb = none 213228561Snp bg_mem = 25 214228561Snp lpbk_mem = 25 215228561Snp hwm = 30 216228561Snp lwm = 15 217228561Snp dwm = 30 218228561Snp 219228561Snp[port "1"] 220228561Snp dcb = none 221228561Snp bg_mem = 25 222228561Snp lpbk_mem = 25 223228561Snp hwm = 30 224228561Snp lwm = 15 225228561Snp dwm = 30 226228561Snp 227228561Snp[port "2"] 228228561Snp dcb = none 229228561Snp bg_mem = 25 230228561Snp lpbk_mem = 25 231228561Snp hwm = 30 232228561Snp lwm = 15 233228561Snp dwm = 30 234228561Snp 235228561Snp[port "3"] 236228561Snp dcb = none 237228561Snp bg_mem = 25 238228561Snp lpbk_mem = 25 239228561Snp hwm = 30 240228561Snp lwm = 15 241228561Snp dwm = 30 242228561Snp 243228561Snp[fini] 244228561Snp version = 0x1 245346940Snp checksum = 0x3ecbe8a0 246228561Snp# 247228561Snp# $FreeBSD: stable/11/sys/dev/cxgbe/firmware/t4fw_cfg.txt 346940 2019-04-30 01:25:02Z np $ 248228561Snp# 249