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