Deleted Added
full compact
cxgbe.4 (259622) cxgbe.4 (265425)
1.\" Copyright (c) 2011-2013, Chelsio Inc
1.\" Copyright (c) 2011-2014, Chelsio Inc
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions are met:
6.\"
7.\" 1. Redistributions of source code must retain the above copyright notice,
8.\" this list of conditions and the following disclaimer.
9.\"

--- 14 unchanged lines hidden (view full) ---

24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.\" * Other names and brands may be claimed as the property of others.
31.\"
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions are met:
6.\"
7.\" 1. Redistributions of source code must retain the above copyright notice,
8.\" this list of conditions and the following disclaimer.
9.\"

--- 14 unchanged lines hidden (view full) ---

24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.\" * Other names and brands may be claimed as the property of others.
31.\"
32.\" $FreeBSD: stable/10/share/man/man4/cxgbe.4 259622 2013-12-19 19:15:24Z np $
32.\" $FreeBSD: stable/10/share/man/man4/cxgbe.4 265425 2014-05-06 06:49:39Z np $
33.\"
33.\"
34.Dd December 18, 2013
34.Dd March 20, 2014
35.Dt CXGBE 4
36.Os
37.Sh NAME
38.Nm cxgbe
39.Nd "Chelsio T4 and T5 based 40Gb, 10Gb, and 1Gb Ethernet adapter driver"
40.Sh SYNOPSIS
41To compile this driver into the kernel,
42place the following lines in your

--- 93 unchanged lines hidden (view full) ---

136.El
137.Sh LOADER TUNABLES
138Tunables can be set at the
139.Xr loader 8
140prompt before booting the kernel or stored in
141.Xr loader.conf 5 .
142.Bl -tag -width indent
143.It Va hw.cxgbe.ntxq10g
35.Dt CXGBE 4
36.Os
37.Sh NAME
38.Nm cxgbe
39.Nd "Chelsio T4 and T5 based 40Gb, 10Gb, and 1Gb Ethernet adapter driver"
40.Sh SYNOPSIS
41To compile this driver into the kernel,
42place the following lines in your

--- 93 unchanged lines hidden (view full) ---

136.El
137.Sh LOADER TUNABLES
138Tunables can be set at the
139.Xr loader 8
140prompt before booting the kernel or stored in
141.Xr loader.conf 5 .
142.Bl -tag -width indent
143.It Va hw.cxgbe.ntxq10g
144The number of tx queues to use for a 10Gb port.
144The number of tx queues to use for a 10Gb or 40Gb port.
145The default is 16 or the number
146of CPU cores in the system, whichever is less.
147.It Va hw.cxgbe.nrxq10g
145The default is 16 or the number
146of CPU cores in the system, whichever is less.
147.It Va hw.cxgbe.nrxq10g
148The number of rx queues to use for a 10Gb port.
148The number of rx queues to use for a 10Gb or 40Gb port.
149The default is 8 or the number
150of CPU cores in the system, whichever is less.
151.It Va hw.cxgbe.ntxq1g
152The number of tx queues to use for a 1Gb port.
153The default is 4 or the number
154of CPU cores in the system, whichever is less.
155.It Va hw.cxgbe.nrxq1g
156The number of rx queues to use for a 1Gb port.
157The default is 2 or the number
158of CPU cores in the system, whichever is less.
159.It Va hw.cxgbe.nofldtxq10g
149The default is 8 or the number
150of CPU cores in the system, whichever is less.
151.It Va hw.cxgbe.ntxq1g
152The number of tx queues to use for a 1Gb port.
153The default is 4 or the number
154of CPU cores in the system, whichever is less.
155.It Va hw.cxgbe.nrxq1g
156The number of rx queues to use for a 1Gb port.
157The default is 2 or the number
158of CPU cores in the system, whichever is less.
159.It Va hw.cxgbe.nofldtxq10g
160The number of TOE tx queues to use for a 10Gb port.
160The number of TOE tx queues to use for a 10Gb or 40Gb port.
161The default is 8 or the
162number of CPU cores in the system, whichever is less.
163.It Va hw.cxgbe.nofldrxq10g
161The default is 8 or the
162number of CPU cores in the system, whichever is less.
163.It Va hw.cxgbe.nofldrxq10g
164The number of TOE rx queues to use for a 10Gb port.
164The number of TOE rx queues to use for a 10Gb or 40Gb port.
165The default is 2 or the
166number of CPU cores in the system, whichever is less.
167.It Va hw.cxgbe.nofldtxq1g
168The number of TOE tx queues to use for a 1Gb port.
169The default is 2 or the
170number of CPU cores in the system, whichever is less.
171.It Va hw.cxgbe.nofldrxq1g
172The number of TOE rx queues to use for a 1Gb port.
173The default is 1.
174.It Va hw.cxgbe.holdoff_timer_idx_10G
175.It Va hw.cxgbe.holdoff_timer_idx_1G
176The timer index value to use to delay interrupts.
177The holdoff timer list has the values 1, 5, 10, 50, 100, and 200
178by default (all values are in microseconds) and the index selects a
179value from this list.
165The default is 2 or the
166number of CPU cores in the system, whichever is less.
167.It Va hw.cxgbe.nofldtxq1g
168The number of TOE tx queues to use for a 1Gb port.
169The default is 2 or the
170number of CPU cores in the system, whichever is less.
171.It Va hw.cxgbe.nofldrxq1g
172The number of TOE rx queues to use for a 1Gb port.
173The default is 1.
174.It Va hw.cxgbe.holdoff_timer_idx_10G
175.It Va hw.cxgbe.holdoff_timer_idx_1G
176The timer index value to use to delay interrupts.
177The holdoff timer list has the values 1, 5, 10, 50, 100, and 200
178by default (all values are in microseconds) and the index selects a
179value from this list.
180The default value is 1 for both 10Gb and 1Gb ports, which means the
181timer value is 5us.
180The default value is 1 which means the timer value is 5us.
182Different interfaces can be assigned different values at any time via the
183dev.cxgbe.X.holdoff_tmr_idx or dev.cxl.X.holdoff_tmr_idx sysctl.
184.It Va hw.cxgbe.holdoff_pktc_idx_10G
185.It Va hw.cxgbe.holdoff_pktc_idx_1G
186The packet-count index value to use to delay interrupts.
187The packet-count list has the values 1, 8, 16, and 32 by default
188and the index selects a value from this list.
181Different interfaces can be assigned different values at any time via the
182dev.cxgbe.X.holdoff_tmr_idx or dev.cxl.X.holdoff_tmr_idx sysctl.
183.It Va hw.cxgbe.holdoff_pktc_idx_10G
184.It Va hw.cxgbe.holdoff_pktc_idx_1G
185The packet-count index value to use to delay interrupts.
186The packet-count list has the values 1, 8, 16, and 32 by default
187and the index selects a value from this list.
189The default value is -1 for both 10Gb and 1Gb ports, which means packet
190counting is disabled and interrupts are generated based solely on the
191holdoff timer value.
188The default value is -1 which means packet counting is disabled and interrupts
189are generated based solely on the holdoff timer value.
192Different interfaces can be assigned different values via the
193dev.cxgbe.X.holdoff_pktc_idx or dev.cxl.X.holdoff_pktc_idx sysctl.
194This sysctl works only when the interface has never been marked up (as done by
195ifconfig up).
196.It Va hw.cxgbe.qsize_txq
197The size, in number of entries, of the descriptor ring used for a tx
198queue.
199A buf_ring of the same size is also allocated for additional

--- 23 unchanged lines hidden (view full) ---

2230 prohibits the driver from installing a firmware on the card.
2241 allows the driver to install a new firmware if internal driver
225heuristics indicate that the new firmware is preferable to the one
226already on the card.
2272 instructs the driver to always install the new firmware on the card as
228long as it is compatible with the driver and is a different version than
229the one already on the card.
230The default is 1.
190Different interfaces can be assigned different values via the
191dev.cxgbe.X.holdoff_pktc_idx or dev.cxl.X.holdoff_pktc_idx sysctl.
192This sysctl works only when the interface has never been marked up (as done by
193ifconfig up).
194.It Va hw.cxgbe.qsize_txq
195The size, in number of entries, of the descriptor ring used for a tx
196queue.
197A buf_ring of the same size is also allocated for additional

--- 23 unchanged lines hidden (view full) ---

2210 prohibits the driver from installing a firmware on the card.
2221 allows the driver to install a new firmware if internal driver
223heuristics indicate that the new firmware is preferable to the one
224already on the card.
2252 instructs the driver to always install the new firmware on the card as
226long as it is compatible with the driver and is a different version than
227the one already on the card.
228The default is 1.
229.It Va hw.cxgbe.fl_pktshift
230The number of bytes of padding inserted before the begining of an Ethernet
231frame in the receive buffer.
232The default value of 2 ensures that the Ethernet payload (usually the IP header)
233is at a 4 byte aligned address.
2340-7 are all valid values.
235.It Va hw.cxgbe.fl_pad
236A non-zero value ensures that writes from the hardware to a receive buffer are
237padded up to the specified boundary.
238The default is -1 which lets the driver pick a pad boundary.
2390 disables trailer padding completely.
240.It Va hw.cxgbe.cong_drop
241Controls the hardware response to congestion.
242-1 disables congestion feedback and is not recommended.
2430 instructs the hardware to backpressure its pipeline on congestion.
244This usually results in the port emitting pause frames.
2451 instructs the hardware to drop frames destined for congested queues.
246.It Va hw.cxgbe.buffer_packing
247Allow the hardware to deliver multiple frames in the same receive buffer
248opportunistically.
249The default is -1 which lets the driver decide.
2500 or 1 explicitly disable or enable this feature.
251.It Va hw.cxgbe.allow_mbufs_in_cluster
2521 allows the driver to lay down one or more mbufs within the receive buffer
253opportunistically. This is the default.
2540 prohibits the driver from doing so.
255.It Va hw.cxgbe.largest_rx_cluster
256.It Va hw.cxgbe.safest_rx_cluster
257Sizes of rx clusters. Each of these must be set to one of the sizes available
258(usually 2048, 4096, 9216, and 16384) and largest_rx_cluster must be greater
259than or equal to safest_rx_cluster.
260The defaults are 16384 and 4096 respectively.
261The driver will never attempt to allocate a receive buffer larger than
262largest_rx_cluster and will fall back to allocating buffers of
263safest_rx_cluster size if an allocation larger than safest_rx_cluster fails.
264Note that largest_rx_cluster merely establishes a ceiling -- the driver is
265allowed to allocate buffers of smaller sizes.
231.It Va hw.cxgbe.config_file
232Select a pre-packaged device configuration file.
233A configuration file contains a recipe for partitioning and configuring the
234hardware resources on the card.
235This tunable is for specialized applications only and should not be used in
236normal operation.
237The configuration profile currently in use is available in the dev.t4nex.X.cf
266.It Va hw.cxgbe.config_file
267Select a pre-packaged device configuration file.
268A configuration file contains a recipe for partitioning and configuring the
269hardware resources on the card.
270This tunable is for specialized applications only and should not be used in
271normal operation.
272The configuration profile currently in use is available in the dev.t4nex.X.cf
238and dev.t4nex.X.cfcsum sysctls.
273and dev.t4nex.X.cfcsum (dev.t5nex for T5 cards) sysctls.
239.It Va hw.cxgbe.linkcaps_allowed
240.It Va hw.cxgbe.niccaps_allowed
241.It Va hw.cxgbe.toecaps_allowed
242.It Va hw.cxgbe.rdmacaps_allowed
243.It Va hw.cxgbe.iscsicaps_allowed
244.It Va hw.cxgbe.fcoecaps_allowed
245Disallowing capabilities provides a hint to the driver and firmware to not
246reserve hardware resources for that feature.
247Each of these is a bit field with a bit for each sub-capability within the
248capability.
249This tunable is for specialized applications only and should not be used in
250normal operation.
251The capabilities for which hardware resources have been reserved are listed in
274.It Va hw.cxgbe.linkcaps_allowed
275.It Va hw.cxgbe.niccaps_allowed
276.It Va hw.cxgbe.toecaps_allowed
277.It Va hw.cxgbe.rdmacaps_allowed
278.It Va hw.cxgbe.iscsicaps_allowed
279.It Va hw.cxgbe.fcoecaps_allowed
280Disallowing capabilities provides a hint to the driver and firmware to not
281reserve hardware resources for that feature.
282Each of these is a bit field with a bit for each sub-capability within the
283capability.
284This tunable is for specialized applications only and should not be used in
285normal operation.
286The capabilities for which hardware resources have been reserved are listed in
252dev.t4nex.X.*caps sysctls.
287dev.t4nex.X.*caps or dev.t5nex.X.*caps sysctls.
253.El
254.Sh SUPPORT
255For general information and support,
256go to the Chelsio support website at:
257.Pa http://www.chelsio.com/ .
258.Pp
259If an issue is identified with this driver with a supported adapter,
260email all the specific information related to the issue to

--- 23 unchanged lines hidden ---
288.El
289.Sh SUPPORT
290For general information and support,
291go to the Chelsio support website at:
292.Pa http://www.chelsio.com/ .
293.Pp
294If an issue is identified with this driver with a supported adapter,
295email all the specific information related to the issue to

--- 23 unchanged lines hidden ---