xref: /freebsd/share/man/man4/nfe.4 (revision 2be1a816b9ff69588e55be0a84cbe2a31efc0f2f)
1.\"	$OpenBSD: nfe.4,v 1.7 2006/02/28 08:13:47 jsg Exp $
2.\"
3.\" Copyright (c) 2006 Jonathan Gray <jsg@openbsd.org>
4.\"
5.\" Permission to use, copy, modify, and distribute this software for any
6.\" purpose with or without fee is hereby granted, provided that the above
7.\" copyright notice and this permission notice appear in all copies.
8.\"
9.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16.\"
17.\" $FreeBSD$
18.\"
19.Dd April 16, 2008
20.Dt NFE 4
21.Os
22.Sh NAME
23.Nm nfe
24.Nd "NVIDIA nForce MCP Ethernet driver"
25.Sh SYNOPSIS
26To compile this driver into the kernel,
27place the following lines in your
28kernel configuration file:
29.Bd -ragged -offset indent
30.Cd "device miibus"
31.Cd "device nfe"
32.Ed
33.Pp
34Alternatively, to load the driver as a
35module at boot time, place the following line in
36.Xr loader.conf 5 :
37.Bd -literal -offset indent
38if_nfe_load="YES"
39.Ed
40.Sh DESCRIPTION
41The
42.Nm
43driver supports PCI Ethernet adapters based on the NVIDIA
44nForce Media and Communications Processors (MCP), such as
45the nForce, nForce 2, nForce 3, CK804, MCP04, MCP51, MCP55,
46MCP61, MCP65, MCP67 and MCP73 Ethernet controller chips.
47.Pp
48Supported features include (hardware support provided):
49.Pp
50.Bl -bullet -compact
51.It
52Receive/Transmit IP/TCP/UDP checksum offload
53.It
54Hardware VLAN tag insertion/stripping
55.It
56TCP segmentation offload (TSO)
57.It
58MSI/MSI-X
59.It
60Jumbo Frames
61.El
62.Pp
63Support for Jumbo Frames is provided via the interface MTU setting.
64Selecting an MTU larger than 1500 bytes with the
65.Xr ifconfig 8
66utility configures the adapter to receive and transmit Jumbo Frames.
67.Pp
68The
69.Nm
70driver supports the following media types:
71.Bl -tag -width "10baseT/UTP"
72.It Cm autoselect
73Enable autoselection of the media type and options.
74.It Cm 10baseT/UTP
75Set 10Mbps operation.
76.It Cm 100baseTX
77Set 100Mbps (Fast Ethernet) operation.
78.It Cm 1000baseT
79Set 1000Mbps (Gigabit Ethernet) operation (recent models only).
80.El
81.Pp
82The
83.Nm
84driver supports the following media options:
85.Bl -tag -width ".Cm 10baseT/UTP"
86.It Cm half-duplex
87Force half duplex operation.
88.It Cm full-duplex
89Force full duplex operation.
90.El
91.Pp
92For more information on configuring this device, see
93.Xr ifconfig 8 .
94.Sh HARDWARE
95The
96.Nm
97driver supports the following NVIDIA MCP onboard adapters:
98.Pp
99.Bl -bullet -compact
100.It
101NVIDIA nForce MCP Networking Adapter
102.It
103NVIDIA nForce MCP04 Networking Adapter
104.It
105NVIDIA nForce 430 MCP12 Networking Adapter
106.It
107NVIDIA nForce 430 MCP13 Networking Adapter
108.It
109NVIDIA nForce MCP51 Networking Adapter
110.It
111NVIDIA nForce MCP55 Networking Adapter
112.It
113NVIDIA nForce MCP61 Networking Adapter
114.It
115NVIDIA nForce MCP65 Networking Adapter
116.It
117NVIDIA nForce MCP67 Networking Adapter
118.It
119NVIDIA nForce MCP73 Networking Adapter
120.It
121NVIDIA nForce2 MCP2 Networking Adapter
122.It
123NVIDIA nForce2 400 MCP4 Networking Adapter
124.It
125NVIDIA nForce2 400 MCP5 Networking Adapter
126.It
127NVIDIA nForce3 MCP3 Networking Adapter
128.It
129NVIDIA nForce3 250 MCP6 Networking Adapter
130.It
131NVIDIA nForce3 MCP7 Networking Adapter
132.It
133NVIDIA nForce4 CK804 MCP8 Networking Adapter
134.It
135NVIDIA nForce4 CK804 MCP9 Networking Adapter
136.El
137.Sh LOADER TUNABLES
138Tunables can be set at the
139.Xr loader 8
140prompt before booting the kernel or stored in
141.Xr loader.conf 5 .
142.Bl -tag -width indent
143.It Va hw.nfe.msi_disable
144Whether or not MSI support is enabled in the driver.
145The default value is 0.
146.It Va hw.nfe.msix_disable
147Whether or not MSI-X support is enabled in the driver.
148The default value is 0.
149.El
150.Sh SYSCTL VARIABLES
151The following
152.Xr sysctl 8
153variables can be used to modify or monitor
154.Nm
155behavior.
156.Bl -tag -width indent
157.It Va dev.nfe.%d.process_limit
158Maximum number of Rx events to be processed in the event loop
159before rescheduling a taskqueue.
160The accepted range is 50 to 255, the default value is 192.
161The interface does not need to be brought down and up again
162before a change takes effect.
163.El
164.Sh SEE ALSO
165.Xr altq 4 ,
166.Xr arp 4 ,
167.Xr intro 4 ,
168.Xr miibus 4 ,
169.Xr netintro 4 ,
170.Xr pci 4 ,
171.Xr polling 4 ,
172.Xr sysctl 8 ,
173.Xr ifconfig 8
174.Sh HISTORY
175The
176.Nm
177device driver first appeared in
178.Ox 3.9 ,
179and then in
180.Fx 7.0 .
181.Sh AUTHORS
182.An -nosplit
183The
184.Nm
185driver was written by
186.An Jonathan Gray
187.Aq jsg@openbsd.org
188and
189.An Damien Bergamini
190.Aq damien@openbsd.org .
191The
192.Nm
193driver was ported to
194.Fx
195by
196.An Shigeaki Tagashira
197.Aq shigeaki@se.hiroshima-u.ac.jp .
198