xref: /freebsd/sys/dev/cxgbe/firmware/t4fw_cfg.txt (revision 342af4d5efec74bb4bc11261fdd9991c53616f54)
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 = 336		MPS TCAM entries, can oversubscribe.
9#
10
11[global]
12	rss_glb_config_mode = basicvirtual
13	rss_glb_config_options = tnlmapen, hashtoeplitz, tnlalllkp
14
15	sge_timer_value = 1, 5, 10, 50, 100, 200	# usecs
16
17	# enable TP_OUT_CONFIG.IPIDSPLITMODE
18	reg[0x7d04] = 0x00010000/0x00010000
19
20	# disable TP_PARA_REG3.RxFragEn
21	reg[0x7d6c] = 0x00000000/0x00007000
22
23	# TP_SHIFT_CNT
24	reg[0x7dc0] = 0x62f8849
25
26	filterMode = fragmentation, mpshittype, protocol, vlan, port, fcoe
27	filterMask = protocol, fcoe
28
29	# TP rx and tx channels (0 = auto).
30	tp_nrxch = 0
31	tp_ntxch = 0
32
33	# TP rx and tx payload memory (% of the total EDRAM + DDR3).
34	tp_pmrx = 38, 512
35	tp_pmtx = 60, 512
36	tp_pmrx_pagesize = 64K
37	tp_pmtx_pagesize = 64K
38
39	# cluster, lan, or wan.
40	tp_tcptuning = lan
41
42	# TP OFLD MTUs
43	tp_mtus = 88, 256, 512, 576, 808, 1024, 1280, 1488, 1500, 2002, 2048, 4096, 4352, 8192, 9000, 9600
44
45# PFs 0-3.  These get 8 MSI/8 MSI-X vectors each.  VFs are supported by
46# these 4 PFs only.  Not used here at all.
47[function "0"]
48	nvf = 16
49	nvi = 1
50	rssnvi = 0
51[function "0/*"]
52	nvi = 1
53	rssnvi = 0
54
55[function "1"]
56	nvf = 16
57	nvi = 1
58	rssnvi = 0
59[function "1/*"]
60	nvi = 1
61	rssnvi = 0
62
63[function "2"]
64	nvf = 16
65	nvi = 1
66	rssnvi = 0
67[function "2/*"]
68	nvi = 1
69	rssnvi = 0
70
71[function "3"]
72	nvf = 16
73	nvi = 1
74	rssnvi = 0
75[function "3/*"]
76	nvi = 1
77	rssnvi = 0
78
79# PF4 is the resource-rich PF that the bus/nexus driver attaches to.
80# It gets 32 MSI/128 MSI-X vectors.
81[function "4"]
82	wx_caps = all
83	r_caps = all
84	nvi = 32
85	rssnvi = 8
86	niqflint = 512
87	nethctrl = 1024
88	neq = 2048
89	nexactf = 328
90	cmask = all
91	pmask = all
92
93	# driver will mask off features it won't use
94	protocol = ofld
95
96	tp_l2t = 4096
97	tp_ddp = 2
98
99	# TCAM has 8K cells; each region must start at a multiple of 128 cell.
100	# Each entry in these categories takes 4 cells each.  nhash will use the
101	# TCAM iff there is room left (that is, the rest don't add up to 2048).
102	nroute = 32
103	nclip = 32
104	nfilter = 1456
105	nserver = 512
106	nhash = 16384
107
108# PF5 is the SCSI Controller PF. It gets 32 MSI/40 MSI-X vectors.
109# Not used right now.
110[function "5"]
111	nvi = 1
112	rssnvi = 0
113
114# PF6 is the FCoE Controller PF. It gets 32 MSI/40 MSI-X vectors.
115# Not used right now.
116[function "6"]
117	nvi = 1
118	rssnvi = 0
119
120# The following function, 1023, is not an actual PCIE function but is used to
121# configure and reserve firmware internal resources that come from the global
122# resource pool.
123[function "1023"]
124	wx_caps = all
125	r_caps = all
126	nvi = 4
127	rssnvi = 0
128	cmask = all
129	pmask = all
130	nexactf = 8
131	nfilter = 16
132
133# MPS has 192K buffer space for ingress packets from the wire as well as
134# loopback path of the L2 switch.
135[port "0"]
136	dcb = none
137	bg_mem = 25
138	lpbk_mem = 25
139	hwm = 30
140	lwm = 15
141	dwm = 30
142
143[port "1"]
144	dcb = none
145	bg_mem = 25
146	lpbk_mem = 25
147	hwm = 30
148	lwm = 15
149	dwm = 30
150
151[port "2"]
152	dcb = none
153	bg_mem = 25
154	lpbk_mem = 25
155	hwm = 30
156	lwm = 15
157	dwm = 30
158
159[port "3"]
160	dcb = none
161	bg_mem = 25
162	lpbk_mem = 25
163	hwm = 30
164	lwm = 15
165	dwm = 30
166
167[fini]
168	version = 0x1
169	checksum = 0x98210e18
170#
171# $FreeBSD$
172#
173