1e948693eSPhilip Paeps.\" Copyright (c) 2011 Solarflare Communications, Inc. 2e948693eSPhilip Paeps.\" All rights reserved. 3e948693eSPhilip Paeps.\" 4e948693eSPhilip Paeps.\" Redistribution and use in source and binary forms, with or without 5e948693eSPhilip Paeps.\" modification, are permitted provided that the following conditions 6e948693eSPhilip Paeps.\" are met: 7e948693eSPhilip Paeps.\" 1. Redistributions of source code must retain the above copyright 8e948693eSPhilip Paeps.\" notice, this list of conditions and the following disclaimer. 9e948693eSPhilip Paeps.\" 2. Redistributions in binary form must reproduce the above copyright 10e948693eSPhilip Paeps.\" notice, this list of conditions and the following disclaimer in the 11e948693eSPhilip Paeps.\" documentation and/or other materials provided with the distribution. 12e948693eSPhilip Paeps.\" 13e948693eSPhilip Paeps.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14e948693eSPhilip Paeps.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15e948693eSPhilip Paeps.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16e948693eSPhilip Paeps.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17e948693eSPhilip Paeps.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18e948693eSPhilip Paeps.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19e948693eSPhilip Paeps.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20e948693eSPhilip Paeps.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21e948693eSPhilip Paeps.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22e948693eSPhilip Paeps.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23e948693eSPhilip Paeps.\" SUCH DAMAGE. 24e948693eSPhilip Paeps.\" 25e948693eSPhilip Paeps.\" $FreeBSD$ 26e948693eSPhilip Paeps.\" 2798286ba5SBenjamin Kaduk.Dd September 30, 2014 28e948693eSPhilip Paeps.Dt SFXGE 4 29e948693eSPhilip Paeps.Os 30e948693eSPhilip Paeps.Sh NAME 31e948693eSPhilip Paeps.Nm sfxge 32e948693eSPhilip Paeps.Nd "Solarflare 10Gb Ethernet adapter driver" 33e948693eSPhilip Paeps.Sh SYNOPSIS 34e948693eSPhilip PaepsTo compile this driver into the kernel, 35e948693eSPhilip Paepsplace the following lines in your 36e948693eSPhilip Paepskernel configuration file: 37e948693eSPhilip Paeps.Bd -ragged -offset indent 38e948693eSPhilip Paeps.Cd "device sfxge" 39e948693eSPhilip Paeps.Ed 40e948693eSPhilip Paeps.Pp 41e948693eSPhilip PaepsTo load the driver as a 42e948693eSPhilip Paepsmodule at boot time, place the following line in 43e948693eSPhilip Paeps.Xr loader.conf 5 : 44e948693eSPhilip Paeps.Bd -literal -offset indent 45e948693eSPhilip Paepssfxge_load="YES" 46e948693eSPhilip Paeps.Ed 47e948693eSPhilip Paeps.Sh DESCRIPTION 48e948693eSPhilip PaepsThe 49e948693eSPhilip Paeps.Nm 50e948693eSPhilip Paepsdriver provides support for 10Gb Ethernet adapters based on 51d21f98cbSChristian BruefferSolarflare SFC9000 family controllers. 52d21f98cbSChristian BruefferThe driver supports jumbo 53e948693eSPhilip Paepsframes, transmit/receive checksum offload, TCP Segmentation Offload 54e948693eSPhilip Paeps(TSO), Large Receive Offload (LRO), VLAN checksum offload, VLAN TSO, 55e948693eSPhilip Paepsand Receive Side Scaling (RSS) using MSI-X interrupts. 56e948693eSPhilip Paeps.Pp 57e948693eSPhilip PaepsThe driver allocates 1 receive queue, transmit queue, event queue and 58d21f98cbSChristian BruefferIRQ per CPU up to a maximum of 64. 59d21f98cbSChristian BruefferIRQ affinities should be spread out using 60814b16baSGlen Barber.Xr cpuset 1 . 61e948693eSPhilip PaepsInterrupt moderation may be controlled through the sysctl 62d21f98cbSChristian Brueffer.Va dev.sfxge.%d.int_mod 63d21f98cbSChristian Brueffer(units are microseconds). 64e948693eSPhilip Paeps.Pp 65e948693eSPhilip PaepsFor more information on configuring this device, see 66e948693eSPhilip Paeps.Xr ifconfig 8 . 67e948693eSPhilip Paeps.Pp 68e948693eSPhilip PaepsA large number of MAC, PHY and data path statistics are available 69d21f98cbSChristian Bruefferunder the sysctl 70d21f98cbSChristian Brueffer.Va dev.sfxge.%d.stats . 71d21f98cbSChristian BruefferThe adapter's VPD 72e948693eSPhilip Paepsfields including its serial number are available under the sysctl 73d21f98cbSChristian Brueffer.Va dev.sfxge.%d.vpd . 74e948693eSPhilip Paeps.Sh HARDWARE 75e948693eSPhilip PaepsThe 76e948693eSPhilip Paeps.Nm 77e948693eSPhilip Paepsdriver supports all 10Gb Ethernet adapters based on Solarflare SFC9000 78e948693eSPhilip Paepsfamily controllers. 79316ee70dSGeorge V. Neville-Neil.Sh LOADER TUNABLES 80316ee70dSGeorge V. Neville-NeilTunables can be set at the 81316ee70dSGeorge V. Neville-Neil.Xr loader 8 82316ee70dSGeorge V. Neville-Neilprompt before booting the kernel or stored in 83316ee70dSGeorge V. Neville-Neil.Xr loader.conf 5 . 84316ee70dSGeorge V. Neville-NeilActual values can be obtained using 85316ee70dSGeorge V. Neville-Neil.Xr sysctl 8 . 86316ee70dSGeorge V. Neville-Neil.Bl -tag -width indent 87316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.rx_ring 8898286ba5SBenjamin KadukThe maximum number of descriptors in a receive queue ring. 89316ee70dSGeorge V. Neville-NeilSupported values are: 512, 1024, 2048 and 4096. 90316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_ring 9198286ba5SBenjamin KadukThe maximum number of descriptors in a transmit queue ring. 92316ee70dSGeorge V. Neville-NeilSupported values are: 512, 1024, 2048 and 4096. 93316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_dpl_get_max 9498286ba5SBenjamin KadukThe maximum length of the deferred packet 9598286ba5SBenjamin Kaduk.Dq get-list 9698286ba5SBenjamin Kadukfor queued transmit 97316ee70dSGeorge V. Neville-Neilpackets, used only if the transmit queue lock can be acquired. 9898286ba5SBenjamin KadukIf a packet is dropped, the 9998286ba5SBenjamin Kaduk.Va tx_early_drops 10098286ba5SBenjamin Kadukcounter is incremented and the local sender receives ENOBUFS. 10198286ba5SBenjamin KadukThe value must be greater than 0. 102316ee70dSGeorge V. Neville-Neil.It Va hw.sfxge.tx_dpl_put_max 10398286ba5SBenjamin KadukThe maximum length of the deferred packet 10498286ba5SBenjamin Kaduk.Dq put-list 10598286ba5SBenjamin Kadukfor queued transmit 106316ee70dSGeorge V. Neville-Neilpackets, used if the transmit queue lock cannot be acquired. 10798286ba5SBenjamin KadukIf a packet is dropped, the 10898286ba5SBenjamin Kaduk.Va tx_early_drops 10998286ba5SBenjamin Kadukcounter is incremented and the local sender receives ENOBUFS. 11098286ba5SBenjamin KadukThe value must be greater than or equal to 0. 111*d9e49c83SAndrew Rybchenko.It Va hw.sfxge.N.max_rss_channels 112*d9e49c83SAndrew RybchenkoThe maximum number of allocated RSS channels for the Nth adapter. 113*d9e49c83SAndrew RybchenkoIf set to 0 or unset, the number of channels is determined by the number 114*d9e49c83SAndrew Rybchenkoof CPU cores. 11598286ba5SBenjamin Kaduk.El 116e948693eSPhilip Paeps.Sh SUPPORT 117e948693eSPhilip PaepsFor general information and support, 118e948693eSPhilip Paepsgo to the Solarflare support website at: 119e948693eSPhilip Paeps.Pa https://support.solarflare.com . 120e948693eSPhilip Paeps.Sh SEE ALSO 1210b3504fdSChristian Brueffer.Xr cpuset 1 , 122e948693eSPhilip Paeps.Xr arp 4 , 123e948693eSPhilip Paeps.Xr netintro 4 , 124e948693eSPhilip Paeps.Xr ng_ether 4 , 125e948693eSPhilip Paeps.Xr vlan 4 , 126e948693eSPhilip Paeps.Xr ifconfig 8 127e948693eSPhilip Paeps.Sh AUTHORS 128e948693eSPhilip PaepsThe 129e948693eSPhilip Paeps.Nm 130e948693eSPhilip Paepsdriver was written by 131e948693eSPhilip Paeps.An Philip Paeps 132e948693eSPhilip Paepsand 133e948693eSPhilip Paeps.An Solarflare Communications, Inc. 134