MXGE(4) BSD Kernel Interfaces Manual MXGE(4)NAMEmxge — Myricom Myri10GE 10 Gigabit Ethernet adapter driver
SYNOPSIS
To compile this driver into the kernel, place the following lines in your
kernel configuration file:
device firmware
device mxge
Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
if_mxge_load="YES"
DESCRIPTION
The mxge driver provides support for PCI Express 10 Gigabit Ethernet
adapters based on the Myricom LANai Z8E chip. The driver supports Trans‐
mit/Receive checksum offload and hardware vlan tagging. For further
hardware information, see http://www.myri.com/.
For questions related to hardware requirements, refer to the documenta‐
tion supplied with your Myri10GE adapter. All hardware requirements
listed apply to use with DragonFly.
HARDWARE
The mxge driver supports 10 Gigabit Ethernet adapters based on the Myri‐
com LANai Z8E chips:
· Myricom 10GBase-CX4 (10G-PCIE-8A-C, 10G-PCIE-8AL-C)
· Myricom 10GBase-R (10G-PCIE-8A-R, 10G-PCIE-8AL-R)
· Myricom 10G XAUI over ribbon fiber (10G-PCIE-8A-Q, 10G-PCIE-8AL-Q)
LOADER TUNABLES
Tunables can be set at the loader(8) prompt before booting the kernel or
stored in loader.conf(5).
hw.mxge.flow_control_enabled
Whether or not hardware flow control is enabled on the adapter.
The default value is 1.
hw.mxge.intr_coal_delay
This value delays the generation of all interrupts in units of 1
microsecond. The default value is 30.
hw.mxge.skip_pio_read
This value determines whether or not the driver may omit doing a
PIO read in the interrupt handler which ensures that the inter‐
rupt line has been deasserted when using xPIC interrupts. A non-
zero value may result in lower CPU overhead, however it may also
result in spurious interrupts. The default value is 0. This
tunable has no effect when the device is using MSI or MSI-X
interrupts.
hw.mxge.max_slices
This value determines the maximum number of slices the driver
will attempt to use. The default value is 1. A slice is com‐
prised of a set of receive queues and an associated interrupt
thread. When using multiple slices, the NIC hashes traffic to
different slices based on the value of hw.mxge.rss_hash_type.
Using multiple slices requires that your motherboard and Myri10GE
NIC both be capable of MSI-X. Older Myri10GE NICs can be field
upgraded to add MSI-X using the "10G NIC Tool Kit" for FreeBSD
which is available from
http://www.myri.com/scs/download-10g-tools.html.
hw.mxge.rss_hash_type
This value determines how incoming traffic is steered to differ‐
ent slices. This tunable is ignored when using just a single
slice. The legal values for this tunable are:
1 Hash on the source and destination IPv4 addresses.
2 Hash on source and destination IPv4 addresses and if the
packet is TCP, then also hash on the TCP source and desti‐
nation ports.
4 Hash on the TCP or UDP source ports. This is the default
value.
DIAGNOSTICS
mxge%d: Unable to allocate bus resource: memory A fatal initialization
error has occurred.
mxge%d: Unable to allocate bus resource: interrupt A fatal initializa‐
tion error has occurred.
mxge%d: Could not find firmware image %s The appropriate firmware kld
module was not installed. This is a non-fatal initialization error, but
will result in running in a reduced performance mode.
SUPPORT
For general information and support, go to the Myricom support website
at: http://www.myri.com/scs/.
SEE ALSOaltq(4), arp(4), ifmedia(4), netintro(4), ng_ether(4), ifconfig(8),
firmware(9)HISTORY
The mxge device driver first appeared in FreeBSD 6.3. It was first
ported to DragonFly 2.3.
AUTHORS
The mxge driver was written by Andrew Gallatin ⟨gallatin@FreeBSD.org⟩.
BSD July 13, 2009 BSD