]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/dev/cxgbe/firmware/t6fw_cfg_hashfilter.txt
Copy libevent sources to contrib
[FreeBSD/FreeBSD.git] / sys / dev / cxgbe / firmware / t6fw_cfg_hashfilter.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 = 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 #