]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/dev/cxgbe/firmware/t4fw_cfg.txt
Import libxo-0.9.0:
[FreeBSD/FreeBSD.git] / sys / dev / cxgbe / firmware / t4fw_cfg.txt
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         reg[0x7dc0] = 0x0e2f8849                # TP_SHIFT_CNT
24
25         filterMode = fragmentation, mpshittype, protocol, vlan, port, fcoe
26         filterMask = protocol, fcoe
27
28         tp_pmrx = 36, 512
29         tp_pmrx_pagesize = 64K
30
31         # TP number of RX channels (0 = auto)
32         tp_nrxch = 0
33
34         tp_pmtx = 46, 512
35         tp_pmtx_pagesize = 64K
36
37         # TP number of TX channels (0 = auto)
38         tp_ntxch = 0
39
40         # TP OFLD MTUs
41         tp_mtus = 88, 256, 512, 576, 808, 1024, 1280, 1488, 1500, 2002, 2048, 4096, 4352, 8192, 9000, 9600
42
43         # cluster, lan, or wan.
44         tp_tcptuning = lan
45
46 # PFs 0-3.  These get 8 MSI/8 MSI-X vectors each.  VFs are supported by
47 # these 4 PFs only.
48 [function "0"]
49         nvf = 4
50         wx_caps = all
51         r_caps = all
52         nvi = 2
53         rssnvi = 2
54         niqflint = 4
55         nethctrl = 4
56         neq = 8
57         nexactf = 4
58         cmask = all
59         pmask = 0x1
60
61 [function "1"]
62         nvf = 4
63         wx_caps = all
64         r_caps = all
65         nvi = 2
66         rssnvi = 2
67         niqflint = 4
68         nethctrl = 4
69         neq = 8
70         nexactf = 4
71         cmask = all
72         pmask = 0x2
73
74 [function "2"]
75         nvf = 4
76         wx_caps = all
77         r_caps = all
78         nvi = 2
79         rssnvi = 2
80         niqflint = 4
81         nethctrl = 4
82         neq = 8
83         nexactf = 4
84         cmask = all
85         pmask = 0x4
86
87 [function "3"]
88         nvf = 4
89         wx_caps = all
90         r_caps = all
91         nvi = 2
92         rssnvi = 2
93         niqflint = 4
94         nethctrl = 4
95         neq = 8
96         nexactf = 4
97         cmask = all
98         pmask = 0x8
99
100 # PF4 is the resource-rich PF that the bus/nexus driver attaches to.
101 # It gets 32 MSI/128 MSI-X vectors.
102 [function "4"]
103         wx_caps = all
104         r_caps = all
105         nvi = 32
106         rssnvi = 8
107         niqflint = 512
108         nethctrl = 1024
109         neq = 2048
110         nexactf = 280
111         cmask = all
112         pmask = all
113
114         # driver will mask off features it won't use
115         protocol = ofld, rddp, rdmac, iscsi_initiator_pdu, iscsi_target_pdu
116
117         tp_l2t = 4096
118         tp_ddp = 2
119         tp_ddp_iscsi = 2
120         tp_stag = 2
121         tp_pbl = 5
122         tp_rq = 7
123
124         # TCAM has 8K cells; each region must start at a multiple of 128 cell.
125         # Each entry in these categories takes 4 cells each.  nhash will use the
126         # TCAM iff there is room left (that is, the rest don't add up to 2048).
127         nroute = 32
128         nclip = 32
129         nfilter = 1456
130         nserver = 512
131         nhash = 16384
132
133 # PF5 is the SCSI Controller PF. It gets 32 MSI/40 MSI-X vectors.
134 # Not used right now.
135 [function "5"]
136         nvi = 1
137         rssnvi = 0
138
139 # PF6 is the FCoE Controller PF. It gets 32 MSI/40 MSI-X vectors.
140 # Not used right now.
141 [function "6"]
142         nvi = 1
143         rssnvi = 0
144
145 # The following function, 1023, is not an actual PCIE function but is used to
146 # configure and reserve firmware internal resources that come from the global
147 # resource pool.
148 [function "1023"]
149         wx_caps = all
150         r_caps = all
151         nvi = 4
152         rssnvi = 0
153         cmask = all
154         pmask = all
155         nexactf = 8
156         nfilter = 16
157
158 # For Virtual functions, we only allow NIC functionality and we only allow
159 # access to one port (1 << PF).  Note that because of limitations in the
160 # Scatter Gather Engine (SGE) hardware which checks writes to VF KDOORBELL
161 # and GTS registers, the number of Ingress and Egress Queues must be a power
162 # of 2.
163 #
164 [function "0/*"]
165         wx_caps = 0x82
166         r_caps = 0x86
167         nvi = 1
168         rssnvi = 1
169         niqflint = 2
170         nethctrl = 2
171         neq = 4
172         nexactf = 2
173         cmask = all
174         pmask = 0x1
175
176 [function "1/*"]
177         wx_caps = 0x82
178         r_caps = 0x86
179         nvi = 1
180         rssnvi = 1
181         niqflint = 2
182         nethctrl = 2
183         neq = 4
184         nexactf = 2
185         cmask = all
186         pmask = 0x2
187
188 [function "2/*"]
189         wx_caps = 0x82
190         r_caps = 0x86
191         nvi = 1
192         rssnvi = 1
193         niqflint = 2
194         nethctrl = 2
195         neq = 4
196         nexactf = 2
197         cmask = all
198         pmask = 0x4
199
200 [function "3/*"]
201         wx_caps = 0x82
202         r_caps = 0x86
203         nvi = 1
204         rssnvi = 1
205         niqflint = 2
206         nethctrl = 2
207         neq = 4
208         nexactf = 2
209         cmask = all
210         pmask = 0x8
211
212 # MPS has 192K buffer space for ingress packets from the wire as well as
213 # loopback path of the L2 switch.
214 [port "0"]
215         dcb = none
216         bg_mem = 25
217         lpbk_mem = 25
218         hwm = 30
219         lwm = 15
220         dwm = 30
221
222 [port "1"]
223         dcb = none
224         bg_mem = 25
225         lpbk_mem = 25
226         hwm = 30
227         lwm = 15
228         dwm = 30
229
230 [port "2"]
231         dcb = none
232         bg_mem = 25
233         lpbk_mem = 25
234         hwm = 30
235         lwm = 15
236         dwm = 30
237
238 [port "3"]
239         dcb = none
240         bg_mem = 25
241         lpbk_mem = 25
242         hwm = 30
243         lwm = 15
244         dwm = 30
245
246 [fini]
247         version = 0x1
248         checksum = 0xbec0621
249 #
250 # $FreeBSD$
251 #