xref: /freebsd/share/man/man4/sfxge.4 (revision 4906cdc8c5d161f74ab36bb5792ac0706d182c11)
1.\" Copyright (c) 2011 Solarflare Communications, 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
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $FreeBSD$
26.\"
27.Dd September 30, 2014
28.Dt SFXGE 4
29.Os
30.Sh NAME
31.Nm sfxge
32.Nd "Solarflare 10Gb Ethernet adapter driver"
33.Sh SYNOPSIS
34To compile this driver into the kernel,
35place the following lines in your
36kernel configuration file:
37.Bd -ragged -offset indent
38.Cd "device sfxge"
39.Ed
40.Pp
41To load the driver as a
42module at boot time, place the following line in
43.Xr loader.conf 5 :
44.Bd -literal -offset indent
45sfxge_load="YES"
46.Ed
47.Sh DESCRIPTION
48The
49.Nm
50driver provides support for 10Gb Ethernet adapters based on
51Solarflare SFC9000 family controllers.
52The driver supports jumbo
53frames, transmit/receive checksum offload, TCP Segmentation Offload
54(TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO,
55and Receive Side Scaling (RSS) using MSI-X interrupts.
56.Pp
57The driver allocates 1 receive queue, transmit queue, event queue and
58IRQ per CPU up to a maximum of 64.
59IRQ affinities should be spread out using
60.Xr cpuset 1 .
61Interrupt moderation may be controlled through the sysctl
62.Va dev.sfxge.%d.int_mod
63(units are microseconds).
64.Pp
65For more information on configuring this device, see
66.Xr ifconfig 8 .
67.Pp
68A large number of MAC, PHY and data path statistics are available
69under the sysctl
70.Va dev.sfxge.%d.stats .
71The adapter's VPD
72fields including its serial number are available under the sysctl
73.Va dev.sfxge.%d.vpd .
74.Sh HARDWARE
75The
76.Nm
77driver supports all 10Gb Ethernet adapters based on Solarflare SFC9000
78family controllers.
79.Sh LOADER TUNABLES
80Tunables can be set at the
81.Xr loader 8
82prompt before booting the kernel or stored in
83.Xr loader.conf 5 .
84Actual values can be obtained using
85.Xr sysctl 8 .
86.Bl -tag -width indent
87.It Va hw.sfxge.rx_ring
88The maximum number of descriptors in a receive queue ring.
89Supported values are: 512, 1024, 2048 and 4096.
90.It Va hw.sfxge.tx_ring
91The maximum number of descriptors in a transmit queue ring.
92Supported values are: 512, 1024, 2048 and 4096.
93.It Va hw.sfxge.tx_dpl_get_max
94The maximum length of the deferred packet
95.Dq get-list
96for queued transmit
97packets, used only if the transmit queue lock can be acquired.
98If a packet is dropped, the
99.Va tx_early_drops
100counter is incremented and the local sender receives ENOBUFS.
101The value must be greater than 0.
102.It Va hw.sfxge.tx_dpl_put_max
103The maximum length of the deferred packet
104.Dq put-list
105for queued transmit
106packets, used if the transmit queue lock cannot be acquired.
107If a packet is dropped, the
108.Va tx_early_drops
109counter is incremented and the local sender receives ENOBUFS.
110The value must be greater than or equal to 0.
111.El
112.Sh SUPPORT
113For general information and support,
114go to the Solarflare support website at:
115.Pa https://support.solarflare.com .
116.Sh SEE ALSO
117.Xr cpuset 1 ,
118.Xr arp 4 ,
119.Xr netintro 4 ,
120.Xr ng_ether 4 ,
121.Xr vlan 4 ,
122.Xr ifconfig 8
123.Sh AUTHORS
124The
125.Nm
126driver was written by
127.An Philip Paeps
128and
129.An Solarflare Communications, Inc.
130