1490c73d5SAggelos Economopoulos.\" Copyright (c) 2006, Myricom Inc 2490c73d5SAggelos Economopoulos.\" All rights reserved. 3490c73d5SAggelos Economopoulos.\" 4490c73d5SAggelos Economopoulos.\" Redistribution and use in source and binary forms, with or without 5490c73d5SAggelos Economopoulos.\" modification, are permitted provided that the following conditions are met: 6490c73d5SAggelos Economopoulos.\" 7490c73d5SAggelos Economopoulos.\" 1. Redistributions of source code must retain the above copyright notice, 8490c73d5SAggelos Economopoulos.\" this list of conditions and the following disclaimer. 9490c73d5SAggelos Economopoulos.\" 10490c73d5SAggelos Economopoulos.\" 2. Redistributions in binary form must reproduce the above copyright 11490c73d5SAggelos Economopoulos.\" notice, this list of conditions and the following disclaimer in the 12490c73d5SAggelos Economopoulos.\" documentation and/or other materials provided with the distribution. 13490c73d5SAggelos Economopoulos.\" 14490c73d5SAggelos Economopoulos.\" 3. Neither the name of the Myricom Inc nor the names of its 15490c73d5SAggelos Economopoulos.\" contributors may be used to endorse or promote products derived from 16490c73d5SAggelos Economopoulos.\" this software without specific prior written permission. 17490c73d5SAggelos Economopoulos.\" 18490c73d5SAggelos Economopoulos.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19490c73d5SAggelos Economopoulos.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20490c73d5SAggelos Economopoulos.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21490c73d5SAggelos Economopoulos.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 22490c73d5SAggelos Economopoulos.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23490c73d5SAggelos Economopoulos.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24490c73d5SAggelos Economopoulos.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25490c73d5SAggelos Economopoulos.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26490c73d5SAggelos Economopoulos.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27490c73d5SAggelos Economopoulos.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28490c73d5SAggelos Economopoulos.\" POSSIBILITY OF SUCH DAMAGE. 29490c73d5SAggelos Economopoulos.\" 30490c73d5SAggelos Economopoulos.\" * Other names and brands may be claimed as the property of others. 31490c73d5SAggelos Economopoulos.\" 32490c73d5SAggelos Economopoulos.\" $FreeBSD: src/share/man/man4/mxge.4,v 1.7.4.2.4.1 2009/04/15 03:14:26 kensmith Exp $ 33490c73d5SAggelos Economopoulos.\" 34bdbc20adSSepherosa Ziehau.Dd May 25, 2017 35490c73d5SAggelos Economopoulos.Dt MXGE 4 36490c73d5SAggelos Economopoulos.Os 37490c73d5SAggelos Economopoulos.Sh NAME 38490c73d5SAggelos Economopoulos.Nm mxge 39490c73d5SAggelos Economopoulos.Nd "Myricom Myri10GE 10 Gigabit Ethernet adapter driver" 40490c73d5SAggelos Economopoulos.Sh SYNOPSIS 41490c73d5SAggelos EconomopoulosTo compile this driver into the kernel, 42490c73d5SAggelos Economopoulosplace the following lines in your 43490c73d5SAggelos Economopouloskernel configuration file: 44490c73d5SAggelos Economopoulos.Bd -ragged -offset indent 45490c73d5SAggelos Economopoulos.Cd "device mxge" 460bb16fd7SJan Sucan.Cd "device mxgefw" 47490c73d5SAggelos Economopoulos.Ed 48490c73d5SAggelos Economopoulos.Pp 49490c73d5SAggelos EconomopoulosAlternatively, to load the driver as a 50429df13fSAggelos Economopoulosmodule at boot time, place the following line in 51490c73d5SAggelos Economopoulos.Xr loader.conf 5 : 52490c73d5SAggelos Economopoulos.Bd -literal -offset indent 53490c73d5SAggelos Economopoulosif_mxge_load="YES" 54490c73d5SAggelos Economopoulos.Ed 55490c73d5SAggelos Economopoulos.Sh DESCRIPTION 56490c73d5SAggelos EconomopoulosThe 57490c73d5SAggelos Economopoulos.Nm 58490c73d5SAggelos Economopoulosdriver provides support for PCI Express 10 Gigabit Ethernet adapters based on 59490c73d5SAggelos Economopoulosthe Myricom LANai Z8E chip. 601e6de725SSepherosa ZiehauThe driver supports Transmit/Receive checksum offload, 6134bf0d2dSSascha WildnerTCP Segmentation Offload (TSO), 621e6de725SSepherosa Ziehaumultiple reception queues, 631e6de725SSepherosa Ziehaumultiple tranmission queues and 641e6de725SSepherosa Ziehaumultiple vector MSI-X. 651e6de725SSepherosa Ziehau.\"Support for Jumbo frames is not yet implemented, while support for 661e6de725SSepherosa Ziehau.\"as well as Large Receive Offload (LRO) is not 676d7ed545SSascha Wildner.\"implemented in 681e6de725SSepherosa ZiehauUsing multiple vector MSI-X requires that Myri10GE NIC be capable of MSI-X. 691e6de725SSepherosa ZiehauOlder Myri10GE NICs can be field upgraded to add MSI-X using the 701e6de725SSepherosa Ziehau"Myri-10G Network Adapter Toolkit" for FreeBSD or Linux 711e6de725SSepherosa Ziehauwhich is available from 721e6de725SSepherosa Ziehau.Pa https://www.myricom.com/support/downloads/tools/myri-10g-toolkit.html . 73490c73d5SAggelos Economopoulos.Pp 74490c73d5SAggelos EconomopoulosFor questions related to hardware requirements, 75490c73d5SAggelos Economopoulosrefer to the documentation supplied with your Myri10GE adapter. 76490c73d5SAggelos EconomopoulosAll hardware requirements listed apply to use with 77429df13fSAggelos Economopoulos.Dx . 781e6de725SSepherosa ZiehauFor further hardware information, see 791e6de725SSepherosa Ziehau.Pa http://www.myricom.com . 8016a93185SSepherosa Ziehau.Pp 8100f2de12SSepherosa ZiehauThe 8200f2de12SSepherosa Ziehau.Nm 8300f2de12SSepherosa Ziehaudriver supports the following media options: 8400f2de12SSepherosa Ziehau.Bl -tag -width ".Cm forcepause" 8500f2de12SSepherosa Ziehau.It Cm rxpause 8600f2de12SSepherosa ZiehauEnable flow control PAUSE reception. 8700f2de12SSepherosa ZiehauDue to hardware limitation, 8800f2de12SSepherosa Ziehauthis will also enable PAUSE transmission. 8900f2de12SSepherosa Ziehau.It Cm txpause 9000f2de12SSepherosa ZiehauEnable flow control PAUSE transmission. 9100f2de12SSepherosa ZiehauDue to hardware limitation, 9200f2de12SSepherosa Ziehauthis will also enable PAUSE reception. 9300f2de12SSepherosa Ziehau.It Cm forcepause 9400f2de12SSepherosa ZiehauForce flow control PAUSE operation as configured by 9500f2de12SSepherosa Ziehau.Cm rxpause 9600f2de12SSepherosa Ziehauand 9700f2de12SSepherosa Ziehau.Cm txpause 9800f2de12SSepherosa Ziehaumedia options. 9900f2de12SSepherosa ZiehauThis media option can't be turned off. 10000f2de12SSepherosa Ziehau.El 10100f2de12SSepherosa Ziehau.Pp 10216a93185SSepherosa ZiehauFor more information on configuring this device, see 10316a93185SSepherosa Ziehau.Xr ifconfig 8 . 10416a93185SSepherosa ZiehauThe 10516a93185SSepherosa Ziehau.Nm 10616a93185SSepherosa Ziehaudriver supports 10716a93185SSepherosa Ziehau.Xr polling 4 . 108490c73d5SAggelos Economopoulos.Sh HARDWARE 109490c73d5SAggelos EconomopoulosThe 110490c73d5SAggelos Economopoulos.Nm 111490c73d5SAggelos Economopoulosdriver supports 10 Gigabit Ethernet adapters based on the 112490c73d5SAggelos EconomopoulosMyricom LANai Z8E chips: 113490c73d5SAggelos Economopoulos.Pp 114490c73d5SAggelos Economopoulos.Bl -bullet -compact 115490c73d5SAggelos Economopoulos.It 116490c73d5SAggelos EconomopoulosMyricom 10GBase-CX4 (10G-PCIE-8A-C, 10G-PCIE-8AL-C) 117490c73d5SAggelos Economopoulos.It 118490c73d5SAggelos EconomopoulosMyricom 10GBase-R (10G-PCIE-8A-R, 10G-PCIE-8AL-R) 119490c73d5SAggelos Economopoulos.It 120490c73d5SAggelos EconomopoulosMyricom 10G XAUI over ribbon fiber (10G-PCIE-8A-Q, 10G-PCIE-8AL-Q) 121490c73d5SAggelos Economopoulos.El 1221e6de725SSepherosa Ziehau.Sh TUNABLES 1231e6de725SSepherosa Ziehau.Em X 1241e6de725SSepherosa Ziehauis the device unit number. 125490c73d5SAggelos Economopoulos.Bl -tag -width indent 1261e6de725SSepherosa Ziehau.It Va hw.mxge.msix.enable Va hw.mxgeX.msix.enable 1271e6de725SSepherosa ZiehauBy default, 1281e6de725SSepherosa Ziehauthe driver will use MSI-X 1291e6de725SSepherosa Ziehauif it is supported. 1301e6de725SSepherosa ZiehauThis behaviour can be turned off by setting this tunable to 0. 1311e6de725SSepherosa Ziehau.It Va hw.mxge.msi.enable Va hw.mxgeX.msi.enable 1321e6de725SSepherosa ZiehauIf MSI-X is disabled and MSI is supported, 1331e6de725SSepherosa Ziehauthe driver will use MSI. 1341e6de725SSepherosa ZiehauThis behavior can be turned off by setting this tunable to 0. 1351e6de725SSepherosa Ziehau.It Va hw.mxgeX.msi.cpu 1361e6de725SSepherosa ZiehauIf MSI is used, it specifies the MSI's target CPU. 1371e6de725SSepherosa Ziehau.It Va hw.mxge.num_slices Va hw.mxgeX.num_slices 1381e6de725SSepherosa ZiehauIf MSI-X is used, 1391e6de725SSepherosa Ziehauthis value determines the maximum number of slices the driver 1401e6de725SSepherosa Ziehauwill attempt to use. 1411e6de725SSepherosa ZiehauSetting this value to 0 allows driver to enable as many slices 1421e6de725SSepherosa Ziehauas allowed by the number of CPUs. 1431e6de725SSepherosa ZiehauEach slice is comprised of one reception queue and one transmission 1441e6de725SSepherosa Ziehauqueue. 1451e6de725SSepherosa ZiehauThe transmission queue of each slice, 1461e6de725SSepherosa Ziehauexcept the first slice, 1471e6de725SSepherosa Ziehaucould be disabled. 1481e6de725SSepherosa ZiehauThe default value is 0. 1491e6de725SSepherosa Ziehau.It Va hw.mxge.multi_tx Va hw.mxgeX.multi_tx 1509801d51eSSascha WildnerIf more than 1 slice is enabled, 1511e6de725SSepherosa Ziehauthis tunable controls whether the tranmission queue of each 1521e6de725SSepherosa Ziehauslice should be enabled. 1531e6de725SSepherosa ZiehauSetting this tunable to 0 will only enable the transmission queue 1541e6de725SSepherosa Ziehauon the first slice. 155490c73d5SAggelos EconomopoulosThe default value is 1. 1561e6de725SSepherosa Ziehau.It Va hw.mxge.use_rss 1571e6de725SSepherosa ZiehauThis tunable controls whether standard RSS input hash function or 1581e6de725SSepherosa Ziehauchip private input hash function should be used. 1591e6de725SSepherosa ZiehauUsing standard RSS input hash function degenerates reception 1601e6de725SSepherosa Ziehauperformance significantly. 1611e6de725SSepherosa ZiehauThe default value is 0. 162490c73d5SAggelos Economopoulos.It Va hw.mxge.intr_coal_delay 163490c73d5SAggelos EconomopoulosThis value delays the generation of all interrupts in units of 164490c73d5SAggelos Economopoulos1 microsecond. 1651e6de725SSepherosa ZiehauThe default value is 150. 16600f2de12SSepherosa Ziehau.It Va hw.mxge.flow_ctrl 16700f2de12SSepherosa ZiehauThe default flow control settings. 16800f2de12SSepherosa ZiehauSupported values are: 16900f2de12SSepherosa Ziehauforce-full (forcefully enable PAUSE reception and transmission). 17000f2de12SSepherosa Ziehauforce-none (forcefully disable flow control PAUSE operation). 171*17039ae7SSepherosa ZiehauDefault is force-none. 172490c73d5SAggelos Economopoulos.El 1731e6de725SSepherosa Ziehau.Sh MIB Variables 1741e6de725SSepherosa ZiehauA number of per-interface variables are implemented in the 17526595b18SSascha Wildner.Va dev.mxge. Ns Em X 1761e6de725SSepherosa Ziehaubranch of the 1771e6de725SSepherosa Ziehau.Xr sysctl 3 1781e6de725SSepherosa ZiehauMIB. 17900f2de12SSepherosa Ziehau.Bl -tag -width "firmware_version" 1801e6de725SSepherosa Ziehau.It Va firmware_version 1811e6de725SSepherosa ZiehauThe version string of firmware that is currently loaded by the driver. 1821e6de725SSepherosa ZiehauIt is read-only. 1831e6de725SSepherosa Ziehau.It Va use_rss 1841e6de725SSepherosa ZiehauSee tunable 1851e6de725SSepherosa Ziehau.Va hw.mxge.use_rss . 1861e6de725SSepherosa ZiehauFlipping its value will cause chip reinitialization. 1871e6de725SSepherosa Ziehau.It Va intr_coal_delay 1881e6de725SSepherosa ZiehauSee tunable 1891e6de725SSepherosa Ziehau.Va hw.mxge.intr_coal_delay . 190490c73d5SAggelos Economopoulos.El 191490c73d5SAggelos Economopoulos.Sh SUPPORT 192490c73d5SAggelos EconomopoulosFor general information and support, 193490c73d5SAggelos Economopoulosgo to the Myricom support website at: 1941e6de725SSepherosa Ziehau.Pa https://www.myricom.com/support.html . 195490c73d5SAggelos Economopoulos.Sh SEE ALSO 196490c73d5SAggelos Economopoulos.Xr altq 4 , 197490c73d5SAggelos Economopoulos.Xr arp 4 , 1986d7ed545SSascha Wildner.Xr ifmedia 4 , 199490c73d5SAggelos Economopoulos.Xr netintro 4 , 200490c73d5SAggelos Economopoulos.Xr ng_ether 4 , 201d83c779aSSascha Wildner.Xr ifconfig 8 , 202d83c779aSSascha Wildner.Xr firmware 9 203490c73d5SAggelos Economopoulos.Sh HISTORY 204490c73d5SAggelos EconomopoulosThe 205490c73d5SAggelos Economopoulos.Nm 206490c73d5SAggelos Economopoulosdevice driver first appeared in 207490c73d5SAggelos Economopoulos.Fx 6.3 . 208429df13fSAggelos EconomopoulosIt was first ported to 209d2c1d584SSascha Wildner.Dx 2.3 . 210490c73d5SAggelos Economopoulos.Sh AUTHORS 211490c73d5SAggelos EconomopoulosThe 212490c73d5SAggelos Economopoulos.Nm 213490c73d5SAggelos Economopoulosdriver was written by 214b2a6f486SFranco Fichtner.An Andrew Gallatin Aq Mt gallatin@FreeBSD.org . 215