1.\" $NetBSD: sk.4,v 1.14 2010/01/15 19:24:49 joerg Exp $ 2.\" 3.\" Copyright (c) 2003, The NetBSD Foundation, Inc. 4.\" 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.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 16.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 17.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 18.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 19.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 20.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25.\" POSSIBILITY OF SUCH DAMAGE. 26.\" 27.\" $OpenBSD: sk.4,v 1.41 2006/08/16 22:01:56 kettenis Exp $ 28.\" 29.\" Copyright (c) 1997, 1998, 1999 30.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved. 31.\" 32.\" Redistribution and use in source and binary forms, with or without 33.\" modification, are permitted provided that the following conditions 34.\" are met: 35.\" 1. Redistributions of source code must retain the above copyright 36.\" notice, this list of conditions and the following disclaimer. 37.\" 2. Redistributions in binary form must reproduce the above copyright 38.\" notice, this list of conditions and the following disclaimer in the 39.\" documentation and/or other materials provided with the distribution. 40.\" 3. All advertising materials mentioning features or use of this software 41.\" must display the following acknowledgement: 42.\" This product includes software developed by Bill Paul. 43.\" 4. Neither the name of the author nor the names of any co-contributors 44.\" may be used to endorse or promote products derived from this software 45.\" without specific prior written permission. 46.\" 47.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND 48.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 49.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 50.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD 51.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 52.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 53.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 54.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 55.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 56.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 57.\" THE POSSIBILITY OF SUCH DAMAGE. 58.\" 59.\" $FreeBSD: src/share/man/man4/man4.i386/sk.4,v 1.3 1999/08/28 00:20:29 peter Exp $ 60.\" 61.Dd September 9, 2006 62.Dt SK 4 63.Os 64.Sh NAME 65.Nm sk , 66.Nm skc 67.Nd SysKonnect XMAC II and Marvell GMAC based gigabit ethernet 68.Sh SYNOPSIS 69.Cd "skc* at pci? dev ? function ?" 70.Cd "sk* at skc?" 71.Cd "mskc* at pci? dev ? function ?" 72.Cd "msk* at skc?" 73.Sh DESCRIPTION 74The 75.Nm sk 76driver provides support for SysKonnect based gigabit ethernet adapters 77and Marvell based gigabit ethernet adapters, including the following: 78.Pp 79.Bl -bullet -offset indent -compact 80.It 81SK-9821 SK-NET GE-T single port, copper adapter 82.It 83SK-9822 SK-NET GE-T dual port, copper adapter 84.It 85SK-9841 SK-NET GE-LX single port, single mode fiber adapter 86.It 87SK-9842 SK-NET GE-LX dual port, single mode fiber adapter 88.It 89SK-9843 SK-NET GE-SX single port, multimode fiber adapter 90.It 91SK-9844 SK-NET GE-SX dual port, multimode fiber adapter 92.It 93SK-9521 V2.0 single port, copper adapter (32-bit) 94.It 95SK-9821 V2.0 single port, copper adapter 96.It 97SK-9843 V2.0 single port, copper adapter 98.It 993Com 3c940 single port, copper adapter 100.It 101Belkin Gigabit Desktop Network PCI Card, single port, copper (32-bit) 102.It 103D-Link DGE-530T single port, copper adapter 104.It 105Linksys EG1032v2 single-port, copper adapter 106.It 107Linksys EG1064v2 single-port, copper adapter 108.El 109.Pp 110The 111.Nm msk 112driver provides support for the Marvell Yukon-2 based Gigabit Ethernet 113adapters, including the following: 114.Pp 115.Bl -bullet -offset indent -compact 116.It 117Marvell Yukon 88E8035, copper adapter 118.It 119Marvell Yukon 88E8036, copper adapter 120.It 121Marvell Yukon 88E8038, copper adapter 122.It 123Marvell Yukon 88E8050, copper adapter 124.It 125Marvell Yukon 88E8052, copper adapter 126.It 127Marvell Yukon 88E8053, copper adapter 128.It 129Marvell Yukon 88E8055, copper adapter 130.It 131SK-9E21 1000Base-T single port, copper adapter 132.It 133SK-9E22 1000Base-T dual port, copper adapter 134.It 135SK-9E81 1000Base-SX single port, multimode fiber adapter 136.It 137SK-9E82 1000Base-SX dual port, multimode fiber adapter 138.It 139SK-9E91 1000Base-LX single port, single mode fiber adapter 140.It 141SK-9E92 1000Base-LX dual port, single mode fiber adapter 142.It 143SK-9S21 1000Base-T single port, copper adapter 144.It 145SK-9S22 1000Base-T dual port, copper adapter 146.It 147SK-9S81 1000Base-SX single port, multimode fiber adapter 148.It 149SK-9S82 1000Base-SX dual port, multimode fiber adapter 150.It 151SK-9S91 1000Base-LX single port, single mode fiber adapter 152.It 153SK-9S92 1000Base-LX dual port, single mode fiber adapter 154.It 155SK-9E21D 1000Base-T single port, copper adapter 156.El 157.Pp 158The SysKonnect based adapters consist of two main components: the 159XaQti Corp. XMAC II Gigabit MAC 160.Pq Nm sk 161and the SysKonnect GEnesis controller ASIC 162.Pq Nm skc . 163The XMAC provides the Gigabit MAC and PHY support 164while the GEnesis provides an interface to the PCI bus, DMA support, 165packet buffering and arbitration. 166The GEnesis can control up to two XMACs simultaneously, 167allowing dual-port NIC configurations. 168.Pp 169The Marvell based adapters are a single integrated circuit, but are 170still presented as a separate MAC 171.Pq Nm sk 172and controller ASIC 173.Pq Nm skc . 174At this time, there are no dual-port Marvell based NICs. 175.Pp 176The 177.Nm 178driver configures dual port SysKonnect adapters such that each XMAC 179is treated as a separate logical network interface. 180Both ports can operate independently of each other and can be connected 181to separate networks. 182The SysKonnect driver software currently only uses the second port on 183dual port adapters for failover purposes: if the link 184on the primary port fails, the SysKonnect driver will automatically 185switch traffic onto the second port. 186.Pp 187The XaQti XMAC II supports full and half duplex operation with 188autonegotiation. 189The XMAC also supports unlimited frame sizes. 190Support for jumbo frames is provided via the interface MTU setting. 191Selecting an MTU larger than 1500 bytes with the 192.Xr ifconfig 8 193utility configures the adapter to receive and transmit jumbo frames. 194Using jumbo frames can greatly improve performance for certain tasks, 195such as file transfers and data streaming. 196.Pp 197Hardware TCP/IP checksum offloading for IPv4 is supported. 198.Pp 199The following media types and options (as given to 200.Xr ifconfig 8 ) 201are supported: 202.Bl -tag -width xxx -offset indent 203.It Cm media No autoselect 204Enable autoselection of the media type and options. 205The user can manually override 206the autoselected mode. 207.\" by adding media options to the appropriate 208.\" .Xr hostname.if 5 209.\" file. 210.It Cm media No 1000baseSX Cm mediaopt No full-duplex 211Set 1000Mbps (Gigabit Ethernet) operation on fiber and force full-duplex mode. 212.It Cm media No 1000baseSX Cm mediaopt No half-duplex 213Set 1000Mbps (Gigabit Ethernet) operation on fiber and force half-duplex mode. 214.It Cm media No 1000baseT Cm mediaopt No full-duplex 215Set 1000Mbps (Gigabit Ethernet) operation and force full-duplex mode. 216.El 217.Pp 218For more information on configuring this device, see 219.Xr ifconfig 8 . 220To view a list of media types and options supported by the card, try 221.Ic ifconfig Fl m Aq device . 222For example, 223.Ic ifconfig Fl m Ar sk0 . 224.Sh DIAGNOSTICS 225.Bl -diag 226.It "sk%d: couldn't map memory" 227A fatal initialization error has occurred. 228.It "sk%d: couldn't map ports" 229A fatal initialization error has occurred. 230.It "sk%d: couldn't map interrupt" 231A fatal initialization error has occurred. 232.It "sk%d: failed to enable memory mapping!" 233The driver failed to initialize PCI shared memory mapping. 234This might happen if the card is not in a bus-master slot. 235.It "sk%d: no memory for jumbo buffers!" 236The driver failed to allocate memory for jumbo frames during 237initialization. 238.It "sk%d: watchdog timeout" 239The device has stopped responding to the network, or there is a problem with 240the network connection (cable). 241.El 242.Sh SEE ALSO 243.Xr ifmedia 4 , 244.Xr intro 4 , 245.Xr netintro 4 , 246.Xr pci 4 , 247.Xr ifconfig 8 248.Rs 249.%T XaQti XMAC II datasheet 250.%U http://www.xaqti.com 251.Re 252.Rs 253.%T SysKonnect GEnesis programming manual 254.%U http://www.syskonnect.com 255.Re 256.Sh HISTORY 257The 258.Nm 259device driver first appeared in 260.Fx 3.0 . 261.Ox 262support was added in 263.Ox 2.6 . 264.Nx 265support was added in 266.Nx 2.0 . 267.Pp 268The 269.Nm msk 270driver first appeared in 271.Ox 4.0 , 272and was ported to 273.Nx 4.0 . 274.Sh AUTHORS 275.An -nosplit 276The 277.Nm 278driver was written by 279.An Bill Paul Aq wpaul@ctr.columbia.edu . 280Support for the Marvell Yukon-2 was added by 281.An Mark Kettenis Aq kettenis@openbsd.org . 282.Sh BUGS 283This driver is 284.Em experimental . 285.Pp 286Support for checksum offload is unimplemented. 287.Pp 288Performance with at least some Marvell-based adapters is poor, 289especially on loaded PCI buses or when the adapters are behind 290PCI-PCI bridges. 291It is believed that this is because the Marvell parts have 292significantly less buffering than the original SysKonnect cards 293had. 294