mxge.4 (11e9b8bad115cf9799076d3add8824862b038563) mxge.4 (b2fc195e1b023e18f72ac7397d4b2278853f5aad)
1.\" Copyright (c) 2006, Myricom 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.

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

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$
33.\"
1.\" Copyright (c) 2006, Myricom 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.

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

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$
33.\"
34.Dd February 13, 2008
35.Dt MXGE 4
34.Dd February 9, 2006
35.Dt MYRI10GE 4
36.Os
37.Sh NAME
36.Os
37.Sh NAME
38.Nm mxge
38.Nm myri10ge
39.Nd "Myricom Myri10GE 10 Gigabit Ethernet adapter driver"
40.Sh SYNOPSIS
41To compile this driver into the kernel,
42place the following lines in your
43kernel configuration file:
44.Bd -ragged -offset indent
45.Cd "device firmware"
39.Nd "Myricom Myri10GE 10 Gigabit Ethernet adapter driver"
40.Sh SYNOPSIS
41To compile this driver into the kernel,
42place the following lines in your
43kernel configuration file:
44.Bd -ragged -offset indent
45.Cd "device firmware"
46.Cd "device mxge"
46.Cd "device myri10ge"
47.Ed
48.Pp
49Alternatively, to load the driver as a
47.Ed
48.Pp
49Alternatively, to load the driver as a
50module at boot time, place the following lines in
50module at boot time, place the following line in
51.Xr loader.conf 5 :
52.Bd -literal -offset indent
51.Xr loader.conf 5 :
52.Bd -literal -offset indent
53if_mxge_load="YES"
54mxge_ethp_z8e_load="YES"
55mxge_eth_z8e_load="YES"
56mxge_rss_ethp_z8e_load="YES"
57mxge_rss_eth_z8e_load="YES"
53if_myri10ge_load="YES"
54myri10ge_ethp_z8e_load="YES"
55myri10ge_eth_z8e_load="YES"
58.Ed
59.Sh DESCRIPTION
60The
61.Nm
62driver provides support for PCI Express 10 Gigabit Ethernet adapters based on
63the Myricom LANai Z8E chip.
56.Ed
57.Sh DESCRIPTION
58The
59.Nm
60driver provides support for PCI Express 10 Gigabit Ethernet adapters based on
61the Myricom LANai Z8E chip.
64The driver supports Transmit/Receive checksum offload,
65Jumbo Frames, TCP segmentation offload (TSO) as well
66as Large Receive Offload (LRO).
67For further hardware information, see
68.Pa http://www.myri.com/ .
62The driver supports Transmit/Receive checksum offload
63and Jumbo Frames.
64For further hardware information, see http://www.myri.com
69.Pp
70For questions related to hardware requirements,
71refer to the documentation supplied with your Myri10GE adapter.
72All hardware requirements listed apply to use with
73.Fx .
74.Pp
75Support for Jumbo Frames is provided via the interface MTU setting.
76Selecting an MTU larger than 1500 bytes with the
77.Xr ifconfig 8
78utility configures the adapter to receive and transmit Jumbo Frames.
79The maximum MTU size for Jumbo Frames is 9000.
80.Pp
81For more information on configuring this device, see
82.Xr ifconfig 8 .
83.Sh HARDWARE
84The
85.Nm
65.Pp
66For questions related to hardware requirements,
67refer to the documentation supplied with your Myri10GE adapter.
68All hardware requirements listed apply to use with
69.Fx .
70.Pp
71Support for Jumbo Frames is provided via the interface MTU setting.
72Selecting an MTU larger than 1500 bytes with the
73.Xr ifconfig 8
74utility configures the adapter to receive and transmit Jumbo Frames.
75The maximum MTU size for Jumbo Frames is 9000.
76.Pp
77For more information on configuring this device, see
78.Xr ifconfig 8 .
79.Sh HARDWARE
80The
81.Nm
86driver supports 10 Gigabit Ethernet adapters based on the
82driver supports 10 Gigabit Ethernet adapters based on the
87Myricom LANai Z8E chips:
88.Pp
89.Bl -bullet -compact
90.It
91Myricom 10GBase-CX4 (10G-PCIE-8A-C, 10G-PCIE-8AL-C)
92.It
93Myricom 10GBase-R (10G-PCIE-8A-R, 10G-PCIE-8AL-R)
94.It
95Myricom 10G XAUI over ribbon fiber (10G-PCIE-8A-Q, 10G-PCIE-8AL-Q)
96.El
97.Sh LOADER TUNABLES
98Tunables can be set at the
99.Xr loader 8
100prompt before booting the kernel or stored in
101.Xr loader.conf 5 .
102.Bl -tag -width indent
83Myricom LANai Z8E chips:
84.Pp
85.Bl -bullet -compact
86.It
87Myricom 10GBase-CX4 (10G-PCIE-8A-C, 10G-PCIE-8AL-C)
88.It
89Myricom 10GBase-R (10G-PCIE-8A-R, 10G-PCIE-8AL-R)
90.It
91Myricom 10G XAUI over ribbon fiber (10G-PCIE-8A-Q, 10G-PCIE-8AL-Q)
92.El
93.Sh LOADER TUNABLES
94Tunables can be set at the
95.Xr loader 8
96prompt before booting the kernel or stored in
97.Xr loader.conf 5 .
98.Bl -tag -width indent
103.It Va hw.mxge.flow_control_enabled
99.It Va hw.myri10ge.flow_control_enabled
104Whether or not hardware flow control is enabled on the adapter.
105The default value is 1.
100Whether or not hardware flow control is enabled on the adapter.
101The default value is 1.
106.It Va hw.mxge.intr_coal_delay
102.It Va hw.myri10ge.intr_coal_delay
107This value delays the generation of all interrupts in units of
103This value delays the generation of all interrupts in units of
1081 microsecond.
109The default value is 30.
110.It Va hw.mxge.skip_pio_read
1041 microsecond. The default value is 30.
105.It Va hw.myri10ge.skip_pio_read
111This value determines whether or not the driver may omit doing a
106This value determines whether or not the driver may omit doing a
112PIO read in the interrupt handler which ensures that the interrupt
113line has been deasserted when using xPIC interrupts.
114A non-zero value
115may result in lower CPU overhead, however it may also result in
116spurious interrupts.
117The default value is 0.
118This tunable has no effect when the device is
119using MSI or MSI-X interrupts.
120.It Va hw.mxge.max_slices
121This value determines the maximum number of slices the driver
122will attempt to use.
123The default value is 1.
124A slice is comprised
125of a set of receive queues and an associated interrupt thread.
126When using multiple slices, the NIC hashes traffic to different slices
127based on the value of
128.Va hw.mxge.rss_hashtype .
129Using multiple slices requires that your motherboard and Myri10GE NIC
130both be capable of MSI-X.
131Older Myri10GE NICs can be field upgraded to add
132MSI-X using the "10G NIC Tool Kit" for FreeBSD which is available from
133.Pa http://www.myri.com/scs/download-10g-tools.html .
134.Pp
135.It Va hw.mxge.rss_hashtype
136This value determines how incoming traffic is steered to different
137slices.
138This tunable is ignored when using just a single slice.
139The legal values for this tunable are:
140.Bl -tag -width "XXXX"
141.It 1
142Hash on the source and destination IPv4 addresses.
143.It 2
144Hash on source and destination IPv4 addresses and if the packet
145is TCP, then also hash on the TCP source and destination ports.
146.It 4
147Hash on the TCP or UDP source ports.
148This is the default value.
107pio read in the interrupt handler which ensures that the interrupt
108line has been deasserted when using xPIC interrupts. A non-zero value
109may result in lower CPU overhead, however it may also result in
110spurious interrupts. The default value is 0.
149.El
111.El
150.El
151.Sh DIAGNOSTICS
152.Bl -diag
112.Sh DIAGNOSTICS
113.Bl -diag
153.It "mxge%d: Unable to allocate bus resource: memory"
114.It "myri10ge%d: Unable to allocate bus resource: memory"
154A fatal initialization error has occurred.
115A fatal initialization error has occurred.
155.It "mxge%d: Unable to allocate bus resource: interrupt"
116.It "myri10ge%d: Unable to allocate bus resource: interrupt"
156A fatal initialization error has occurred.
117A fatal initialization error has occurred.
157.It "mxge%d: Could not find firmware image %s"
158The appropriate firmware kld module was not installed.
159This is a non-fatal initialization error, but will
160result in running in a reduced performance mode.
118.It "myri10ge%d: Could not find firmware image %s"
119The appropriate firmware kld module was not installed. This is a
120fatal initialization error.
161.El
162.Sh SUPPORT
163For general information and support,
164go to the Myricom support website at:
121.El
122.Sh SUPPORT
123For general information and support,
124go to the Myricom support website at:
165.Pa http://www.myri.com/scs/ .
125.Pa http://www.myri.com/scs .
166.Pp
167If an issue is identified with the released source code on the supported kernel
168with a supported adapter, email the specific information related to the
169issue to
170.Aq help@myri.com .
171.Sh SEE ALSO
126.Pp
127If an issue is identified with the released source code on the supported kernel
128with a supported adapter, email the specific information related to the
129issue to
130.Aq help@myri.com .
131.Sh SEE ALSO
172.Xr altq 4 ,
173.Xr arp 4 ,
174.Xr netintro 4 ,
175.Xr ng_ether 4 ,
176.Xr ifconfig 8
177.Sh HISTORY
178The
179.Nm
180device driver first appeared in
132.Xr arp 4 ,
133.Xr netintro 4 ,
134.Xr ng_ether 4 ,
135.Xr ifconfig 8
136.Sh HISTORY
137The
138.Nm
139device driver first appeared in
181.Fx 6.3 .
140.Fx 7.0 .
182.Sh AUTHORS
183The
184.Nm
185driver was written by
141.Sh AUTHORS
142The
143.Nm
144driver was written by
186.An Andrew Gallatin Aq gallatin@FreeBSD.org .
145.An Andrew Gallatin Aq gallatin@freebsd.org .
146