1.\" $NetBSD: vge.4,v 1.5 2005/06/23 12:47:38 peter Exp $ 2.\" 3.\" Copyright (c) 2004 4.\" Bill Paul <wpaul@windriver.com>. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed by Bill Paul. 17.\" 4. Neither the name of the author nor the names of any co-contributors 18.\" may be used to endorse or promote products derived from this software 19.\" without specific prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 25.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 26.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 27.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 28.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 29.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 30.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 31.\" THE POSSIBILITY OF SUCH DAMAGE. 32.\" 33.\" FreeBSD: src/share/man/man4/vge.4,v 1.7 2005/01/14 10:33:39 ru Exp 34.\" 35.Dd March 5, 2005 36.Dt VGE 4 37.Os 38.Sh NAME 39.Nm vge 40.Nd "VIA Networking Technologies VT6122 PCI Gigabit Ethernet adapter driver" 41.Sh SYNOPSIS 42.Cd "vge* at pci? dev ? function ?" 43.Pp 44Configuration of PHYs is also necessary. See 45.Xr mii 4 . 46.Sh DESCRIPTION 47The 48.Nm 49driver provides support for various NICs and embedded Ethernet interfaces 50based on the VIA Networking Technologies VT6122 Gigabit Ethernet 51controller chips. 52.Pp 53The VT6122 is a 33/66Mhz 64-bit PCI device which combines a tri-speed MAC with 54an integrated 10/100/1000 copper PHY. 55(Some older cards use an external PHY.) 56The MAC supports TCP/IP hardware 57checksums (IPv4 only), TCP large send, VLAN tag insertion and stripping, 58as well as VLAN filtering, a 64-entry CAM filter and a 64-entry VLAN filter, 5964-bit multicast hash filter, 4 separate transmit DMA queues, flow control 60and jumbo frames up to 16K in size. 61The VT6122 has a 16K receive FIFO and 48K transmit FIFO. 62.Pp 63The 64.Nm 65driver takes advantage of the VT6122's checksum offload and VLAN 66tagging features, as well as the jumbo frame and CAM filter support. 67The CAM filter is used for multicast address filtering to provide 6864 perfect multicast address filter support. 69If it is necessary for the interface to join more than 64 multicast 70groups, the driver will switch over to using the hash filter. 71.Pp 72The jumbo frame support can be enabled by setting the interface MTU 73to any value larger than the default of 1500 bytes, up to a maximum 74of 9000 bytes. 75The receive and transmit checksum offload support 76can be toggled on and off using the 77.Xr ifconfig 8 78utility. 79.Pp 80The 81.Nm 82driver supports the following media types: 83.Bl -tag -width ".Cm 10baseT/UTP" 84.It Cm autoselect 85Enable autoselection of the media type and options. 86The user can manually override 87the autoselected mode by adding media options to 88.Xr rc.conf 5 . 89.It Cm 10baseT/UTP 90Set 10Mbps operation. 91The 92.Xr ifconfig 8 93.Cm mediaopt 94option can also be used to select either 95.Cm full-duplex 96or 97.Cm half-duplex 98modes. 99.It Cm 100baseTX 100Set 100Mbps (Fast Ethernet) operation. 101The 102.Xr ifconfig 8 103.Cm mediaopt 104option can also be used to select either 105.Cm full-duplex 106or 107.Cm half-duplex 108modes. 109.It Cm 1000baseTX 110Set 1000baseTX operation over twisted pair. 111The 112.Xr ifconfig 8 113.Cm mediaopt 114option can also be used to select either 115.Cm full-duplex 116or 117.Cm half-duplex 118modes. 119.El 120.Pp 121The 122.Nm 123driver supports the following media options: 124.Bl -tag -width ".Cm full-duplex" 125.It Cm full-duplex 126Force full duplex operation. 127.It Cm half-duplex 128Force half duplex operation. 129.El 130.Pp 131The 132.Nm 133driver also supports one special link option for 1000baseTX cards: 134.Bl -tag -width ".Cm link0" 135.It Cm link0 136With 1000baseTX cards, establishing a link between two ports requires 137that one port be configured as a master and the other a slave. 138With autonegotiation, 139the master/slave settings will be chosen automatically. 140However when manually selecting the link state, it is necessary to 141force one side of the link to be a master and the other a slave. 142The 143.Nm 144driver configures the ports as slaves by default. 145Setting the 146.Cm link0 147flag with 148.Xr ifconfig 8 149will set a port as a master instead. 150.El 151.Pp 152For more information on configuring this device, see 153.Xr ifconfig 8 . 154.Sh HARDWARE 155The 156.Nm 157driver supports VIA Networking VT3119 and VT6122 based 158Gigabit Ethernet adapters including: 159.Pp 160.Bl -bullet -compact 161.It 162VIA Networking LAN-on-motherboard Gigabit Ethernet 163.It 164ZyXEL GN650-T 64-bit PCI Gigabit Ethernet NIC (ZX1701) 165.It 166ZyXEL GN670-T 32-bit PCI Gigabit Ethernet NIC (ZX1702) 167.El 168.Sh DIAGNOSTICS 169.Bl -diag 170.It "vge%d: couldn't map memory" 171The driver failed to initialize PCI shared memory mapping. 172This might 173happen if the card is not in a bus-master slot. 174.It "vge%d: unable to map interrupt" 175A fatal initialization error has occurred. 176.It "vge%d: watchdog timeout" 177The device has stopped responding to the network, or there is a problem with 178the network connection (cable). Driver resets the device. 179.El 180.Sh SEE ALSO 181.Xr arp 4 , 182.Xr ciphy 4 , 183.Xr mii 4 , 184.Xr netintro 4 , 185.Xr ukphy 4 , 186.Xr vlan 4 , 187.Xr ifconfig 8 188.Sh HISTORY 189The 190.Nm 191device driver first appeared in 192.Fx 5.3 193and then in 194.Nx 3.0 . 195.Sh AUTHORS 196.An -nosplit 197The 198.Nm 199driver was written by 200.An Bill Paul Aq wpaul@windriver.com . 201The 202.Nx 203port was done by 204.An Jaromir Dolecek 205.Aq jdolecek@NetBSD.org . 206.Sh BUGS 207VLAN packet filtering is done in software at the moment, though 208using hardware VLAN tagging. 209